Lizenzschlüssel in c-sharp

Immer wieder kommt die Frage auf wie man Lizenzschlüssel für das eigene Programm in c# erstellt. Auf diese Frage wird im nachfolgenden Beispielhaft eingehen.

Als erstes sollte man sich über die Anforderungen Gedanken machen.

  • Entwicklung eines Algorithmus für den Lizenzschlüssel. Das hat den Vorteil, dass jeder nach diesem erstellte Schlüssel als gültig anerkannt wird. Eine Anpassung des Programms für weitere Lizenzschlüssel entfällt.
  • Lizenzschlüssel nach immer gleichen Muster erzeugen

In diesem Fall wird der Schlüssel nach folgendem Muster generiert.

  1. erzeuge eine Zahl zwischen 1000 und 9999 per Zufall das wird der erster Block

    generierung erster Block

  2. Bilde Quersumme des ersten Blocksquersumme bilden
  3. Fülle die Quersumme mit Zufallszahlen bis 4 Stellen auf das wird der zweite Block                zweiten Block bis 4 stellen auffüllen
  4. Addiere ersten Block mit seiner Quersumme und bilde daraus die Quersumme                   ersten block mit quersumme addieren und quersumme bilden
  5. Fülle diese Quersumme mit Zufallszahlen wie in Punkt 3 bis 4 Stellen auf das wird der dritte Block

Anschließen werden alle drei Blocke mit Bindestrichen verbunden, sodass sich für den Lizenzschlüssel nachfolgendes Muster ergibt.

xxxx-xxxx-xxxx

Im eigentlichen Programm kann dann geprüft werden, ob sich aus dem ersten Block mittels des Algorithmus die Anfangszahlen der beiden anderen Blöcke erzeugen lassen. Außerdem sollte mann natürlich die Länge und das Muster des Schlüssels überprüfen.

 

Achtung!!! Bitte haltet eure Algorithmen zur Generierung geheim und bedenkt das der in diesem Block verwendete nur als Denkanstoß zu werten ist und nicht für den Praxiseinsatz taugt.

 

Program Code zur Erstellung von Schlüsseln.

Auswertung Code zur Auswertung des eingegebenen Schlüssels.