Serial Key Generating Library

De Banane Atomic
Aller à la navigationAller à la recherche

SKGL - Serial Key Generating Library

A very simple licensing system that might be used to protect .NET Applications.

Génération de clés

Csharp.svg
var keyGenerator = new Generate();
keyGenerator.secretPhase = "My$ecretPa$$W0rd"; // adding password

// valid from today for 30 days
var key = keyGenerator.doKey(30);

// valid from 1/1/2000 for 30 days
var key = keyGenerator.doKey(1, new DateTime(2000, 1, 1));
Bug avec « doKey(int, int) » qui retourne un object au lieu d'un string

Validation

Csharp.svg
var keyValidator = new Validate();
keyValidator.secretPhase = "My$ecretPa$$W0rd"; // the passsword
keyValidator.Key = "JUWSM-JKDMS-VIXPU-LJHMP"; // enter a valid key

var ok = !keyValidator.IsExpired && keyValidator.SetTime >= keyValidator.DaysLeft && keyValidator.IsValid;
// keyValidator.SetTime >= keyValidator.DaysLeft
// vérifie que la période de validité initiale est supérieur ou égale au nombre de jours restants de validité
// ceci permet en partie d'empêcher que la date du système ne soit modifiée pour prolonger la période de validité.
Récupérer la date depuis internet au lieu d'utiliser celle du système.

Features

Csharp.svg
var skc = new SerialKeyConfiguration();
var keyGenerator = new Generate(skc);

skc.Features = new bool[8] { false, false,
                             false, false,
                             false, false,
                             false, false };

var keyValidator = new Validate();
if (keyValidator.Features[0]) { }

Machine code

Csharp.svg
var keyGenerator = new Generate(skc);
// entier de 5 chiffres max, 0 par défaut
int id = keyGenerator.MachineCode;

// valid from today for 30 days for a specific computer
var key = keyGenerator.doKey(30, id)

var keyValidator = new Validate();
if (keyValidator.IsOnRightMachine) { }