45 lines
1.4 KiB
HTML
45 lines
1.4 KiB
HTML
<!doctype html>
|
||
<html lang="en">
|
||
<head>
|
||
<meta charset="UTF-8">
|
||
<title>需要秘钥(key)及秘钥偏移量(iv)的aes加解密</title>
|
||
</head>
|
||
<body>
|
||
<script src="crypto-js/rollups/aes.js" type="text/javascript"></script>
|
||
<script src="crypto-js/rollups/md5.js" type="text/javascript"></script>
|
||
<script src="crypto-js/components/pad-zeropadding-min.js" type="text/javascript"></script>
|
||
<script>
|
||
/**
|
||
* 加密
|
||
*/
|
||
function encrypt(str,key) {
|
||
key = CryptoJS.enc.Utf8.parse("7d30de1c-2752-4a04-a121-c6647ca8cd93");// 秘钥
|
||
var iv= CryptoJS.enc.Utf8.parse('dsfa9p8y098hasdf');//向量iv
|
||
var encrypted = CryptoJS.AES.encrypt(str, key, {
|
||
iv: iv,
|
||
mode:CryptoJS.mode.CBC,
|
||
padding:CryptoJS.pad.ZeroPadding
|
||
});
|
||
return encrypted.toString();
|
||
}
|
||
/**
|
||
* 解密
|
||
* @param str
|
||
*/
|
||
function decrypt(str) {
|
||
var key = CryptoJS.enc.Utf8.parse("7d30de1c-2752-4a04-a121-c6647ca8cd93");// 秘钥
|
||
var iv= CryptoJS.enc.Utf8.parse('dsfa9p8y098hasdf');//向量iv
|
||
var decrypted = CryptoJS.AES.decrypt(str,key,{iv:iv,mode: CryptoJS.mode.CBC,padding:CryptoJS.pad.ZeroPadding});
|
||
return decrypted.toString(CryptoJS.enc.Utf8);
|
||
}
|
||
//调用
|
||
//加密
|
||
var d=encrypt("abcd你好");
|
||
|
||
console.log(d);
|
||
//解密
|
||
console.log(decrypt(d));
|
||
|
||
</script>
|
||
</body>
|
||
</html> |