License4J is a pure Java library for creating and validating licenses.
The key concept is features of a license. You can easily add any feature to your license file,
i.e. name of the product, version, expiry date, number of executable instances, customer's name, company,
IP address, etc. The feature's value can be string or any serializable Java object.
You can have unsigned features - features that are not used in the signature generation/verification
and therefore can change their values leaving the license valid.
Also the library provides methods for signing arbitrary content that should not be changed by the user.
For the maximum protection of your application it is highly recommended to use
Allatori Java Obfuscator together with the License4J library.