CryptoJS AES - Sample

by Mohit Agrawal

HTML

<script src="https://cdnjs.cloudflare.com/ajax/libs/crypto-js/3.1.9-1/crypto-js.min.js"></script>

JavaScript

var encrypt = function (str) {
  console.log('--> encryptDataService() --> str: ' + str);
  if(str !== undefined) {

/*     if (typeof str) {
      str = JSON.stringify(str);
    } */

    var encryptionKey = CryptoJS.enc.Base64.parse('u/Gu5posvwDsXUnV5Zaq4g==');
    var encryptionIv = CryptoJS.enc.Base64.parse('5D9r9ZVzEYYgha93/aUK2w==');
    var utf8Stringified = CryptoJS.enc.Utf8.parse(str);
    var encrypted = CryptoJS.AES.encrypt(
      utf8Stringified.toString(), 
      encryptionKey,
      {
        mode: CryptoJS.mode.CBC, 
        padding: CryptoJS.pad.Pkcs7, 
        iv: encryptionIv
      });
    console.log('--> encryptDataService() --> encrypted: ' + encrypted);

    var encryptedTemp = { 'encryptedReq': encrypted.toString() };
    return encryptedTemp;
  }
};

/* var request = "Mohit Agrawal"; */
var request = {
  "Fname": "Mohit",
  "Lname": "Agrawal"
}; 
console.log("Decrypted text: " + JSON.stringify(encrypt(request)) );