Delphi-PRAXiS
Seite 2 von 5     12 34     Letzte »    

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi Keygen mit MD5 um Serial zu generieren ! (https://www.delphipraxis.net/112237-keygen-mit-md5-um-serial-zu-generieren.html)

spaxxn 17. Apr 2008 12:11

Re: Keygen mit MD5 um Serial zu generieren !
 
Wenn es dir so sehr um Sichrheit geht, warum verwendest du gerade für so ein Thema nicht RSA?

Den kodierten Inhalt könntest du dir dann auch wieder dekodieren, um dem Anwender zum Beispiel anzuzeigen, wie lange seine Lizenz gültig ist, falls du sowas brauchst.

Mal ein Anwendungsbeispiel:

Kunde erhält achtstelligen Zahlenschlüssel
Kunde gibt den Schlüssel beim Freischalten ein.
Aus Schlüssel,HDD-Schlüssel, MAC wird vom Client ein RSA-Code erzeugt.
RSA Code wird zum Server geschickt und dort entschlüsselt
Passender Schlüssel in der Datenbank wird gesucht und der RSA-Code zu diesem Schlüssel eingetragen.
In der DB liegen die Informationen zu Lizenzgültigkeit, Lizenzlaufzeit, Produkt etc...
Server erstellt neuen RSA-Code mit all diesen Infos und schickt ihn an den Client zurück.
Nun hat der Client "seinen" Schlüssel, über den das Produkt freigeschaltet ist in verschlüsselter Version vorliegen.

Btw. Das bedeutet allerdings, dass ein Webserver mit einem entsprechenden Modul läuft. Hatte damals für diesen Zweck eines mit Kylix für nen Apachen geproggt.

Delphiturbo 17. Apr 2008 12:53

Re: Keygen mit MD5 um Serial zu generieren !
 
Was ist mit der Installation von MD5 unter D7?

Klaus01 17. Apr 2008 12:59

Re: Keygen mit MD5 um Serial zu generieren !
 
Hier findest Du die md5.pas,
die brauchst Du nur in das Projektverzeichnis kopieren
und die Unit in den uses Deines Projektes angeben.

Grüße
Klaus

Delphiturbo 17. Apr 2008 13:49

Re: Keygen mit MD5 um Serial zu generieren !
 
Zitat:

Zitat von Klaus01
Hier findest Du die md5.pas,
die brauchst Du nur in das Projektverzeichnis kopieren
und die Unit in den uses Deines Projektes angeben.

Grüße
Klaus

Das habe ich gemacht. Wie kann nun MD5 in mein Code binden ?

hier ist ein Beispiel in DP gefunden, funktioniert leider nicht :
Delphi-Quellcode:
function erstelleKey(benutzername:string):string;
var z : string;
i : integer;
begin
If Length(benutzername) > 0 then begin    // wird halt geprüft ob überhaupt ein username eingegebn wurde
For I := 1 to Length(benutzername) do     //jeder buchstabe wird einzeln durchgegangen
z := z + IntToHex(Ord(benutzername) + $82);//buchstabe wird in ascii umgewandelt mit ord, dann wird 82 hinzuaddiert und anschliessend wieder in
                                           //hex umgewandelt
result := z + benutzername[0]             //zum schluss werden all ergebnisse zusammengerechnet und nochmal der erste buchstabe des namens angehängt
end else result := 'eingabe darf nciht leer sein';
end;
Thema

Nuclear-Ping 17. Apr 2008 13:49

Re: Keygen mit MD5 um Serial zu generieren !
 
Zitat:

Zitat von Delphiturbo
Was ist mit der Installation von MD5 unter D7?

Ja, manche müssen eben erst gegen die Wand fahren, damits klick macht. :mrgreen: Dir ist schon klar, dass MD5 32 Zeichen hat? ;)

Edit sagt, dass dein Beispiel rein garnix mit MD5 zu tun hat? Ausserdem ist z nicht initialisiert und was soll das am Ende bewirken? -> result := z + benutzername[0] ... Der erste Buchstabe wäre [1].

Delphiturbo 17. Apr 2008 14:21

Re: Keygen mit MD5 um Serial zu generieren !
 
gibst Du mir ein Beispiel, das mit MD5 zu tun hat
Wie ich vorher geschrieben, daß ich noch nicht mit MD5 Erfahrung gemacht habe

Klaus01 17. Apr 2008 14:32

Re: Keygen mit MD5 um Serial zu generieren !
 
Aloso wenn man sich eine wenig das md5.pas file anschaut,
dann springen einem folgende Funktionen ins Auge:

Delphi-Quellcode:
function MD5String(M: string): MD5Digest;
function MD5File(N: string): MD5Digest;
function MD5Print(D: MD5Digest): string;
Um nun einen hexMD5 String zu erhalten ist folgendes zu tun:

Delphi-Quellcode:
Edit1.text := md5Print(md5String('Dein String'));
Grüße
Klaus

Delphiturbo 17. Apr 2008 14:53

Re: Keygen mit MD5 um Serial zu generieren !
 
Ich bekomme tatsächlich 32 Zeichen
Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
begin
//Edit1.text := md5Print(md5String('Dein String'));
Edit1.text := md5Print(md5String(Edit2.Text));
end;
Ich muss 3 Sachen haben : Key, Benutzername, Serial !
Wie kann ich testen

Nuclear-Ping 17. Apr 2008 14:57

Re: Keygen mit MD5 um Serial zu generieren !
 
Warum arbeitest du auch auf Stringebene, statt auf Binärebene?

Delphiturbo 17. Apr 2008 15:20

Re: Keygen mit MD5 um Serial zu generieren !
 
Zitat:

Zitat von Nuclear-Ping
Warum arbeitest du auch auf Stringebene, statt auf Binärebene?

ich möchte nur testen um die Sache zu verstehen, wie das funktioniert

Wie gesagt 3 Sachen muss ich haben:

Benutzername : Das kann ich wie Du geschrieben hat, HDD- oder CPU-SN nehmen.

Key : ?!
Ich würde dafür einfach ein textfeld nehmen und wird in Programm gespeichert


Serial : !
Hier muss ich ein mathematische Funktion (Benutzername und Key -Kombination) einbauen oder

Wer kann mir ein Beispiel geben?


Alle Zeitangaben in WEZ +1. Es ist jetzt 02:24 Uhr.
Seite 2 von 5     12 34     Letzte »    

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz