This class can used to generate license style keys to control the distribution
and functionality of PHP applications.
It generates license strings that can bind PHP applications to specific domains,
specific servers, can only be executed during limited time period, or to
restrictions placed on a home server within the license key.
The binding to server process attempts to use the server network card MAC
address. This feature was tested on servers are Mac OS X (Darwin), Linux,
Windows XP, although it may also work for FreeBSD, NetBSD, Solaris.
PADL also attempts to use information from $_SERVER variable to encode that
server name, server IP, server application path and server application url to
the license key. Part of the process also binds the IP Address from the $_SERVER
variable if found, but it also attempts to parse the server config file (the
same used to get the MAC address) for any more IPs.
The server binding can be disabled if required, and it also possible to block
the key being generated for the localhost address (127.0.0.1).
The time limiting of the license uses a start period (and a given start offset
to allow for time discrepancies) and an expiry date if required.
If required when validating a key it is also possible to dial home to check the
license key on your own PADL License Server, examples are given.
The PHP_OS and PHP_VERSION of the php that the key was generated for is also
encrypted into the key.
It is also possible to encrypt additional information into the license key to
enable you to place restrictive features in your application to allow the
creation of trialware or demoware.
This class is still in development however it is stable. A GUI is to follow.
The original class has now been broken down into seperate classes, both for
security and ease of use.
The demo folder contains a demo single file application, you should note that
both the app folder and server also contain seperate demo files. The App folder
contains the classes that would be required by the application using this class.
And the Server folder contains the class that would be used by your license
The additional folder, Shared, contains the main distributionLicense class and
is needed by both the app and server classes. The demo files should explain
the new setup.
I have added new features removed some old redundant ones, and updated others.
I do eventually want to evolve this class into an application with a gui, and
will be looking for help with that if anybody cares to offer.
||PADL (PHP Application Distribution License System)
||Generate PHP application license keys
||GNU Lesser General Public License (LGPL)
|All time users:
|All time rank:
|screens (3 files)
Prize: One copy of the Zend Studio
|There are several solutions to help developers protecting the PHP software of applications that they want to sell.
Usually the developers provide license keys with their software that include information about the licensed code, enabled features, authorized configuration of the environment on which it is being installed.
This helps the developers to limit the scope of usage of their software according to the type of software license that their clients purchase.
This way the developers can use the same software distribution for different configurations and prices and even trial versions.
This class provides a means to generate license keys that include encrypted information about the clients PHP environment and even a way to send the keys to the developers site so they can capture the client features and generate upgraded keys that can enable more features for clients that pay the upgrade price.
||Not yet rated by the users
||Pages that reference this package
Latest pages that reference packages
||Applications that use this package
If you know an application of this package, send a message to the author to add a link here.