Ich verwende Amazon S3 zum Speichern von Dateien. Beim Speichern verschlüssele ich den Stream im laufenden Betrieb. Wieder beim Herunterladen entschlüssele ich den Stream im laufenden Betrieb. Diese Einrichtung funktioniert sehr gut, aber gelegentlich erhalte ich folgende Ausnahmen -Mögliche Gründe für javax.crypto.IllegalBlockSizeException
javax.crypto.IllegalBlockSizeException: Eingangslänge Vielfaches von 16 sein muss, wenn mit gepolstertem Chiffre
Entschlüsseln Was mögliche Gründe dafür sein könnte, Fehler zu passieren. Ist die Korruption von Daten beim Upload/Download eine der Möglichkeiten? Wenn ja, tritt dies nur auf, wenn die Füll-Bytes beschädigt sind oder eines der Bytes in der Datei beschädigt wurde?
[EDIT] Aber das Merkwürdige ist, dass die in S3 gespeicherte Dateigröße korrekt ist, es ist nicht so, als ob nur die Hälfte der Datei gespeichert würde.
Erhalten Sie nur diese Padding-Ausnahme, oder erhalten Sie auch andere (illegale Padding-Ausnahmen)? –
Ja, ich bekomme auch Padding-Ausnahmen - java.io.IOException: Fehler beim Schließen des Streams: javax.crypto.BadPaddingException: Gegeben ist der letzte Block nicht richtig gepolstert –