Heim >Java >javaLernprogramm >Wie entschlüssele ich mit OpenSSL AES-CBC verschlüsselte Dateien in Java?
Entschlüsseln von Dateien in Java, die mit OpenSSLs AES im CBC-Modus verschlüsselt wurden
OpenSSL verschlüsselt Dateien mithilfe einer Salt-basierten Methode zur Passwortschlüsselableitung und Base64-MIME Codierung. Um solche Dateien in Java zu entschlüsseln, befolgen Sie die folgenden Schritte:
Salt und Schlüssel generieren:
salt = random(8) keyAndIV = EVP_BytesToKey(password, salt, 48) key = keyAndIV[0..31] iv = keyAndIV[32..47]
Salz und Chiffretext extrahieren:
Aus der Base64-Verschlüsselung Datei:
Entschlüsseln:
aesCBC.init(Cipher.DECRYPT_MODE, key, iv) plaintext = aesCBC.doFinal(ciphertext)
OpenSSL EVP_BytesToKey Implementierung:
public static byte[][] EVP_BytesToKey(int key_len, int iv_len, MessageDigest md, byte[] salt, byte[] data, int count) { // ... }
Hauptentschlüsselungsmethode:
public static void main(String[] args) { // ... }
Zusätzliche Hinweise :
Das obige ist der detaillierte Inhalt vonWie entschlüssele ich mit OpenSSL AES-CBC verschlüsselte Dateien in Java?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!