Software Copy Protection

Copy Protection

Copy protection offers the technology that enables you to practically enforce software license and effectively protect your software against illegal copy and unauthorized use. So you can ensure that the distribution of your software is always secure. And, the user can use the software only as allowed by the license.

So Many Ways to Protect Your Application

Node-Locked, USB Dongle, Network Licenses, and combinations.

Node-Locked License

USB Dongle License

Network License

Node-Locked License (PC License) offers software-based protection to lock the application to a particular machine.

USB Dongle License (USB License) offers dongle-based protection to lock the application to a particular USB device.

Network License offers copy protection to lock the application to the license on a remote server. Both network PC and USB License types are supported.

PC/USB License offers a combination of both software- and dongle-based protection. PC License is great for online distribution, e.g. trial software. Then, turn the license into USB License for full featured software.

PC/USB/Network License allows you to protect and distribute software in one single version that can be licensed as PC License, USB License, or Network License.

Simple, Easy, No Programming Needed

Turn your application into the protected version in minutes.

The state-of-the-art shell protection provides a fast and easy way to protect your application. You don't need to add or modify any source code. The shell protection supports standard executables including EXE, DLL, OCX, and .NET assembly, for DOS, Win16, Win32, Win64, and .NET applications.

Have a non-standard executable (e.g. MS Access, Excel)?

How to protect an application

Simply run the provided ElecKey Integrator. Specify your original executable file, a new file name for the protected version, and follow the wizard dialogs. The Integrator will wrap over the original executable with the shell protection, and create the protected version that is ready for distribution to the user.

Code Protection

Protect your intellectual property against reverse engineering.

Besides copy protection, the state-of-the-art shell protection offers code protection to protect your software, algorithms, and intellectual property against tampering and reverse engineering. Several technologies are employed to defend against any possible attack, to make it extremely difficult, complex, and time consuming.

Anti-Debugging and Anti-Tracing

The shell protection transparently and continuously monitors the run time to detect if it is run under control of a debugger. If detected, the shell protection immediately terminates the executable. In addition, the shell protection itself is designed with complicated and confused logics to protect against debugging and tracing.

Code Encryption

The whole native executable or managed assembly is encrypted to safeguard against decompilation and disassembly. The shell protection only decrypts the needed code just before the run time in memory. After execution, the code is immediately returned to its encrypted state.


The shell protection regularly performs integrity check when calling the executable, to protect against tampering, modification, and virus infection. If a checksum is found invalid, the shell protection immediately terminates the executable.

KeyCheck API

For greater flexibility, better seamless integration, and higher security.

The KeyCheck API offers an alternative to the shell protection, which allows you to develop and integrate the software protection and licensing functionality right into your application. The API includes 32/64-bit DLLs, ActiveX, .NET Class Library, and .NET Component, with plenty of sample code for various programming languages that you can study and reuse.

Greater Flexibility

Support more types of applications including .NET WPF, non-standard executables (e.g. Visual FoxPro, MS Access/Excel/Word Macro), and more.

Better Seamless Integration

Make any customization you want. For instance, seamlessly add the license registration and activation menu within your application.

Higher Security

Customize or add more security measures. For instance, create random key-value challenges/responses to the Key to protect against DLL emulation and dongle emulation.

Instant KeyCheck API

A simpler and easier way to API.

The Instant KeyCheck API is a special function that provides a simpler and easier way to integrate the software protection and licensing functionality into your application. Besides, it offers greater flexibility than the wrapper method to support more types of applications including MS Access/Excel/Word Macro, Visual FoxPro, .NET WPF, and more.

How it works

Step 1: Run ElecKey Integrator to create the System Image File (.SIF), an encrypted file containing all protection settings.

Step 2: In your code, include the System Image (e.g. Prg0.sif) and make only one function call to InstantProtection().

The code to the right shows how you can easily add the protection and licensing functionality into a Hello World program.