这篇文章介绍了Java脚本语言实现加密与解密详解的方法,文中通过示例代码介绍的非常详细。对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
目前原生射流研究…貌似并没有提供讯息摘要5计算相关的函数方法,只能自己实现或者使用前辈大神写好的。
一、使用crypto.js库进行加密
开源代码库的https://github.com/brix/crypto-js上下载该js。
它可以单独引入所需要加密方式的js;也可以引入一个加密-js.js这个文件,它相当于引入了所有的加密方式。
用法:
脚本类型=' text/JavaScript ' src=' path-to/bower _ components/crypto-js/crypto-js。js '/脚本
脚本类型='文本/javascript '
var encrypted=CryptoJS .AES(.);
var encrypted=CryptoJS .SHA256(.);
/脚本
1、举例:
Hash加密:
//加密实例一
console.log('加密结果一MD5:' CryptoJS .MD5('你好'));
//加密实例二
var pwd=' passwor
console.log('加密结果二Hmac-MD5: ' CryptoJS .HmacMD5('你好,pwd));
AES对称加密:
普通文本加密
//加密
定义变量密文=CryptoJS .AES.encrypt('我的消息','密钥123 ')。toString();
//解密
var bytes=CryptoJS .AES .解密(密文,"密钥123");
var原始文本=字节。tostring(cryptojs。随信附上utf8);
控制台。日志(原文);//'我的消息'
对象加密
var data=[{id: 1},{id: 2}]
//加密
定义变量密文=CryptoJS .AES。加密(JSON。stringify(数据),“密钥123”).toString();
//解密
var bytes=CryptoJS .AES .解密(密文,"密钥123");
var解密数据=JSON。解析(字节。tostring(cryptojs。随信附上utf8));
控制台。日志(解密数据);//[{id: 1},{id: 2}]
Custom Key and IV
var key=cryptojs。随信附上utf8。parse(' aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa ');//密钥
var iv=cryptojs。随信附上utf8。parse(' 1234567812345678 ');
//加密
var encrypted=CryptoJS .AES.encrypt('Message ',key,{ iv:iv });
//解密
var decrypted=CryptoJS .AES .解密(加密,密钥,
{
四:四,
模式:CryptoJS.mode.CBC,
填充:CryptoJS.pad.Pkcs7
});
var原文=解密。tostring(cryptojs。随信附上utf8);
Block Modes and Padding
var key=cryptojs。随信附上utf8。parse(' aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa ');//密钥
var iv=cryptojs。随信附上utf8。parse(' 1234567812345678 ');
var encrypted=CryptoJS .AES.encrypt('Message ',key,
{
四:四,
模式:CryptoJS.mode.CBC,
填充:CryptoJS.pad.Pkcs7
});//返回的是base64格式的密文
2、API
参见:https://cryptojs.gitbook.io/docs/
编码工具:
var words=cryptojs。随信附上base64。parse(' sgvsbg 8 sifdvcmxkiq==');
var base64=cryptojs。随信附上base64。stringify(单词);
var words=cryptojs。随信附上十六进制。parse(' 48656 c 6 c 6 f2c 20576 f 726 c 6421 ');
var hex=cryptojs。随信附上十六进制。stringify(单词);
var words=cryptojs。随信附上utf8。解析(“”);
var utf8=cryptojs。随信附上utf8。stringify(单词);
二、使用JavaScript-MD5库进行加密
开源代码库的https://github.com/blueimp/JavaScript-MD5上下载该js。
举例:
计算给定字符串值的(十六进制编码)MD5hash:
var hash=MD5(' value ')//' 2063 c 1608d 6 E0 BAF 80249 c 42 e2be 5804 '
var v1=md5('{'name ':'嘻嘻嘻嘻嘻嘻嘻嘻嘻,'年龄':22 } ');//56b 21847 ed 32d 96 cf 74077 b 22342 EB
计算给定字符串值和密钥的(十六进制编码的)HMAC-MD5哈希:
var hash=md5('value ',' key ')//' 01433 EFD 5 f 16327 ea4b 31144572 c 67 f 6 '
计算给定字符串值的原始讯息摘要5哈希:
var hash=md5('value ',null,true)
计算给定字符串值和密钥的原始HMAC-MD5哈希:
var hash=md5('value ',' key ',true)
到此这篇关于Java脚本语言实现加密与解密详解的文章就介绍到这了。希望对大家的学习有所帮助,也希望大家多多支持我们。
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。