Thema: Delphi CD Key???

Einzelnen Beitrag anzeigen

Benutzerbild von Meflin
Meflin

Registriert seit: 21. Aug 2003
4.856 Beiträge
 
#5

Re: CD Key???

  Alt 15. Jul 2004, 15:23
also ein bisschen schwieriger würd ich die keygeneration dann doch machen. sonst kann sich ja jeder den key selbst ausrechnen
hier ein beispiel aus der delphi-source code library:
Zitat:
Wie kann ich einen CD-Key generieren?
Einen CD-Key für ein Shareware-Programm oder eine Demo-Version zu schreiben, ist grds. einfach: Ausgehend von einem Ausgangswert (Name des Nutzers, Zufallswert etc.) wird der Schlüssel berechnet. Ziel bei dieser Berechnung ist natürlich, dass ihre Grundlage nicht so einfach durchschaut wird.

Im folgenden wird ein einfacher CD-Key in der Form xxxx-xxxx-xxxx erstellt. Im Grundwert, "Seed", dürfen nur Zahlen stehen. Weitere Möglichkeiten um den Schlüssel zu generieren bieten z.B. Rechenoperationen, XOR oder Vertauschoperationen. Der Phantasie sind keine Grenzen gesetzt. Der Tipp soll lediglich als Anregung dienen.

Im Beispiel wird davon ausgegangen, dass sich der CD-Key in einer TEdit-Komponente namens "Eingabe" befindet.

Delphi-Quellcode:
function CDKey(Seed:String): String;
const Key1: Array[0..9] of Char = ('2','5','8','9','5','a','1','3','6','7');
      Key2: Array[0..9] of Char = ('8','3','4','0','1','7','x','9','3','9');
var i: integer;

begin
 result := Seed + '-';

 for i:= 1 to length(Seed) do
  result := result + Key1[Ord(Seed[i])-48];

 result := result + '-';

 for i:= 1 to length(Seed) do
  result := result + Key2[Ord(Seed[i])-48];

end;

...

 if CDKey(Copy(Eingabe.Text,1,4)) = Eingabe.Text then
  Caption := 'Richtigelse Caption := 'falscher Key';
  Mit Zitat antworten Zitat