Package rs.baselib.licensing
The classes generate and verify license strings using a public/private key pair which clients must provide to these classes.
A license consist of a product ID which clients interprete themselves, validity date and a license holder string. Latter is again subject to clients to define.
A license is generated using the private key which must be kept secret and shall never
be distributed to license holders or with applications. The LicenseGenerator
is responsible for creating such licenses. The LicenseManager
verifies the license using the public key of your key pair. This public key can be safely
distributed with applications to license holders.
This package does not provide any other infrastructure than this simple classes. Licenses in general look like 8-character blocks, separated by dash characters. The number of blocks is determined by the size of the license holder string. The general rule is that 5 character (to be precise: bytes!) form an 8-character block in the license. The first block is reserved for meta-data (product ID and validity date).
This package is experimental yet. Usage is described on Class Usage Page
- Author:
- ralph
-
Interface Summary Interface Description ILicense The interface a license has to fulfill.ILicenseContext A container holding properties for creation and verification of licenses.ILicenseCreator Internal interface for implementations of license generators.ILicenseVerifier Internal interface for implementations of license generators.ILicensingScheme Describes a licensing scheme. -
Class Summary Class Description AbstractLicense Abstract implementation of a license.DefaultLicense Default implementation of a license.DefaultLicenseContext Default implementation of anILicenseContext
.KeyGen A RSA Key Generator.LicenseGenerator The generator for license.LicenseManager The Key Manager, responsible to verify licenses.LicGen A universal generator for creating RSA licenses.SimpleLicense A limited, simple implementation of a license. -
Enum Summary Enum Description LicensingScheme Describes the alternative ways to produce a license key. -
Exception Summary Exception Description LicenseException A License problem.