查看: 90|回复: 0

uni-app使用DES加密解密数据

[复制链接]

5

主题

0

回帖

0

积分

热心网友

金币
0
阅读权限
220
精华
0
威望
0
贡献
0
在线时间
0 小时
注册时间
2011-6-24
发表于 2019-8-15 15:09:00 | 显示全部楼层 |阅读模式

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
}

 

    



来源:https://www.cnblogs.com/JahanGu/p/11358084.html
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

相关侵权、举报、投诉及建议等,请发 E-mail:qiongdian@foxmail.com

Powered by Discuz! X5.0 © 2001-2026 Discuz! Team.

在本版发帖返回顶部