I need encrypt in Javascript and Decrypt in Java but when i encrypt in Java the text is diferent, i used a diferent script but same algorithm, AES-128 CBC Zero Padding.
This is for Javascript and Java 7 in Intellij IDEA
Javascript:
var message = "3258";
var key = "CLAVE00000000000";
var iv = "VECTOR0000000000";
var ciphertext = CryptoJS.AES.encrypt(message, key, {iv: iv, padding: CryptoJS.pad.ZeroPadding, mode: CryptoJS.mode.CBC});
alert(ciphertext.toString());
var decrypt = CryptoJS.AES.decrypt(ciphertext, key, {iv: iv, padding: CryptoJS.pad.ZeroPadding, mode: CryptoJS.mode.CBC});
alert(CryptoJS.enc.Utf8.stringify(decrypt).toString());
Java:
KeyGenerator keyGenerator = KeyGenerator.getInstance(ALGORITHM);
keyGenerator.init(AES_128);
String key = "CLAVE00000000000";
String IV = "VECTOR0000000000";
System.out.println("1. Message to Encrypt: " + new String(message, StandardCharsets.UTF_8));
byte[] cipherText = encrypt(key, IV, message);
System.out.println("2. Encrypted Text: " + Base64.getEncoder().encodeToString(cipherText));
byte[] decryptedString = decrypt(key, IV, cipherText);
System.out.println("3. Decrypted Message : " + new String(decryptedString));
I expect the cipher text identical in Javascript or in Java, but the values are diferent