CryptoJS Encryption and Decryption

HTML

<script src="https://cdnjs.cloudflare.com/ajax/libs/crypto-js/3.1.2/components/core-min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/crypto-js/3.1.2/components/cipher-core-min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/crypto-js/3.1.2/components/aes-min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/crypto-js/3.1.2/components/enc-base64-min.js"></script>
<div id="enc"></div>
<div id="dec"></div>

JavaScript

var key = CryptoJS.enc.Utf8.parse("93wj660t8fok9jws");
var iv  = CryptoJS.enc.Utf8.parse("r0yy7e67p49ee4d7");

// console.log(key.toString());
// console.log(iv.toString());

function encrypt(plainText) {
  return CryptoJS.AES.encrypt(plainText, key, 
                              { iv: iv,
                               padding: CryptoJS.pad.Pkcs7,
                               mode: CryptoJS.mode.CBC
                              }).ciphertext.toString(CryptoJS.enc.Base64);
}

function decrypt(encryptedText) {  
  var cipherParams = CryptoJS.lib.CipherParams.create({
    ciphertext: CryptoJS.enc.Base64.parse(encryptedText)
  });
  return CryptoJS.AES.decrypt(cipherParams, key, 
                              { iv: iv,
                               padding: CryptoJS.pad.Pkcs7,
                               mode: CryptoJS.mode.CBC
                              }).toString(CryptoJS.enc.Utf8);
}
var start = new Date().getTime();
var encrypted = encrypt('{\"name\": \"Sushant\", \"loves\": \"cats\"}');
var end = new Date().getTime();
console.log(end - start);
document.getElementById('enc').innerHTML = encrypted;
document.getElementById('dec').innerHTML = decrypt(encrypted);