C# - Decryption error (IV stimmt nicht überein)?
Hi
Ich habe in C# folgenden Code: https://pastebin.com/GbgkpdJh
Wenn ich das Programme laufen lasse bekomme ich folgenden Fehler:
Der angegebene Initialisierungsvektor (IV) stimmt nicht mit der Blockgröße für diesen Algorithmus überein.
Entschlüsselung des strings klappt aber wenn ich mit ergänze und den Wert "remoteUser" entschlüsseln möchte, kommt eben der obrige Fehler.
String in der Datenbank
CzJmG5H1PvO+1pbx9bDp8XW7EN7f53DLWRUovVl+Bezk+0ucMJJQTk+3PNJF7FsFmSc2KhCOH95kpWnf
Der Message string in der Datenbank ist länger:
tTAFf+QvNLCl7nAF4Hw6ntltlSuDkW2NQRj3GdKgisAxr0Mwp7vCwzoVfmKabLh/6GxWWuLpFMksKu9P1LfCz+gagYMa1BW68nmdbSad/fR47hKSB+hAbtyZF/UsjMM8
1 Antwort
Dann hängt der Fehler woanders, denn bei meinem Test hat es nie funktioniert, bis ich die IV-Länge erhöht habe.
Es kann auch sein. Wie gesagt die beiden verschlüsselten werte sind auch unterschiedlich lang. Wie erhört man den IV? ich hab gelesen dass man diesen um zwei bytes scheinbar erhöhen muss da er oftmals nur 14 bytes lang ist.
IV = Initialisierungsvektor
Bei dir heißt das Ding "ivStringBytes" und ist nur ein x-beliebiges Byte-Array.
Wie Du das länger machst, weiß ich nicht, ich weiß nicht, wo Du es her bekommst.
Das komische ist dass wenn ich einen string entschlüssele klappt es. Ich versucht einen weiteren string zu entschlüsseln und dann kommt erst der fehler