sorry sehe den Thread erst jetzt:
Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
var
Temp: String;
begin
with TCipher_2DES.Create do
try
Mode := cmCBCx;
Init('AAAAAAAAAAAAAAAA',#0#0#0#0#0#0#0#0); // passwort und IV setzen
Temp := EncodeBinary('123456789012345'+#1); // verschlüsseln
Temp := DecodeBinary(Temp);
finally
Free;
end;
end;
Geht noch ein bischen übersichlicher und mit Schutzblöcken.
Man muß bei der Adaption der Algorithmen mit dem
DEC, ja mit jedweiger Crypto-Library, folgende wichtige Punkte hinterfragen
1.) welcher Algorithmus
2.) welcher Feedback Modus wurde benutzt, CBC, ECB, OFB usw. (in
DEC cm???x oder cm???8) Modis
3.) welches Passwort-Präprocessing wurde gemacht, also zb. wird das Passort direkt benuzzt, wird es expandiert auf eine exakte Schlüsselbitanzahl, wird es noch mit Zufall + Hash Funktionen abgesichert usw.
4.) wird ein InitVector benutzt, wie wird er berechnet ?
5.) wird der PlanText vor der Verschl. noch modifiziert, zb. Padding auf Mehrfaches von Cipher.Context.BufferSize Bytes, werden Sonderzeichen entfernt oder eingebaut
6.) wird der CipherText nach der Verschl. nochmals umformatiert, zb. binär nach MIM64 Format usw.
Die festlegung all dieser Punkte sind Aufrage des übergeordneten Protokolls das man implementieren möchte, also sowas wie PKCS# oder PGP usw. Das wäre, wenn es mit
DEC weiter gegangen wäre, die Aufgabe vom nicht exitenten
DEC Teil 3 gewesen. Also Basis,Formatierungen,sym. Kryptographie in Part I, große Zahlenbibliothek + asymmtrische Kryptographie in Part II und alle Protokolle wir PKCS#, Open/PGP usw. im Part III. Jetzt wird es auch verständlich warum in den Basisklassen des DECs, so wie es jetzt ist, eben keine Rücksicht auf diese verschiedenen Protokolle genommen wurde, wichtig war vom Design her nur das alles was grundsätzlich in den Protokollen benötigt wird schon im
DEC Part I vorraus geplant wurde. Somit sollte es sehr einfach sein, mit dem jetzigen
DEC und bischen Fleißarbeit in der Vorbereitungsphase, auf's konkrete Ziel zu adoptieren.
Gruß Hagen