vue MD5加密和AES加密方法

MD5加密:

1.下载

npm i -S js-md5

2.引用

import md5 from "js-md5";

3.使用

md5('password')

AES加密:

1.下载

npm install crypto-js --save-dev

2.在src文件夹下的utils中新建cryptoJS.js文件

3.加密和解密代码

import CryptoJS from 'crypto-js'
import padZeropadding from 'crypto-js/pad-zeropadding';
//前后端需要核对好KEY 、IV 、mode、padding的值,保持一致
const KEY = CryptoJS.enc.Utf8.parse('1234567890ABCDEF');//十六位十六进制数作为密钥
const IV = CryptoJS.enc.Utf8.parse('FEDCBA0987654321');//十六位十六进制数作为密钥偏移量
/*
 * AES加密 :字符串 key iv  返回base64
 */
export function myEncrypt(str, keyStr, ivStr) {
    let key = KEY
    let iv = IV

    if (keyStr && ivStr) {
        key = CryptoJS.enc.Utf8.parse(keyStr);
        iv = CryptoJS.enc.Utf8.parse(ivStr);
    }

    let srcs = CryptoJS.enc.Utf8.parse(str);
    var encrypt = CryptoJS.AES.encrypt(srcs, key, {
        iv: iv,
        mode: CryptoJS.mode.CBC,            //这里可以选择AES加密的模式
        padding: padZeropadding
    });
    return CryptoJS.enc.Base64.stringify(encrypt.ciphertext);
}

/*
 * AES 解密 :字符串 key iv  返回base64
 */
export function myDecrypt(str, keyStr, ivStr) {
    let key = KEY
    let iv = IV

    if (keyStr && ivStr) {
        key = CryptoJS.enc.Utf8.parse(keyStr);
        iv = CryptoJS.enc.Utf8.parse(ivStr);
    }

    let base64 = CryptoJS.enc.Base64.parse(str);
    let src = CryptoJS.enc.Base64.stringify(base64);

    var decrypt = CryptoJS.AES.decrypt(src, key, {
        iv: iv,
        mode: CryptoJS.mode.CBC,            //这里可以选择AES解密的模式
        padding: padZeropadding
    });

    var decryptedStr = decrypt.toString(CryptoJS.enc.Utf8);
    return decryptedStr.toString();
}

 4.引用

import {myEncrypt,myDecrypt} from '@/utils/cryptoJS'

5.使用

myEncrypt('xxxxx')//加密
myDecrypt('xxxxx')//解密

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值