前端AES加密解密


最開始使用的aes-js的npm包,后來發現npm上面那個包只能加密16個長度的字節,非16個長度的字符串就會報錯,后來使用的是crypto-js,

AES總共有四種加密方式,我們使用的CBC方式:

var CryptoJS = require("crypto-js");

//解密方法
function Decrypt(word) {
  var key = CryptoJS.enc.Utf8.parse("XXXXXXXXXXXX");
  var decrypt = CryptoJS.AES.decrypt(word, key, {
    mode: CryptoJS.mode.ECB,
    padding: CryptoJS.pad.Pkcs7
  });
  return CryptoJS.enc.Utf8.stringify(decrypt).toString();
}

//加密方法
function Encrypt(word) {
  var key = CryptoJS.enc.Utf8.parse("XXXXXXXXXXXX");
  var srcs = CryptoJS.enc.Utf8.parse(word);
  var encrypted = CryptoJS.AES.encrypt(srcs, key, {
    mode: CryptoJS.mode.ECB,
    padding: CryptoJS.pad.Pkcs7
  });
  return encrypted.toString();
}
export {
  Decrypt,
  Encrypt
}

這個代碼是配合后端java的AES加密解密,上面的XXXXXXXXXXXX是加解密的Key值,需前后端統一。

 

【完】

什么都經不住千錘百煉(源自良凌羅)


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM