PHP开发过程中AES加密解密问题 js前端AES加密,PHP解密
来源:互联网 发布:九分裤 知乎 鞋子 编辑:程序博客网 时间:2024/05/23 23:21
因开发需求,需要通过前端js加密传输数据,通过各种度娘搜索最后采用了AES方式,但是发现有的是有代码没文件,有的是测试解密出现乱码,现在将自己最后采用的方式总结一下。
首先就是关于所引用的AES加密解密包的js文件,最后自己使用的文件地址为:http://download.csdn.net/detail/zhang517614202/9033319
个人测试文件包地址:http://download.csdn.net/detail/phplittleboy/9783261
加密解密过程中的向量和秘钥必须保持一致,而且必须为16位(亲测必须为16位)
代码示例:
JS加密代码:
<!DOCTYPE html>
<html>
<head>
<title>加密测试</title>
<script src="./rollups/aes.js"></script>
<script src="./rollups/md5.js"></script>
<script src="./components/pad-zeropadding.js"></script>
<script src="./jquery.min.js"></script>
<meta charset="utf-8" />
</head>
<body>
加密结果:<p style="color:red;" id='end'></p>
<script>
var key = CryptoJS.enc.Latin1.parse('1234567890654321'); //秘钥 16位
var iv = CryptoJS.enc.Latin1.parse('1234567890123456'); //向量 16位
var data = "AES加密测试"; //要加密的数据
var encrypted = CryptoJS.AES.encrypt(data, key, { iv: iv, mode: CryptoJS.mode.CBC, padding: CryptoJS.pad.ZeroPadding });
$("#end").text(encrypted);
//加密结果为:NRhLlhis3QLXcpzGv8S1NA==
</script>
</body>
</html>
PHP解密代码:
<?php
$key = "1234567890654321"; //秘钥 16位
$iv = "1234567890123456"; //向量 16位
$data = "NRhLlhis3QLXcpzGv8S1NA==";
$decrypted = mcrypt_decrypt(MCRYPT_RIJNDAEL_128, $key, base64_decode($data), MCRYPT_MODE_CBC, $iv);
echo "解密结果:<p style='color:blue;'>".$decrypted."</p>";
?>
- PHP开发过程中AES加密解密问题 js前端AES加密,PHP解密
- php AES加密解密
- php aes 加密解密
- JS AES加密与PHP解密
- JS AES加密与PHP解密(转)
- PHP的AES加密解密
- PHP AES加密解密学习
- PHP-AES加密解密算法
- AES/CryptoJS/PHP 加密解密
- PHP AES的加密解密
- AES加密解密(使用php扩展mcrypt实现AES加密)
- PHP AES 加密 解密 实现实例
- android、ios、php之间AES加密解密
- php aes 128 CBC加密、解密函数
- android、ios、php之间AES加密解密
- PHP的AES/RSA加密解密算法
- php,android,ios 之间 AES加密解密
- android、ios、php之间AES加密解密
- JS中Null与Undefined的区别
- 1117. Eddington Number 解析
- java虚拟机随手笔记(2)垃圾收集器与内存分配策略
- 运行时异常和一般异常的区别
- JAVA高并发程序设计学习:Synchronized同步代码块具体使用方法
- PHP开发过程中AES加密解密问题 js前端AES加密,PHP解密
- cygwin下通过ndk交叉编译Android openCV 此博文包含图片
- 设置HTML和JSP页面不缓存
- blog b
- CentOS7下解决yum install mysql-server没有可用包的问题
- 近5年133个Java面试问题列表
- Tomcat Server处理一个http请求的过程
- linux 安装mysql
- 工业大数据漫谈5:工业大数据案例(上)