JavaScript加密库Crypto-JS的使用
2023-09-27 14:29:04 时间
先来图片一张,看看效果(一个采用Crypto-JS实现的工具展示):
http://bbs.csdn.net/topics/390169285
MD5
SHA-1
SHA-256
AES
Rabbit
MARC4
HMAC
HMAC-MD5
HMAC-SHA1
HMAC-SHA256
PBKDF2
散列/哈希
CryptoJS是一个纯javascript写的加密类库(下载),我们使用它只需要加入相关的引用即可:
散列/哈希示例1 :
1
2
3
4
5
6
7
|
<
script
type
=
"text/javascript"
src
=
"http://www.osctools.net/js/CryptoJS/components/core-min.js"
></
script
>
<
script
type
=
"text/javascript"
src
=
"http://www.osctools.net/js/CryptoJS/rollups/md5.js"
></
script
>
<
script
type
=
"text/javascript"
>
alert("你好,欢迎来到开源中国在线工具,这是一个MD5测试 MD5:"+CryptoJS.MD5("你好,欢迎来到开源中国在线工具,这是一个MD5测试"));
</
script
>
|
点此编辑代码并查看执行效果
上面就一行代码就可以轻松搞定一个MD5的哈希,使用非常方便。
同样,如果你想进行sha1、sha256等等诸多哈希算法,只需要引入相关的库就行了。
对于 HMAC-sha1 、HMAC-sha256、HMAC-md5等,用法是这样:
散列/哈希示例2
1
2
3
4
5
6
7
|
<
script
type
=
"text/javascript"
src
=
"http://www.osctools.net/js/CryptoJS/components/core-min.js"
></
script
>
<
script
type
=
"text/javascript"
src
=
"http://www.osctools.net/js/CryptoJS/rollups/hmac-md5.js"
></
script
>
<
script
type
=
"text/javascript"
>
var pwd="password";
alert("你好,欢迎来到开源中国在线工具,这是一个MD5测试 Hmac-MD5: "+CryptoJS.HmacMD5("你好,欢迎来到开源中国在线工具,这是一个MD5测试",pwd));
</
script
>
|
点此编辑代码并查看执行效果
PBKDF2哈希算法
这里将PBKDF2算法单独列出来,是因为他稍有不同,看如下代码:
散列/哈希示例3
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
|
<
script
type
=
"text/javascript"
src
=
"http://www.osctools.net/js/CryptoJS/components/core-min.js"
></
script
>
<
script
type
=
"text/javascript"
src
=
"http://www.osctools.net/js/CryptoJS/rollups/pbkdf2.js"
></
script
>
<
script
type
=
"text/javascript"
>
var salt=CryptoJS.enc.Utf8.parse("salt"); //盐
var iter=1000; //迭代次数
var mi=CryptoJS.PBKDF2("你好,欢迎来到开源中国在线工具,这是一个PBKDF2测试", salt,
{ keySize: parseInt(4),
iterations: parseInt(iter) }
);
alert("你好,欢迎来到开源中国在线工具,这是一个PBKDF2测试:----------哈希值:"+mi);
</
script
>
|
点此编辑代码并查看执行效果
加密/解密
加密解密示例1:
1
2
3
4
5
6
7
8
9
10
11
12
13
|
<
script
type
=
"text/javascript"
src
=
"http://www.osctools.net/js/CryptoJS/components/core-min.js"
></
script
>
<
script
type
=
"text/javascript"
src
=
"http://www.osctools.net/js/CryptoJS/rollups/aes.js"
></
script
>
<
script
type
=
"text/javascript"
>
var pwd="我的密码";
var mi=CryptoJS.AES.encrypt("你好,欢迎来到开源中国在线工具,这是一个AES加密测试",pwd);
alert("你好,欢迎来到开源中国在线工具,这是一个AES加密测试----密文:"+mi);
var result=CryptoJS.AES.decrypt(mi,pwd).toString(CryptoJS.enc.Utf8);
alert("解密结果:"+result);
</
script
>
|
点此编辑代码并查看执行效果
同样的,几种加密算法的使用方法都比较类似,需要使用哪个引入相关的js文件就ok了。
这里的在线加密/解密,散列/哈希工具是使用这个库构建的: http://www.osctools.net/encrypt
相关文章
- JavaScript动画实例:旋转的圆球
- Does javascript have an Equivalent to C#s HttpUtility.HtmlEncode? [duplicate]
- js 从数据数组中返回选定的数据元素 JavaScript slice() 方法
- JavaScript 遍历 from 表单所有控件
- 【JavaScript】JS中类似宏变量、宏替换的用法(eval和 new Function)
- 【JavaScript】JS最简单的二级折叠菜单的实现方法(完整实例)
- Js(JavaScript)或LigerUi中,弹出是或否的选择框示例!(confirm用法示例)
- 26dwr - DWR中的JavaScript(创造一个与 Java 对象匹配的 Javascript 对象)
- JavaScript - math.js 数学库,实现 math.add() “数字累加“ 计算总和的操作(例如:循环 N 个整数或小数,然后再循环内 “+=“ 叠加算数)适用于Vue等全部前端项目
- 全面了解JavaScript语言
- 【前端灵魂脚本语言JavaScript④】——JS中函数的使用
- javascript实现java的map对象,js实现new map()
- javascript 在js文件中获取路径
- 【JavaScript】关于js的一些理解
- 【JavaScript】javascript常用的东西
- javascript widget ui mvc
- 《众妙之门——JavaScript与jQuery技术精粹》——2.3 该怎样构造复查请求?
- 《JavaScript设计模式》——第1章 灵活的语言——JavaScript 1.1入职第一天
- 《JavaScript设计模式》——10.6 数据适配
- JS教程之为什么你不应该在 JavaScript 中使用参数,这就是为什么
- Java学习-063-Jsoup 请求页面 Content-Type 解析失败:org.jsoup.UnsupportedMimeTypeException: Unhandled content type. Must be text/*, application/xml, or application/xhtml+xml . Mimetype=application/javascript
- JS: javascript 点击事件执行两次js问题 ,解决jquery绑定click事件出现点击一次执行两次问题
- JavaScript_JS判断客户端是否是iOS或者Android
- Quo JS多种触摸手势轻量级JavaScript库
- JavaScript黑客是这样窃取比特币的,Vue开发者不用担心!
- JavaScript入门:002—JS代码放置的位置
- JavaScript浏览器对象
- js 手机端触发事事件、javascript手机端/移动端触发事件
- JavaScript HTML DOM removeChild删除子元素
- JavaScript 取消默认事件、阻止事件冒泡的方法
- 深入理解JavaScript系列(18):面向对象编程之ECMAScript实现(推荐)