A simple GUI app in Swing, based on Peter Verhas' License3j, a free License Management Library in Java. The GUI is based on the License3j-REPL App which is a CLI Application used to create key pairs and create and sign licenses.
You can download pre-built binaries from the Releases page.
Important
Pre-built binaries are not signed. Your AV or any runtime protection may flag them. As of now, releases page is the only official source for downloading pre-built binaries.
You can also build your own binaries from the source code using Maven
git clone https://github.com/eggy03/License3j-GUI.git
cd License3j-GUI
./mvnw -Pdist package jpackage:jpackage@win./mvnw -Pdist package jpackage:jpackage@linux./mvnw -Pdist package jpackage:jpackage@macThe generated binaries will be available in {base.dir}/target/output
If you don't want to use jpackage and instead, want a runnable JAR
./mvnw clean packageBefore using this application, it is strongly recommended that you read the License3j Readme for a better understanding of how this application works. You can also refer to the License3j REPL Readme
Upon starting the application, you will see this UI
If you are creating a license for the first time, use the New License button. This creates a new license in memory. From here on, you can keep adding features, generate keys to sign, verify and save your license.
You can add any number of features of types available in the combo box
Optional: You can add machine ID to the license feature to make your license bound to a single machine. By default, it will show the machine ID of the current machine, but you can add your own machineID as well.
Select a Cipher string and a size and press on Generate Keys to create a key-pair in memory
Once your keys have been loaded and the license is ready to be signed, press Sign License to sign your license with the key and Verify License to verify your signed license. Verification also works for licenses loaded from a file.
Digesting the public key will create a Java code output of the public key along with its digest and display it in the logs. You will need to embed this code in your application you are creating the license for. For more information, check out the License3j Readme
It is important to save your signed license in the storage or else you will lose it when the application is closed.
To save your license, select a license format and give it a name along with an extension of your choice and then save it. File Extension on a license is optional.
You can also load a saved existing license by clicking on Load License. Make sure you select the correct type of license before loading. For example, if your license was saved in a binary form, but you are loading it in a base64 form, it will throw an error.
Provide the names of your keys, select a format and hit Save Keys. File Extensions on a keys are optional.
Similar to license loading, you can load already created keys in memory. Similar to license loading, keys also have their loading types.
Most of the workflow you perform in this application is logged for your convenience.
These parameters keep a track of the current statuses of the licenses and keys loaded in memory.