java前後端加密的方法(AES)
阿新 • • 發佈:2018-12-09
AES-128-CBC加密用法及相關資料
前端jsp頁面需要引進:
<script type="text/javascript" src="js/cryptojs/rollups/aes.js"></script>
<script type="text/javascript" src="js/cryptojs/components/pad-zeropadding-min.js"></script>
Js檔案使用方法:
//AES-128-CBC加密模式,key需要為16位,key和iv可以一樣
function encrypt(data) {
var key = CryptoJS.enc.Utf8.parse(' [email protected]');
var iv = CryptoJS.enc.Utf8.parse('[email protected]');
return CryptoJS.AES.encrypt(data, key, {iv:iv,mode:CryptoJS.mode.CBC,padding:CryptoJS.pad.ZeroPadding}).toString();
}
var userName = encrypt(userName);
var userPwd = encrypt(userPwd);
上圖中的encrypt方法中key和iv的值可以自定義,但必須是16位,與後臺解密時用的值相同
後臺解密:
//使用AES-128-CBC加密模式,key需要為16位,key和iv可以相同!
private static String KEY = "[email protected]";
private static String IV = "[email protected]";
userName = AesEncryptUtil.desEncrypt(userName, KEY, IV);
userPwd = AesEncryptUtil.desEncrypt(userPwd, KEY, IV);
需要先將AesEncryptUtil工具類和相關jar包引入專案