Software-based protection problems
Generally, software-based copy protection technology has been seen as more vulnerable than dongle-based systems, because software is easier for third parties to manipulate than hardware-based systems.
Wrappers
Software wrappers are considered by many developers to be among the easiest products to use, because they are often designed to be easily integrated into any product. However, that ease of use comes at a price. Once cracked, a software wrapper can be countered with an un-wrapper that is easy to distribute and run.
Search the Internet to find cracks for some of the better-known software protection mechanisms, and you will be surprised at how quickly software crackers can neutralize code. It becomes profitable for them to do this, because once you have created a software patch neutralizing the protection provided by a single wrapper, you theoretically provide access to tens or hundreds of software applications protected using that product.
Developers should also be wary of future operating system developments when using wrappers. Unless you are sure that your wrapper solution will survive Windows XP Service Pack 2 and future operating system upgrades, for example, you could find yourself with increasing support costs in the future.
SDK's
SDK's are harder to implement than wrapper technology because you must be a developer with the tools that built the original application. The development time needed to copy protect your application with an SDK correlates directly with the level of integration you require.
Digital licensing models:
The flexibility of digital licensing allows companies to use several different licensing models with their software. These include:
- Modular licensing
Licensing software based on the use of individual components or features. - Trial period licensing
Using a trial version of the software that locks up after a pre-defined period and can only be unlocked with a license purchase. - Subscription
Providing software that is rented rather than owned. - Per-use licensing
Software can be paid for each time it is used, with usage measured by some agreed criteria. - Concurrent network usage
Software which is designed for use on a network can be restricted to a set number of simultaneous users. - Limited-run evaluation
Software locks up after a set number of uses until a full license is purchased.
For more useful information, See "PRO-Tector Flash: the best of both worlds"