Skip to content
This repository has been archived by the owner on Dec 23, 2019. It is now read-only.

License Keys

developervariety edited this page Jun 20, 2019 · 11 revisions

License keys are essential to a licensing solution. Having license keys automates the process of sales without having to manage a hardware fingerprint approved list.

Many other licensing solutions provide the customer with a file to activate their product, not SecureApp. Although giving a file may bring a more secure feeling, SecureApp provides a short cryptographically generated license key. It's encrypted with military-grade strength and encoded with ZBase32 to prevent confusion of similar characters.

Algorithm

The algorithm for generating and validating license keys is this class.

NM1O9-7E3B6-B8X6UW-CMHS5-H8UTO
This license key is valid.

AppId: 926cd2aa03cd4a44851aead91e43162c
Tier: Bronze
Expiration date: 7/16/2019 3:41 AM

Although a license key could be validated on the client side, it does not mean it will work for the application. Once approved, it must go through the server to be validated once again and receive authorization. When a license key is activated from being validated on the client side and server side, it will be saved to the directory of the program for future verification purposes.

Genuine license keys must be generated with a secret key (made when the application is created on panel), and validated and stored on the server otherwise it's a useless non-functioning string.

Tiers

  • Bronze
  • Silver
  • Gold
  • Platinum

Possible improvements

  • Port the algorithm to a native language to avoid easy decompilation
  • Randomize the algorithm for production-use
  • Obfuscate library (.NET/native language)
Clone this wiki locally