Copy Protection


Over the last 15 years, we have developed other applications that we have tried to protect using various methods. SOL was developed as a result of our desire for a better system. We would like to share our experiences with using other, traditional copy protection schemes:

Copy Protection Scheme 1: Software Based - Machine ID Protection

The software is installed using the machine ID (mac address, volume no., etc.) of a client’s computer so that the software cannot be installed on another computer. The client contacts the developer with the machine ID (often 16 or more digits). Then, the developer runs a license program provided by the copy protection manufacturer to generate an unlock code (often 24 or more digits). Client enters unlock code at setup and the program is installed (the unlock code only works for one computer).

Problems with this scheme:

1) If a client's hard drive crashes, the unlock information is lost and the machine ID changes. The client must contact the developer (with the new machine ID) to re-install the software. The developer has no way to know if the new machine ID is from a crashed computer or from a new computer. Therefore, a client could lie about the hard drive crashing to install the software on a second computer without having to purchase a second license (and third, fourth, etc.).

2) Clients frequently replace older computers forgetting that there is copy-protected software on them. You may have implemented a “transfer process” so that your client can uninstall the license from one computer and transfers it to a new computer. Unfortunately, clients often forget to use your transfer process before replacing the computer. Again, your client could end up with an extra license if he or she "makes up a story" about replacing a computer.

3) If a client uses a Citrix network (or similar), they can install the software on one machine but spawn it to multiple terminals. Therefore, they can have unlimited users for the price of just one license.

4) Even without a hard drive crash, Windows updates and virus protection software often corrupt the unlock information (or, your clients simply forget how to transfer a license and call you). You may be able to confirm that the machine ID is the same and that only one machine is licensed, but it is still a big inconvenience for you and your client to constantly regenerate unlock codes (especially if the unlock codes are 24 digits long compared with the simple LOGIN-INFO that SOL uses). Also, with this scheme, you need to run an .EXE to generate unlock codes which means that you need to be at your computer.

5) This scheme may be inconvenient for your clients because it ties the software to one computer. For example, a client wants to use the software at the office and at home. Or, the licensed computer is tied up by a co-worker who isn't even using your software. You can give them two unlock codes, but then they essentially have two licenses for the price of one.

6) This scheme might offer a network license system so that the program can be shared over a LAN and not be tied to one computer. However, the setup for this is often complicated and difficult to maintain. Since all office networks are different, you may end up spending too much time diagnosing network problems and not even getting the software to work.

In summary, the machine ID copy protection scheme:

  • Is vulnerable to hard drive crashes and virus protection software
  • Can be defeated by client deceit and Citrix networks
  • Is inconvenient for both you and your customers
  • Doesn’t function easily over a network
  • Is time-consuming for you to support.

Copy Protection Scheme 2: Hardware Key or “Dongle”

A small device called a “dongle” is attached to a computer’s serial port or inserted into a USB slot. If the dongle is absent, the software runs in demo mode or not at all.

Problems with this scheme:

1) This scheme delays the time between purchase and use for end-users since the dongle has to be mailed before the software will work. It is impossible to do a purely automated, Internet sale.

2) If the end-user loses the dongle, the developer would most likely just send another -- if the end-user lies (rare, but possible) about losing the dongle, they gain another license. For example, you may have a $3000 software product protected by a dongle. You can’t really expect the client to pay another $3000 if they lose the dongle. On the other hand, if you send another dongle and they later "find" the first one, they now have 2 copies of your software for the price of one.

Note: see SOLKey under "License Options." With SOLKey, you store your dongle serial numbers in your client database. If a client loses a dongle, you can deactivate it and issue another. Therefore, if the client later "finds" the first dongle, it will not work.

3) If a client uses a Citrix network (or similar), they can place the dongle on one machine but spawn your application to multiple terminals. Therefore, they can have unlimited users for the price of just one license.

4) End-Users don’t like dongles – they lose track of them in a large office, forget them if traveling, run out of USB ports on their computer, etc.

5) Some dongles have network options, but again, they may not easily work on all networks. The developer may end up spending a large amount of time getting it to work over a client’s network.

In summary, the dongle protection scheme:

  • Annoys your customers because the dongle has to be mailed
  • Can be defeated by client deceit and Citrix networks
  • Is inconvenient for your customers to track
  • May not work well on local area networks

However, if you want to offer your clients dongles, you can use SOLKey to safeguard them from being lost.

The SOL Copy Protection Solution

1) SOL is unaffected by a client’s hard drive crash or if they get a new computer -- the client simply reinstalls the software. The LOGIN-INFO you issue to them is all they need to use the software no matter how many times they reinstall. With a SOL network license (SOLNet), the number of installations is irrelevant because they can’t have more concurrent users than you’ve assigned. Likewise, with a SOL time/unit license (SOLMeter), the number of installations is irrelevant because their usage is logged regardless of the number of computers used.

2) SOL works in a Citrix environment controlling the number of concurrent users or logging the time used. It doesn’t matter if multiple copies of your software are spawned since all use is controlled and logged in the SOL Internet database outside the Citrix network.

3) With SOL, you will not be bothered to regenerate unlock codes. You issue your client LOGIN-INFO and that is all they need regardless of the number of installations. Issuing LOGIN-INFO can be done while traveling since it requires only an Internet browser. Even better, you can automate your web site so that it sets up new clients without your intervention. Either way, your client can begin using your software immediately!

4) SOL is the easiest network solution. Since there is no network setup on the client’s server, you don’t need to have knowledge of all the different networks out there. Your clients simply install your software and enter LOGIN-INFO. They can work at the office, from home, or on the road needing only an Internet connection. (If your clients need to work periodically without an Internet connection, you can issue them hardware keys and use SOLKey to safeguard them from being lost.)

In summary, the SOL copy protection system:

  • Is NOT vulnerable to hard drive crashes and virus protection software
  • CANNOT be defeated via client deceit or via a Citrix network
  • Tremendously reduces licensing technical support, making you and your clients happier
  • Is convienient to use and makes licensing quick and easy for your clients
  • Lets you offer a network license that you don't have to support