PC Guard protection is applied directly to compiled applications such as .EXE, .DLL and .OCX files by wrapping them into security envelope. This means that almost any kind of application can be protected regardless of programming language used.

By default, no additional programming and source code editing is required. Protection process is simple and effective: set project settings accordingly to your requirements and click on Protect! button to encrypt application.

Application is encrypted during protection process and our protection code is embedded into it. Security envelope consist of large number of encryption layers and anti-debugging, anti-reverse engineering code and contains all protection functions.

Protection code will gain control on startup, check license status, demo limitations, application integrity, initialize required data, decrypt protected application and pass control to it. Protected application is not dumped to disk at any time.

Standard protection

Regardless of selected protection method standard protection is always applied to application during protection process.

Standard protection includes: 

- wrapping (application is wrapped into security envelope)

- encryption (application is encrypted)

- anti-debugging (special anti-debugging code is embedded into protected application)

- anti-decompilation (application can not be decompiled)

Protection methods

There are four main protection methods: PLAIN, REMOTE, NETWORK and USB.

Here is how available protection methods are related to standard protection:

PLAIN protection method = Standard protection

REMOTE protection method = Standard protection + Machine locking + Activation

NETWORK protection method = Standard protection + Network licensing

USB protection method = Standard protection + USB locking

Machine locking

Machine locking is the process of locking (linking) protected application to remote computer in order to prevent illegal usage on multiple computers. There are seven different locking parameters (locks) which can be set as mandatory and/or flexible in machine locking settings.

Activation

Effective machine locking requires software activation process. Software activation represents exchange of keys (activation codes) between software author and end user. End user is submitting site/mid codes to software author and software author is providing appropriate activation code based on these codes back to end user.

Protection process

Protection process with PC Guard software protection system usually includes the following steps:
 

Step1 Compilation
Release version of application is compiled from source code. (this step may not be required if you already have compiled binary applications)
Step2 Protection
Compiled application is protected with appropriate project settings. This step can be automated by using command line interface.
Step3 Packaging
Protected application is prepared for distribution, usually packaged into distributions setup (.exe, .msi or .zip)
Step4 Distribution
Packaged application is distributed to end users. Application can be distributed to end users by any means (Internet, CD, DVD...). If application is distributed via third party serial numbers feature can be used for marking each copy with appropriate serial number. Serials numbers will allow tracking and identification of each distributed copy.
The following additional steps are present only in case activation is required (remote protection method).
Step5 Request for activation
End user will install and run protected application. Application will display unique site/mid codes for his machine and prompt for activation code. End user can now pass these codes to you via email, phone, fax...
Step6 Generation of activation codes
Valid activation code (based on used project and provided site/mid codes) is generated in PC Guard's activation panel and then passed back to end user. This process can be automated with the help of Activation suite (ACCS) and Activation center (ACEN).
Step7 Activation
End user will activate application with provided activation code.