前端加解密庫 CryptoJS 使用(Triple DES 對稱加密)


CryptoJS 文檔

const key  = CryptoJS.enc.Utf8.parse("4c43c365a4ac05b91eb5fa95"); // key
const iv = CryptoJS.enc.Utf8.parse("4c43c365"); // iv


// 直接使用 key 是不對的,需要像上面那樣處理
// const key  = "4c43c365a4ac05b91eb5fa95"; // key
// const iv = key.substr(0, 8); // iv

function
encrypted(){
  const encrypted = CryptoJS.TripleDES.encrypt(params, key, { iv: iv, mode: CryptoJS.mode.CBC, padding: CryptoJS.pad.Pkcs7 }); return encrypted.toString(); // 返回加密后的字符串
}

function decrypted(params) { const decrypted = CryptoJS.TripleDES.decrypt(encrypted, key, { iv: iv, mode: CryptoJS.mode.CBC, padding: CryptoJS.pad.Pkcs7 }).toString(CryptoJS.enc.Utf8); return decrypted // 返回解密后的字符串 }

 

例子: 后台 key:  4c43c365a4ac05b91eb5fa95

 

加密算法: 3DES(又叫Triple DES)是三重數據加密算法

加密模式: CBC

填充: Pkcs7

偏移量: 4c43c365 (默認為key 的前8位)

輸出:base64

字符集:utf-8

 

加密輸出:

encrypted("winyh_2020-03-08_14:30_CryptoJS_Test") // 加密輸出 ==> '2KI3DXKp3Yh4v7olUa93LUpapo6Jha92cY9/EICBv/LH2kZu57Mtxg=='

解密輸出:

dncrypted("2KI3DXKp3Yh4v7olUa93LUpapo6Jha92cY9/EICBv/LH2kZu57Mtxg==") 解密輸出==> "winyh_2020-03-08_14:30_CryptoJS_Test"


加密輸出:

encrypted("winyh") // 加密輸出 ==> 'J3y7sIjJQgs='

解密輸出:

dncrypted("J3y7sIjJQgs=") 解密輸出==> "winyh"
 
 

 


免責聲明!

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



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