Einzelnen Beitrag anzeigen

Benutzerbild von Neutral General
Neutral General

Registriert seit: 16. Jan 2004
Ort: Bendorf
5.219 Beiträge
 
Delphi 10.2 Tokyo Professional
 
#16

Re: Mehrere Strings mit gleichem MD5 Wert

  Alt 24. Jul 2005, 15:33
Ich hab mir jetzt eine Function gebaut die CD-Keys generieren soll aber es funktioniert nicht richtig -.-

Delphi-Quellcode:
function CreateKey : String;
var qs : Integer;
    r : Integer;
    s : String;
begin
qs := 0;
 repeat
  r := random(25)+65;
  s := s+ Chr(r); // Zufälligen buchstaben hinzufügen
  qs := qs + r; // der Quersumme hinzufügen
  if qs + 65 > 974 then begin // falls Kein "A" mehr reinpasst
   qs := qs - r; // Quersumme eins zurücksetzten
   delete(s,length(s)-1,1); // String auch den letzten buchstaben löschen
   s := s + chr(975-qs); // und den buchstaben hinzufügen das es passt
   qs := qs + (975-qs); // und das auch zur Quersumme hinzufügen
  end;
 until qs = 975;
 Result := s;
end;
mit der Function check ich die Keys :

Delphi-Quellcode:
function IsRight(S : String) : Boolean;
var i, qs: integer;
begin
  qs := 0;
  for i := 1 to length(s) do begin
   qs := qs+ord(s[i]);
  end;
  if qs = 975 then Result := true
  else Result := false;
end;
so gehts in der praxis

Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
begin
  Edit1.Text := CreateKey;
end;

procedure TForm1.Button2Click(Sender: TObject);
begin
  if IsRight(Edit1.Text) then ShowMessage('Stimmt :)');
end;
Michael
  Mit Zitat antworten Zitat