Einzelnen Beitrag anzeigen

gammatester

Registriert seit: 6. Dez 2005
999 Beiträge
 
#18

AW: DEC 5.2 mit Vector deccipher Umbau von DOT net auf Delphi

  Alt 21. Mär 2013, 10:00
AES_CBC_Init_Decr(key,160,aesblck,ctx);
Das ist Unsinn! Es gibt keine 160-Bit AES-Schlüssel! Leider scheinst Du auch der Unsitte anzuhängen, Fehlercodes einfach nicht zu benutzen und auszuwerten. AES_CBC_Init_Decr ist eine function, mit Deinen Parametern liefert sie -1 = AES_Err_Invalid_Key_Size.

Wie schon gesagt, klär erst mal genau wie auch C#-Seite die Nicht-Standard-Operationen implementiert sind. Wenn das geklärt ist, reduziere alles auf Byte-Testvektoren. Also:

Passsword/Salt etc liefert letztendlich via pbkdf1 einen 128-, 192- or 256-Bit-Schlüssel, den man schon mal auf Übereinstimmung testen kann, ohne die Verschlüssung anzuwerfen. Wenn Du damit fertig bist, diesen Key als array[0..xx] of byte weiter verwenden.

Analog IV und Base64-decodierten Ciphertext CT mit PKCS7-Padding als Bytearrays.

Mit den drei Bytearrays Key, IV und CT gehst Du dann in die CBC-Entschlüsselung, der letzte Block des Klartexts enthält dann das Padding und kann für einen schnellen Test auf Übereinstimmung erstmal ignoriert werden. Ein Plaintext der Länge 4 ist nicht sinnvoll, weil CBC überhaupt nicht zum Einsatz kommt, nimm lieber einen mit 32 oder mehr Zeichen.
  Mit Zitat antworten Zitat