A Python library to create TrueLicense license files.
Project description
TrueLicense compatible license manager for Python
This package supports managing licenses one the format used by the Java package TrueLicense. Only the version 1 format is supported.
Please see the TrueLicense home page for an exhaustive reference of the license format, or Quick license format description below.
Quick license format description
A license has a validity window in time, an issuer, a holder and various meta data.
It is signed by the holder, and the signature can be verified using the issuer certificate.
The license file is also encrypted with a key derived from a password.
Quick library reference
The main class exported by truepy is truepy.License.
To generate a new license, use the class method truepy.License.issue.
To load a license from a file or stream, use the class method truepy.License.load.
To save a license to a file or stream, use the method truepy.License.store.
To verify the siganture of a license, use the method truepy.License.verify.
To read license information, use the truepy.License.license_data attribute; this is of the type truepy.LicenseData.
Loading and storing licenses requires only the license password; these operations do not perform signing and signature verification.
Issuing a new license requires the private key of the issuer certificate.
Verifying a license signature requires the issuer certificate.
Quick application reference
Please run the application with python -m truepy -h for more information.
Release Notes
2.0 - No dependency on OpenSSL
Changed certificate and signature verification routines to use cryptography instead of pyOpenSSL.
This changes all methods that take a certificate or a key as parameter.
1.0.1 - License Data Bugfix
Changed truepy.LicenseData.information to info to be compatible with TrueLicense.
1.0 - Initial Release
Support for basic license operations for TrueLicense version 1 licenses
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.