JavaScript中实现AES加密解密
类别:Web前端 浏览量:2047
时间:2016-8-4 JavaScript中实现AES加密解密
JavaScript中实现AES加密解密方式一、加解密时需要秘钥(key)和秘钥偏移量(iv)
1、下载AES加密解密插件 (aes_1.js)
下载地址:https://github.com/hellobajie/AES-of-JavaScript
2、将该js文件引用到项目中
3、实例
<!doctype html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>需要秘钥(key)及秘钥偏移量(iv)的aes加解密</title>
</head>
<body>
<script src="aes_1.js"></script>
<script>
var key = CryptoJS.enc.Utf8.parse("十六位十六进制数作为秘钥");
var iv = CryptoJS.enc.Utf8.parse('十六位十六进制数作为秘钥偏移量');
function Encrypt(word){
srcs = CryptoJS.enc.Utf8.parse(word);
var encrypted = CryptoJS.AES.encrypt(srcs, key, { iv: iv,mode:CryptoJS.mode.CBC,padding: CryptoJS.pad.Pkcs7});
return encrypted.ciphertext.toString().toUpperCase();
}
function Decrypt(word){
var encryptedHexStr = CryptoJS.enc.Hex.parse(word);
var srcs = CryptoJS.enc.Base64.stringify(encryptedHexStr);
var decrypt = CryptoJS.AES.decrypt(srcs, key, { iv: iv,mode:CryptoJS.mode.CBC,padding: CryptoJS.pad.Pkcs7});
var decryptedStr = decrypt.toString(CryptoJS.enc.Utf8);
return decryptedStr.toString();
}
var mm = Encrypt('nihao')
console.log(mm);
var jm = Decrypt(mm);
console.log(jm)
</script>
</body>
</html>
方式二、加解密时仅需要秘钥
1、下载AES加密解密插件 (aes_2.js)
下载地址:https://github.com/hellobajie/AES-of-JavaScript
2、将该js文件引用到项目中
3、实例
<!doctype html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>加解密时仅需要秘钥</title>
</head>
<body>
<script src="aes_2.js"></script>
<script type="text/javascript">
var pwd="秘钥";
function Encrypt(word){
return CryptoJS.AES.encrypt(word,pwd).toString();
}
function Decrypt(word){
return CryptoJS.AES.decrypt(word,pwd).toString(CryptoJS.enc.Utf8);
}
var mm = Encrypt('nihao');
console.log(mm)
var jm = Decrypt(mm);
console.log(jm)
</script>
</body>
</html>
标签:JavaScript您可能感兴趣
- js 图片编辑处理库(javascript input图片上传及预览,FileReader预览图片)
- javascript 模块原理(详解JavaScript引擎V8执行流程)
- javascript页面滚动窗口(javascript实现简单滚动窗口)
- javascript文件解压(JavaScript 如何在线解压 ZIP 文件)
- javascript如何操作文档元素(JavaScript操作元素实例大全)
- javascript基本类型是哪些(详解javascript中的Strict模式)
- 浏览器怎么显示javascript页面(JavaScript如何通过userAgent判断几个常用浏览器详解)
- javascript怎么生成html控件(JavaScript+html实现前端页面滑动验证2)
- js防抖用法(JavaScript的防抖和节流案例)
- javascript学习参数(详解JavaScript堆栈与拷贝)
- javascript组件库实现(JavaScript分页组件使用方法详解)
- js使用递归解析(关于JavaScript递归经典案例题详析)
- JavaScript中实现AES加密解密
- canvas3d效果(JavaScript canvas实现七彩太阳光晕效果)
- javascript写计算器教程(基于JavaScript实现简易计算器)
- js数组去重的十种方法(JavaScript常用数组去重实战源码)
- 周杰伦演唱会门票(周杰伦演唱会门票多少钱一张2023)
- 焕然一新 成都轨道集团官方网站改版上线(成都轨道集团官方网站改版上线)
- 成都轨道交通19号线二期全线电通(成都轨道交通19号线二期全线电通)
- 19号线二期全线电通 轨道交通项目最新进展来了(19号线二期全线电通)
- 涉及3条地铁线路 成都这4座轨道交通站点有新名字了(涉及3条地铁线路)
- 来了 成都轨道交通5条线路刷新 进度条(成都轨道交通5条线路刷新)
热门推荐
- js RegExp用法
- 由dem数据可以获得哪些数据(详解GaussDBDWS explain分布式执行计划的示例)
- python爬虫爬取知乎(详解用python写网络爬虫-爬取新浪微博评论)
- iis服务器无法启动(Windows服务器中IIS返回的网页错误代码大汇总及原因解)
- django路由原理(详解django中url路由配置及渲染方式)
- html正则表达式案例(关于html字符串正则判断和匹配的具体使用)
- 定时删除linux日志(Linux使用shell脚本定时删除历史日志文件)
- 如何在windows上搭建ftp服务器(Windows Server 2016如何搭建部署FTP服务器)
- virtual和abstract的区别
- 香港云服务器哪个最好(香港云服务器和国内云服务器有什么区别?)
排行榜
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9