uni-app使用DES加密解密数据
1 uni-app操作
(1) 打开HBuilderX的视图->显示终端
cd 切换到你项目的根目录
执行命令 npm install crypto-js
安装成功后你的项目根目录会生成node_modules文件夹,里面有crypto-js就说明成功了
(2)接下来在哪使用就直接import CryptoJS from './node_modules/crypto-js/crypto-js.js'引入就可以了
(3)封装函数
明天再写。。。忘记了; 现在补充
我把crypto-js/crypto-js.js拷贝到了common目录下,并在下面新建了个js文件,写入下面代码;
import CryptoJS from './crypto-js/crypto-js.js' /* DES(Data Encryption Standard)和TripleDES是对称加密的两种实现。 DES和TripleDES基本算法一致,只是TripleDES算法提供的key位数更多,加密可靠性更高。 DES使用的密钥key为8字节,初始向量IV也是8字节。 TripleDES使用24字节的key,初始向量IV也是8字节。 */ //des加密 DES-EDE3-CBC var keyvi = '12345678'; function des_encrypt(message) { var key = CryptoJS.MD5(keyvi).toString(); var iv = CryptoJS.MD5(keyvi).toString(); var crypto_key = CryptoJS.enc.Utf8.parse(key); var crypto_iv = CryptoJS.enc.Utf8.parse(iv.substr(0,8)); var encode_str = CryptoJS.TripleDES.encrypt(message, crypto_key, { iv: crypto_iv, mode: CryptoJS.mode.CBC, padding: CryptoJS.pad.Pkcs7}); return encode_str.toString(); } //des解密 DES-EDE3-CBC function des_decrypt(message) { var key = CryptoJS.MD5(keyvi).toString(); var iv = CryptoJS.MD5(keyvi).toString(); var crypto_key = CryptoJS.enc.Utf8.parse(key); var crypto_iv = CryptoJS.enc.Utf8.parse(iv.substr(0,8)); var decrypt_str = CryptoJS.TripleDES.decrypt(message, crypto_key, { iv: crypto_iv, mode: CryptoJS.mode.CBC, padding: CryptoJS.pad.Pkcs7}); return decrypt_str.toString(CryptoJS.enc.Utf8); } module.exports = { des_encrypt: des_encrypt, des_decrypt: des_decrypt }