JavaScript实现加密与解密详解
这篇文章介绍了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脚本语言实现加密与解密详解的文章就介绍到这了。希望对大家的学习有所帮助,也希望大家多多支持我们。
原文地址:,,JavaScript实现加密与解密详解_菜鸟教程之家
本文来自网络,不代表菜鸟教程之家立场,转载请注明出处。
JavaScript实现加密与解密详解相关推荐
- C#实现RSA加密和解密详解
C#实现RSA加密和解密详解 原文:C#实现RSA加密和解密详解 RSA加密解密源码: using System; using System.Collections.Generic; using Sy ...
- 加密、解密详解及CA的实现
加密.解密详解及CA的实现 推荐 转载nmshuishui的文章,文章链接 http://blog.51cto.com/nmshuishui/1370917?utm_source=tuicool&am ...
- Hutool-crypto 加密、解密详解!
1. 介绍 在Java开发的过程中,很多场景下都需要加密解密. 比如对敏感数据的加密,对配置文件信息的加密,通信数据的加密等等. 今天介绍的是Hutool工具包中的加密模块 crypto. 2. 加密 ...
- linux 下的加密和解密详解
我们在网上的发送的邮件时明文的,可以被截获,被我们的服务商获得,甚至可以被搜索出来,这时一件很恐怖的事情,如果是一般的嘘寒问暖的信息也就罢了.若是私信就危险了,所以呢,加密就很有必要了!! 什么是加/ ...
- C#高级--加密解密详解
C#高级–加密解密详解 零.文章目录 一.名词介绍 1.加密 是以某种特殊的算法改变原有的信息数据,以另外一种形式呈现,这里有几个名词:加密之前的信息数据可以理解为原数据,原文:加密之后的数据信息可以 ...
- Python爬虫JS解密详解,学会直接破解80%的网站(一)!!!
文章目录 1.网页查看 2.有道翻译简单实现源码 3.JS解密(详解) 4.python实现JS解密后的完整代码 4.1.实现效果 5.JS解密后完整代码升级版 5.1.实现效果 CSDN独家福利降临 ...
- TLS/SSL加解密详解(一)
TLS/SSL加解密详解(一) 本章节主要介绍TLS/SSL的历史 TLS/SSL的来源 SSL(Secure Socket Layer)安全套接层协议 最初由网景公司(Netscape)研发,后被I ...
- python 录制web视频_Python django框架 web端视频加密的实例详解
视频加密流程图: 后端获取保利威的视频播放授权token,提供接口api给前端 参考文档:http://dev.polyv.net/2019/videoproduct/v-api/v-api-play ...
- JavaScript 身份证号有效验证详解及实例代码
这篇文章主要介绍了JavaScript 身份证号有效验证详解及实例代码的相关资料,需要的朋友可以参考下 JavaScript验证身份证号 1 2 3 4 5 6 7 8 9 10 11 12 13 1 ...
最新文章
- aapt2 资源 compile 过程
- 流媒体的未来——视频技术如何演变
- 伦巴时间步的动作要领_军训动作要领已到,请签收
- 如何使用此功能强大的工具将Wemo添加到Homekit
- bzoj 4393 Usaco Fruit Feast
- java面试题常见的坑_java那些年踩过面试题的坑,你是否依旧记忆犹新!
- r语言集合补集_R语言之数据处理(二)
- .net core5
- QML 自定义鼠标光标
- matlab调和均值滤波_均值滤波和中值滤波的MATLAB实现
- Vue项目中使用echarts教程
- 台式计算机可以发射无线网络,台式机怎么样发射无线信号
- html验证座机号码_JS校验手机号 座机 邮箱 微信号
- 关于SaaS平台中应对多租户模式的设计
- 微信小程序的各种功能
- (一)利用Wikipedia中文语料训练词向量word2vec——获取Wikipedia简体中文语料库
- python画残差图_seaborn回归图---回归模型图Implot、线性回归图regplot、线性回归残差图residplot...
- output delay含义
- 42步进电机转速力矩曲线_步进电机的力矩与转速
- 机器学习三剑客之Matplotlab