Show/Hide Toolbars

Licence Protector 5

Navigation: Part II - Enhanced Features > Anti Hacker Strategies

CRC / MD5 Check of the main application EXE

Scroll Prev Top Next More

You can also use a CRC (cyclic redundancy check) check or the MD5 checksum to detect if your main application EXE is cracked. This involves a bit more work like the CRC Check of the DLL but adds additional security.The check could be done as follows.

 

Store the CRC value of your EXE file in a separate license file, which you name e.g. myapp.idx. A separate license file is necessary because you have to update this file every time you make a new compile of your EXE file. If you update the EXE file you always have to include the file which contains the CRC check in your update

At the application start, first check the CRC value of the DLL

Retrieve the CRC value of the EXE from the license file

Check your EXE file

In case the CRC is wrong let your application crash or hang - but not directly after the CRC check

 

Tip: You can store multiple CRC values to test different EXE files. Either add all values in one field or use a module for each TAG value.

Create license file template

Make a new license file template which uses a different Project Key (Read/Write Key). Store the CRC value of your EXE file in the field TagValue of the node <Default>. You need to define a default module although you would not use it.

 

 

Load the file into the Generator and save it as myapp.idx.

Source Code Integration

You have to open the file myapp.idx (without user interface), retrieve the TagValue and then close the file. Use these commands:

 

SecurityLevel

PrepareForce

GetVal - Token LTG

Quit

 

Now retrieve the CRC value of your EXE file - how to retrieve the CRC see CRC Check of the Licence Protector DLL. You could use GetCRC32 value if first checked the DLL to be sure that it is not cracked.

 

If the CRC does not match, continue your application but let it crash, hang or just terminate later.

 

Tip: You can create a tool to update the myapp.idx file with the latest CRC value of your EXE.  

 

Retrieve CRC value of the EXE with GetCRC32

SecurityLevel

PrepareForce

SetVal - Token LTG

Quit

 

The MD5 CRC check is more stronger than the CRC32. If security is a main issue use MD5.