前端加密传输 crypto-js AES 加密和解密
2024-08-25 08:07:22
配置:
<!DOCTYPE html>
<html lang="en"> <head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0">
<title>Document</title>
</head> <body>
<script src="https://cdnjs.cloudflare.com/ajax/libs/crypto-js/3.1.9-1/crypto-js.js"></script>
<script>
function getAesString(data, key, iv) { //加密
var key = CryptoJS.enc.Utf8.parse(key);
var iv = CryptoJS.enc.Utf8.parse(iv);
var encrypted = CryptoJS.AES.encrypt(data, key, {
iv: iv,
mode: CryptoJS.mode.CBC,
padding: CryptoJS.pad.Pkcs7
});
return encrypted.toString(); //返回的是base64格式的密文
} function getDAesString(encrypted, key, iv) { //解密
var key = CryptoJS.enc.Utf8.parse(key);
var iv = CryptoJS.enc.Utf8.parse(iv);
var decrypted = CryptoJS.AES.decrypt(encrypted, key, {
iv: iv,
mode: CryptoJS.mode.CBC,
padding: CryptoJS.pad.Pkcs7
});
return decrypted.toString(CryptoJS.enc.Utf8);
} function getAES(data) { //加密
var key = '12345678910'; //密钥
var iv = '12345678910';
var encrypted = getAesString(data, key, iv); //密文
var encrypted1 = CryptoJS.enc.Utf8.parse(encrypted);
return encrypted;
} function getDAes(data) { //解密
var key = '12345678910'; //密钥
var iv = '12345678910'; //密钥偏移量
var decryptedStr = getDAesString(data, key, iv);
return decryptedStr;
} var AES = getAES('hello');
var AFTERAES = getDAes(AES);
console.log('加密后:' + AES );
console.log('解密后:' + AFTERAES ); </script>
</body> </html>
最新文章
- 如何防止通过IP地址访问Tomcat管理页面
- 一天一个mysql函数(一) cast &;&; convert
- Python:itertools模块
- JNI的替代者—使用JNA访问Java外部功能接口
- Android 它们的定义View它BounceProgressBar
- 转: oracle 存储过程 执行动态 实现sql
- 【转载】rem自适应布局-移动端自适应必备
- 运行java web项目时报错:Several ports (8005, 8080, 8009) required
- SQLMap入门之在Windows上安装SQLMap
- Thymeleaf利用layout.html文件生成页面布局框架
- 如何正确的升级node版本【已解决】
- canvas 绘画随机点
- 姿态角(Euler角):yaw pitch roll
- [转载]Request、Request.Form和Request.QueryString的区别
- Django_ KindEditor 插件使用
- CENTOS7更换YUM源为163源
- SpringMVC-----使用Maven创建Web项目
- 关闭IE 对剪切板访问的提示
- Java--------------Windows下Redis的安装使用
- hadoop从调整GC到关键Counter计算原理分析
热门文章
- 企业IT管理员IE11升级指南【11】—— 通过SCCM 2012和WSUS部署Internet Explorer 11
- 【RL-TCPnet网络教程】第36章	 RL-TCPnet之FTP服务器
- FFmpeg 结构体学习(八):FFMPEG中重要结构体之间的关系
- [Swift]LeetCode374. 猜数字大小 | Guess Number Higher or Lower
- 使用C# (.NET Core) 实现抽象工厂设计模式 (Abstract Pattern)
- BBS论坛(四)
- MyBatis 分页插件 PageHelper 使用
- Solr 06 - Solr中配置使用IK分词器 (配置schema.xml)
- kNN算法:K最近邻(kNN,k-NearestNeighbor)分类算法
- Linux 虚拟内存