Hallo zusammen,
ich versuche gerade die Entschlüsselung eines Passworts aus C# in Delphi zu implementieren und stehe wohl auf dem Schlauch.
Ausgehend von C#:
public string Decrypt(string PWD, string Inputtext)
{
try
{
Rijndael AES_Decrypto = Rijndael.Create();
AES_Decrypto.BlockSize = 128;
AES_Decrypto.KeySize = 256;
Rfc2898DeriveBytes pdb = new Rfc2898DeriveBytes(PWD, SALT, 2000);
AES_Decrypto.Key = pdb.GetBytes(32);
AES_Decrypto.IV = pdb.GetBytes(16);
..
..
Schaut mein Ansatz in Delphi so aus:
Delphi-Quellcode:
function Decrypt(PWD, InputText: String): string;
const
lSALT: TBytes = [x, x, x, x, x, x, x, x];
begin
Key:= THash_SHA1.PBKDF2(BytesOf(PWD), SALT, 2000, 32);
IV:= THash_SHA1.PBKDF2(BytesOf(PWD), SALT, 2000, 16);
..
..
Leider erhalte ich für IV und Key unterschiedliche Werte und somit ist die Entschlüsselung des Passworts nicht erfolgreich.
Hat jemand eine Idee, was ich hier falsch mache?
Danke
Knuut21