• Vue项目使用AES做加密


    https://www.cnblogs.com/libo0125ok/p/9224121.html

    1、先在vue项目中安装crypto-js

    2、在项目中新建一个utils.js文件

    3、utils.js文件中的内容

    /**
     * 工具类
     */
    import Vue from 'vue'
    import CryptoJS from 'crypto-js'
    export default {//加密
      encrypt(word, keyStr){ 
        keyStr = keyStr ? keyStr : 'abcdefgabcdefg12';
        var key  = CryptoJS.enc.Utf8.parse(keyStr);//Latin1 w8m31+Yy/Nw6thPsMpO5fg==
        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();
      },
      //解密
      decrypt(word, keyStr){  
        keyStr = keyStr ? keyStr : 'abcdefgabcdefg12';
        var key  = CryptoJS.enc.Utf8.parse(keyStr);//Latin1 w8m31+Yy/Nw6thPsMpO5fg==
        var decrypt = CryptoJS.AES.decrypt(word, key, {mode:CryptoJS.mode.ECB,padding: CryptoJS.pad.Pkcs7});
        return CryptoJS.enc.Utf8.stringify(decrypt).toString();
      }
    
    }
    复制代码

    注:1、一定要在该文件中引用vue和crypto-js。2、两个方法中的第一个参数word是待加密或者解密的字符串,第二个参数keyStr是aes加密需要用到的16位字符串的key。3、如果想对一个js对象加密,需要先把该对象转成json字符串。

    4、测试:

    在需要使用加密解密方法的vue组件中使用import引入utils.js文件即可使用了

    module.exports.cipher = function (text) {

        //加密秘钥
        var key = "xxxxxxxx";

        var cipher = crypto.createCipher('aes-256-cbc', key);
        var text = text;
        var crypted = cipher.update(text, 'utf8', 'hex')
        crypted += cipher.final('hex')

        return crypted;
    }

  • 相关阅读:
    ch_6802 車的放置
    ch_POJ2182 Lost Cows
    ch_4201 楼兰图腾
    luogu_P3368【模板】树状数组 2
    门面
    建造者
    模板方法
    状态
    抽象工厂
    工厂方法
  • 原文地址:https://www.cnblogs.com/chaoyuehedy/p/9947381.html
Copyright © 2020-2023  润新知