1. 程式人生 > >java前後端加密的方法(AES)

java前後端加密的方法(AES)

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包引入專案