I was to trying encrypt a text using CryptoSwift for ios application, and CryptoJS for web application, which has to be decrypted in Java platform. I could able to encrypt successfully in javascript by using the following code.
var message = "Hello" var password = "samplepasswordky" function encrypt(message, password) { var salt = CryptoJS.enc.Hex.parse("00000000000000000000000000000000"); var key = CryptoJS.PBKDF2(pass, salt, { keySize: keySize/32, iterations: iterations }); var iv = CryptoJS.enc.Hex.parse("00000000000000000000000000000000"); var encrypted = CryptoJS.AES.encrypt(msg, key, { iv: iv }); var encryptedMessage = encrypted.ciphertext.toString(CryptoJS.enc.Base64); return encryptedMessage; } For the same in CryptoSwift I am doing the following, but I could not decrypt the text in Java.
let salt: [UInt8] = Array("0000000000000000".utf8) let password: [UInt8] = Array("samplepasswordky".utf8) let iv: [UInt8] = Array("0000000000000000".utf8) let derivedKey = try! PKCS5.PBKDF2(password: password, salt: salt , iterations: 100, keyLength: 16, variant: .sha1).calculate() let encrypted = try! AES(key: derivedKey, blockMode: CBC(iv: iv), padding: .pkcs5).encrypt(input) print(encrypted.toHexString()) Kindly help me to make this work.