1. 程式人生 > >Javascript實現前端AES加密解密功能

Javascript實現前端AES加密解密功能

西安人 才網

西安人才網掌握的HTML中的js前端AES加密

最近因為項目需求做了一次MITM,俄然即便發現運用HTTPS,也不能確保數據傳輸過程中的安全性。 經過中間人進犯,能夠直接獲取到Http協議的一切內容。 所以開端嘗試做一些簡略的加密,在一定程度上確保安全性。

本次選用AES加密數據,所以客戶端和效勞端運用的相同秘鑰。(僅作為演示,正式環境引薦運用RSA)

首要準備一份明文密碼和加密運用的KEY

var source = "ABCDEFG";var aesKey = "8NONwyJtHesysWpM";

JS加密 padding和mode 需求與效勞端相對應,不然無法解密

//key 為字符串類型,需求處理完再運用 //註:PKCS5Padding 和 PKCS7Padding 是一樣的

上段所示的 encryptedData 即為加密後的成果。

JS解密代碼

//encryptedData 為加密後的數據, //直接經過JS加密後的數據是一個目標,無法直接解密的, 需求轉換為Base64的字符串後才可解密 //效勞端應當回來Base64之後的加密數據 encryptedData = encryptedData.ciphertext.toString(); var encryptedHexStr = CryptoJS.enc.Hex.parse(encryptedData);


成果演示

Tip: aes.js N合一

http://react.file.alimmdn.com/aes.js

Demo 控制臺查看

http://react.file.alimmdn.com/aes.html?t=1490179790965

【源碼如下】

[html] view plain copy

[html] view plain copy

  1. >

  2. <</span>html lang="en">

  3. <</span>head>

  4. <</span>meta charset="UTF-8">

  5. <</span>title>Title


Javascript實現前端AES加密解密功能