Zend - The PHP Company


Zend Guard: Frequently Asked Questions


Q: What is Zend Guard?


Zend Guard enables the protection and mass distribution of commercial PHP applications. Ensuring extra protection against reverse engineering and providing robust licensing technology, Zend Guard provides software vendors the ability to safely distribute and manage the use of their PHP applications.

Zend Guard is comprised of two components providing a dual layer of protection for PHP applications:

  • Zend Guard's encoder: Zend Guard lets you widely distribute your PHP applications and create PHP-driven Web sites without revealing your intellectual property. Zend Guard compiles PHP source code and encodes it to a Zend Intermediate Code file; end users can then run your encoded applications using the free optimization and decoding tool Zend Guard Loader.
  • Zend Guard's license manager: The license manager of Zend Guard enables independent software vendors (ISV's) to manage the commercial distribution of their PHP applications by generating license keys and tagging files that require a license key to operate. Software vendors can easily specify license models without changing their application’s source code. Licensing their PHP applications enable software vendors to dramatically expand their available market, enhance customer loyalty and account penetration, resulting in increased revenue and profitability.


Q: How does Zend Guard work?


By saving the code in a closed Zend Intermediate Code format, Zend Guard allows developers to protect source code from copyright infringement. This enables companies to create exclusive software solutions and commercial PHP applications while protecting their investment and intellectual property.

The license manager extends developers and ISV's the option to not only protect code from copyright infringement, but also impose license restrictions on files by marking encoded files as ones that require a license to operate. The license manager generates unique licenses based on defined criteria and then ensures tagged files require the licenses to operate. Tagged applications do not run unless the proper software license is found, allowing vendors to invoke license policies that will result in maximized sales.

The license manager is capable of creating software license files based on multiple criteria:

  • Concurrent Users - Usage is limited to the number of real-time users.
  • Evaluation License - A time limited license used for evaluation purposes or time dependant terms with pre-set expiration date.
  • Segment of Network - Usage is limited by IP address range, restricting licenses by geographical area depending upon networks topology.
  • Specific Server - License limited to specific hardware based on Host ID.
  • Usage and Restrictions - The license manager allows vendors the flexibility to enforce a license policy that controls the type of access a user has to a product.


Q: What do my customers need to run Zend encoded-applications?


They need to use Zend Guard Loader (for PHP 5.3 and 5.4) or Zend Optimizer (for PHP 5.2 and earlier), which can be freely downloaded. They also need to be using PHP 4.2.x or above.

Q: Can I bundle Zend Guard Loader or Zend Optimizer into my Zend-encoded application?


Yes, you can. Our revised license enables you to package either of these runtime decoders with your Zend-encoded applications, making it easier for your customers to start running your product immediately.

Q: Can the same license manager be used to license scripts that have been encoded by two different versions of Zend Guard or previous Zend Encoder?


An encoded file that requires a license will run only with a license created using the same Zend Guard as the file was encoded with. When a file is encoded by Zend Guard with support for licensing, it is digitally signed with a private key, which is unique to each and every Zend Guard installation. Each license file that is generated by Zend Guard is also digitally signed in a similar manner.
When a user wants to run a file which has licensing requirements, he must use a license file that was generated by the same Zend Guard, otherwise the signatures will not match, and the license file will be considered invalid.

Q: How can I notify my customers when their license has expired?


To notify customers that their license has expired (time-bomb), you would need to write a script that will send an email the day the license for the encoded product expires.

<?php$lic_info = zend_loader_file_licensed();if($lic_info['Expires'] == date('dMY')) { mail('customer@server.com', 'Your license expires today', $message); }?>

Q: How can I buy Zend Guard?


Please go to our online store to purchase Zend Guard.

Resources
DATASHEET

Read more about Zend Guard features

more»