uniapp开发微信小程序使用des对数据加解密)
-
npm install crypto-js或者下载crypto-js的js文件引入
-
封装一个des.js
-
封装后在页面调用des.js文件里面的方法加密解密
// An highlighted block
des.js
import CryptoJS from './crypto-js.js'
export function getKey(){
return CryptoJS.enc.Utf8.parse('A1B2C3D4E5F6G7H8')
}
export function getIv(){
return CryptoJS.enc.Utf8.parse('0102030405060708')
}
/*加密*/
export function encrypt(data) {
const message = CryptoJS.enc.Utf8.parse(data);
var ciphertext = CryptoJS.AES.encrypt(message, getKey(), {
iv: getIv(),
mode: CryptoJS.mode.CBC,
padding: CryptoJS.pad.Pkcs7
});
return ciphertext.toString();
}
/*解密*/
export function decrypt(data) {
var bytes = CryptoJS.AES.decrypt(data.toString(), getKey(), {
iv: getIv(),
mode: CryptoJS.mode.CBC,
padding: CryptoJS.pad.Pkcs7
});
return bytes.toString(CryptoJS.enc.Utf8);
}
公共方法引入使用加密解密(因为我自己使用了公共封装方法所以页面调用有区别)
//引入des
import {decrypt,encrypt} from '../components/des.js'
//公共封装加密解密的方法
const cusEncrypt = sub => encrypt(sub)
const custDecrypt = sub => decrypt(sub)
//页面调用使用
this.$F.custDecrypt(data.age)