Anfangsbytes nach Java AES/CBC-Entschlüsselung falsch
Die Anfangsbytes der entschlüsselten Zeichenfolge im bereitgestellten Java AES/CBC-Entschlüsselungsbeispiel werden angezeigt falsch. Dies kann mehrere Ursachen haben:
1. Fehlender Anfangsvektor (IV):
Um die Entschlüsselung korrekt durchzuführen, müssen Sie denselben IV angeben, der bei der Verschlüsselung verwendet wurde. Im gegebenen Beispiel scheint es, dass der IV vor der Entschlüsselung nicht initialisiert wird, was zu einer falschen Entschlüsselung der ersten Bytes führt.
2. Falscher Initialisierungsvektor (IV):
Der IV muss mit dem bei der Verschlüsselung verwendeten IV übereinstimmen. Wenn der IV zufällig generiert wird, sollte es sich um denselben Zufallswert handeln, der zum Verschlüsseln der Daten verwendet wurde.
3. Base64-Kodierung/Dekodierung:
Stellen Sie sicher, dass die verschlüsselten Daten vor der Entschlüsselung Base64-kodiert sind. Das angegebene Beispiel enthält keine Base64-Kodierung, was zu einer falschen Entschlüsselung führen kann.
4. Zeichensatz:
Der für die Kodierung/Dekodierung verwendete Standardzeichensatz ist UTF-8. Bestätigen Sie, dass bei der Ver- und Entschlüsselung derselbe Zeichensatz verwendet wurde.
5. Falscher Schlüssel:
Der Verschlüsselungsschlüssel muss mit dem für die Entschlüsselung verwendeten Schlüssel übereinstimmen. Stellen Sie sicher, dass sowohl beim Verschlüsselungs- als auch beim Entschlüsselungsprozess der richtige Schlüssel verwendet wird.
Um diese Probleme zu beheben und die Daten korrekt zu entschlüsseln, führen Sie die folgenden Schritte aus:
Das obige ist der detaillierte Inhalt vonWarum sind meine ursprünglich entschlüsselten Bytes in Java AES/CBC falsch?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!