前端登录的加密和解密

关于在做vue项目时的前端登录的加密和解密介绍一种经常使用的crypto-js加密方法

本文章这里介绍一篇AES加密算法,如果对这个算法不熟悉的可以查看一篇
AES加密算法的详细介绍与实现的一篇文章,还有一篇理解AES加密解密的使用方法。

使用方法
首先要引入 crypto-js ,crypto-js 是一个纯 javascript 写的加密算法类库 ,可以非常方便地在 javascript 进行 MD5、SHA1、SHA2、SHA3、RIPEMD-160 哈希散列,进行 AES、DES、Rabbit、RC4、Triple DES 加解密,我们可以采用 npm install crypto-js --save 进行下载安装,也可以直接去 GitHub下载源码~

我的项目中具体的步骤如下:
1、npm install 下载crypto-js 命令:npm install crypto-js --save
2、 在package.json里面添加"crypto-js": “^^3.1.9-1”
3、引入 import CryptoJS from ‘crypto-js’
4、定义两个方法 ,分别是用于加密和解密,这里我将它放在了 utils 文件夹下

import CryptoJS from 'crypto-js'
  • 加密(需要先加载lib/aes/aes.min.js文件)
export const encrypt = (word) => {
     
    var key = CryptoJS.enc.Utf8.parse("46cc793c53dc451b");
    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 const decrypt = (word) => {
     
    var key = CryptoJS.enc.Utf8.parse("46cc793c53dc451b");
    var decrypt = CryptoJS.AES.decrypt(word, key, {
     
        mode: CryptoJS.mode.ECB,
        padding: CryptoJS.pad.Pkcs7
    });
    return CryptoJS.enc.Utf8.stringify(decrypt).toString();
}

你可能感兴趣的:(javascript,加密解密,vue)