Hi,
Ich bräuchte mal Hilfe zum Thema MD5 Verschlüsselung!
1. Warum sind die Ergebnisse unterschiedlich bei dem folgenden Code ? (Siehe projekt.exe)
2. Warum ändert sich der Hashwert bei 3 nicht, wenn ich lNew noch vor der Label1.Caption Zuweisung setze ?
3. Warum ändert sich der Hashwert bei 3, wenn ich lNew vor der Label3.Caption Zuweisung setze ?
Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
var
lNew,lNew2 : String;
begin
{
Function MD5Hash(APWD: String): String;
Begin
With THash_MD5.Create Do
Try
Init;
Calc(APwd, Length(APwd));
Done;
Result := DigestStr(TFormat_HEX);
Finally
Free;
End;
End;
}
lNew := Edit1.Text;
{1}Label1 .Caption := ' = ' + MD5_HASH.MD5Hash(Edit1.Text);
{2}Label2 .Caption := ' = ' + MD5_HASH.MD5Hash('ms');
// lNew := Edit1.Text; setze ich lNew hier kommt auch immer ein anderer Hashwert raus bei 3
{3}Label3 .Caption := ' = ' + MD5_HASH.MD5Hash(lNew);
{4}Label4 .Caption := ' = ' + MD5_HASH.MD5Hash(PChar('ms'));
{5}Label9 .Caption := ' = ' + MD5_HASH.MD5Hash(PChar(Edit1.Text));
{6}lNew2 := Edit1.Text;
Label13.Caption := ' = ' + MD5_HASH.MD5Hash(lNew2);
{7}lNew2 := PChar('ms');
Label11.Caption := ' = ' + MD5_HASH.MD5Hash(lNew2);
end;
Nachträglich eingefügt: Wenn ich von MD5 Verschlüsselung spreche meine ich MD5 Hash!
Mit freundlichen Grüßen Tom
[edit=Phoenix]Titel auf Anfrage des Autors geändert. Mfg, Phoenix[/edit]