Menyahsulit Fail dalam Java Disulitkan dengan AES OpenSSL dalam Mod CBC
OpenSSL menyulitkan fail menggunakan kaedah terbitan kunci kata laluan berasaskan garam dan base64 MIME pengekodan. Untuk menyahsulit fail tersebut dalam Java, patuhi langkah berikut:
Jana Garam dan Kunci:
salt = random(8) keyAndIV = EVP_BytesToKey(password, salt, 48) key = keyAndIV[0..31] iv = keyAndIV[32..47]
Ekstrak Garam dan Teks Sifir:
Daripada base64 yang dikodkan fail:
Nyahsulit:
aesCBC.init(Cipher.DECRYPT_MODE, key, iv) plaintext = aesCBC.doFinal(ciphertext)
OpenSSL EVP_BytesToKey Pelaksanaan:
public static byte[][] EVP_BytesToKey(int key_len, int iv_len, MessageDigest md, byte[] salt, byte[] data, int count) { // ... }
Kaedah Penyahsulitan Utama:
public static void main(String[] args) { // ... }
Nota Tambahan :
Atas ialah kandungan terperinci Bagaimana untuk Menyahsulit OpenSSL AES-CBC Fail Disulitkan di Java?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!