aes加密算法原理:
https://blog.csdn.net/qq_28205153/article/details/55798628
加密模式介绍:
https://blog.csdn.net/jerry81333/article/details/78336616
aes加密依赖CryptoJS库
<!DOCTYPE html> <html> <head lang="en"> <meta charset="UTF-8"> <title></title> </head> <body> <input type="text" id="encrypt"/> 加密密文:<span id="enWord"></span><br/> <input type="text" id="decrypt"/> 解密密文:<span id="deWord"></span><br/> <button id="encryptClick">加密</button> <button id="decryptClick">解密</button> <script src="js/aes.js"></script> <script> var aesObj={ "key":CryptoJS.enc.Utf8.parse("abcdefgabcdefg12"), ivv:CryptoJS.enc.Utf8.parse("abcdefgabcdefg12"), //秘钥和偏移量和后台约定好 "EnCode":function(str){ var encrypted=CryptoJS.AES.encrypt(str,this.key,{ iv:this.ivv, mode:CryptoJS.mode.CBC, padding:CryptoJS.pad.Pkcs7 }); return encrypted.toString(); }, "DeCode":function(str){ var decrypted=CryptoJS.AES.decrypt(str,this.key,{ iv:this.ivv, mode:CryptoJS.mode.CBC, padding:CryptoJS.pad.Pkcs7 }); return decrypted.toString(CryptoJS.enc.Utf8); } }; var encryptBtn=document.getElementById("encryptClick"); var decryptBtn=document.getElementById("decryptClick"); var encryptTxt=document.getElementById("enWord"); var decryptTxt=document.getElementById("deWord"); encryptBtn.οnclick=function(){ var inputVal=document.getElementById("encrypt").value; var encryptStr=aesObj.EnCode(inputVal); encryptTxt.innerText=encryptStr; }; decryptBtn.οnclick=function(){ var inputVal=document.getElementById("decrypt").value; var decryptStr=aesObj.DeCode(decodeURIComponent(inputVal)); decryptTxt.innerText=decryptStr; } </script> </body> </html>
下载地址: