У меня есть следующий код для расшифровки в Java, я хочу, чтобы он был реализован в angular4.
public synchronized InputStream getInputStream(String src) {
KeyEntry entry = keysMap.get(src);
try {
String destPath = rootFolder + "/" + entry.destination;
FileInputStream is = new FileInputStream(destPath);
if (entry.key.isEmpty()) return is;
byte[] encKey = Base64.decode(entry.key, Base64.DEFAULT);
SecretKeySpec secretKeySpec = new SecretKeySpec(encKey, AES_ALGORITHM);
IvParameterSpec ivParameterSpec = new IvParameterSpec(encKey);
Cipher cipher = Cipher.getInstance(AES_TRANSFORMATION);
cipher.init(Cipher.DECRYPT_MODE, secretKeySpec, ivParameterSpec);
return new CipherInputStream(is, cipher);
} catch (Exception e) {
e.printStackTrace();
}
return null;
}
в настоящее время это делается, что-то вроде ниже, не работает
decryptContent(ciphertext, base64Key) {
const key = CryptoJS.enc.Base64.parse(base64Key);
const decryptedData = CryptoJS.AES.decrypt( ciphertext, key, {
iv: CryptoJS.lib.WordArray.random(128 / 8),
mode: CryptoJS.mode.ECB,
padding: CryptoJS.pad.NoPadding
});
const decryptedText = decryptedData.toString( CryptoJS.enc.Utf8 );
}