Security Tab

This tab contains License and Security configuration options.

  • Licenses - Licenses allow you to control the use of your encoded files as well as preventing piracy, unauthorized or invalid use. The Zend Licensing options enable you to configure License options, Restrictions and to create License files.

  • Encoding and obfuscation - Encoding converts PHP files into encoded binary files. Obfuscation converts user generated names (of variables, functions, classes, etc.) into machine generated names that contain no application context. The Encoding and Obfuscation Tab is used to manage encoding and obfuscation options and configurations for the entire Zend Guard project. Individual options can be applied to all Guard files or to individual files, as required.

Note:

Once the files have been encoded they are no longer editable. Any attempt to modify the files once encoded will result in rendering the files unusable. This provides an additional security layer for protecting intellectual property.

Name

Description

Licenses

Work Only with Encoded Files

Creates encoded files that work only in conjunction with other encoded files created by the same version of Zend Guard. Enables you to encode your files so that they will work only with encoded files containing your signature and makes it more difficult for users to reverse-engineer your code using PHP's code introspection functions, and include().

This feature prevents users from attaching their own encoded file or using PHP's introspection functions to reveal information about the structure of the file 

If not selected the above protections are not enabled.

Licensing

Enables you to encode files to work only with the License files.

Disabled: Disables licensing support altogether.

Enable License Support: A valid license is required for the encoded files to load properly. The license itself is generated by clicking the link: "Generate Product License File" located on the Zend Guard's Security tab (or by clicking File | New | Product License). The license requirement is automatically enforced at all times.

License Key

Generated - Works with a license key generated by Zend Guard.

External - Works with a Zend Guard generated license key saved in an External File.

Expiration

Determines expiration behavior for the encoded files. Can be used to limit a file's life span (e.g., sample version that will expire on selected date).

This feature is not related to the License Manager and should not be confused with the expiration date of licenses.

Encoded code will never expire: Disables the expiration date for encoded files.

Encoded code will expire on: Sets the expiration date for encoded files. The encoded files will expire on the expiration date and be made unusable. Use this option to create for time-limited software, beta versions or releases that will expire on a specific date. This can encourage your customers to upgrade.

Encoded code will expire after: Sets the number of years/months/days that the encoded file will work (starting from date the application was first used).

Note:

To create evaluation software (Beta versions) that expires after a designated period of use, use the Expiration options.

Encoding and Obfuscation Methods

Remove:

  • PHPDoc Blocks - Removes PHPDoc Block sections while encoding.

  • Line Numbers - Removes line numbering while encoding. Removing the line numbers when an error appears means that there will not be a line number to identify the location of the code that generated the error. This is an additional security precaution against reverse engineering.

Obfuscate:

Encoding is automatic. It converts PHP files into encoded binary files but does not obfuscate code.

  • Variables - Scrambles the context by encrypting user generated variables.

  • Functions - Scrambles the context by encrypting user generated function names.

  • Classes - Scrambles the context by encrypting user generated class names.

  • Apply selections to PHP built-in symbols - Scrambles the context by encrypting PHP internal symbols.