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
}

 

    


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM