crypto-js aes加密解密

让人想犯罪 __ 提交于 2019-12-06 10:30:44

安装

npm install crypto-js --save

unit.js

import CryptoJS from "crypto-js";
 //秘钥
const CRYPTOJSKEY= "abcdefghighkml";
 
export default {
  
  //加密
  /*
  * {param} plaintText 加密明文
  * return  str 加密结果
  */
  encrypt(plaintText) {
    var plaintText = plaintText;
    var options = {
      mode: CryptoJS.mode.ECB,
      padding: CryptoJS.pad.Pkcs7
    };
    var key = CryptoJS.enc.Utf8.parse(CRYPTOJSKEY);
    var encryptedData = CryptoJS.AES.encrypt(plaintText, key, options);
    var encryptedBase64Str = encryptedData.toString();
    return encryptedBase64Str;
  },
  //解密
  /*
  * {param} plaintText 解密密文
  
  * return  str 解密结果
  */
  decrypt(encryptedBase64Str, type) {
   
    var encryptedBase64Str = encryptedBase64Str;
    var options = {
      mode: CryptoJS.mode.ECB,
      padding: CryptoJS.pad.Pkcs7
    };
    var key = CryptoJS.enc.Utf8.parse(CRYPTOJSKEY);
    // 解密
    var decryptedData = CryptoJS.AES.decrypt(encryptedBase64Str, key, options);
    // 解密后,需要按照Utf8的方式将明文转位字符串
    var decryptedStr = decryptedData.toString(CryptoJS.enc.Utf8);
    return decryptedStr;
  }
};

使用

 //引入
 import Util from "util";
 //加密
 let userPwd = Util.encrypt('123456');
标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!