Hi
ich habe das mal überprüft
Delphi-Quellcode:
with TCipher_1DES.Create do
try
Mode := cmECBx;
Init(TFormat_HEX.Decode('0123456789abcdef'), '', 0);
WriteLn(EncodeBinary(TFormat_HEX.Decode('0123456789abcde7'), TFormat_HEX));
// c957 4425 6a5e d31d
Init(#23#82#107#6#35#78#88#7);
WriteLn(EncodeBinary('12345678', TFormat_HEX));
finally
Free;
end;
Die 1. Verschlüsselung liefert uns c95744256a5ed31d und das stimmt exakt mit dem Testvektor aus D3DES-1.c überein. Beide DES Implementierungen stimmen also überein.
Aber die 2. Verschl. gibt mir nicht das was du erwartest. Also entweder hast du irgendwo bei deinen Testvektoren einen Fehler gemacht oder der Source im Attachment spiegelt nicht das wieder was du in deiner Software benutzt.
12345678 verschl. mit #23#82#107#6#35#78#88#7 ergibt B71577F4D67CE817.
Auch wenn ich deinen Wert f0e43164f6c2e373 entschl. bekomme ich nur Mist angezeigt.
Gruß Hagen