PHP aes (ecb)解密后乱码问题


Posted in PHP onJune 22, 2015

内容:abcd
KEY:1234567890123456
加密后base64:T7UT2NQ1AFvR9unjA0wKWA==

function apiDataDecrypt($data, $key='') {
  $data = base64_decode($data);
  $pad = 16 - (strlen($data) % 16);
  $padData = $data . str_repeat(chr($pad), $pad);
  return mcrypt_decrypt(MCRYPT_RIJNDAEL_128, $key,$padData, MCRYPT_MODE_ECB);
}    
}

直接附上解决方案吧

$key = '1234567890123456';
$content = 'T7UT2NQ1AFvR9unjA0wKWA==';
$desStr = decryptString($content,$key);
echo($desStr);

function decryptString($str,$key) {
  $str = base64_decode($str);
  $str = mcrypt_decrypt(MCRYPT_RIJNDAEL_128, $key, $str, MCRYPT_MODE_ECB);  
  $block = mcrypt_get_block_size('rijndael_128', 'ecb');
  $pad = ord($str[($len = strlen($str)) - 1]);
  $len = strlen($str);
  $pad = ord($str[$len-1]);  
  return substr($str, 0, strlen($str) - $pad);
}

以上所述就是本文的全部内容了,希望大家能够喜欢。

PHP 相关文章推荐
php访问查询mysql数据的三种方法
Oct 09 PHP
Windows2003 下 MySQL 数据库每天自动备份
Dec 21 PHP
用PHP的ob_start() 控制您的浏览器cache
Aug 03 PHP
PHP similar_text 字符串的相似性比较函数
May 26 PHP
由php的call_user_func传reference引发的思考
Jul 23 PHP
将二维数组转为一维数组的2种方法
May 26 PHP
php实现的简单美国商品税计算函数
Jul 13 PHP
10个超级有用的PHP代码片段果断收藏
Sep 23 PHP
php上传大文件设置方法
Apr 14 PHP
简单概括PHP的字符串中单引号与双引号的区别
May 07 PHP
PHP连接SQL Server的方法分析【基于thinkPHP5.1框架】
May 06 PHP
php查看一个变量的占用内存的实例代码
Mar 29 PHP
php实现对象克隆的方法
Jun 20 #PHP
php判断对象是派生自哪个类的方法
Jun 20 #PHP
php类的扩展和继承用法实例
Jun 20 #PHP
php传值赋值和传地址赋值用法实例分析
Jun 20 #PHP
php多重接口的实现方法
Jun 20 #PHP
php单一接口的实现方法
Jun 20 #PHP
php文件读取方法实例分析
Jun 20 #PHP
You might like
令PHP初学者头疼十四条问题大总结
2008/11/12 PHP
PHP 分页原理分析,大家可以看看
2009/12/21 PHP
PHP简洁函数小结
2011/08/12 PHP
PHP 年龄计算函数(精确到天)
2012/06/07 PHP
PHP 只允许指定IP访问(允许*号通配符过滤IP)
2014/07/08 PHP
php成功操作redis cluster集群的实例教程
2019/01/13 PHP
dtree 网页树状菜单及传递对象集合到js内,动态生成节点
2012/04/14 Javascript
跟我学Nodejs(三)--- Node.js模块
2014/05/25 NodeJs
input标签内容改变的触发事件介绍
2014/06/18 Javascript
jQuery的deferred对象详解
2014/11/12 Javascript
ECMAScript6中Set/WeakSet详解
2015/06/12 Javascript
laydate.js日期时间选择插件
2017/01/04 Javascript
JavaScript使用delete删除数组元素用法示例【数组长度不变】
2017/01/17 Javascript
JQuery判断正整数整理小结
2017/08/21 jQuery
JavaScript设计模式之缓存代理模式原理与简单用法示例
2018/08/07 Javascript
vue引入微信sdk 实现分享朋友圈获取地理位置功能
2019/07/04 Javascript
js实现选项卡效果
2020/03/07 Javascript
javascript实现移动端红包雨页面
2020/06/23 Javascript
js实现限定区域范围拖拉拽效果
2020/11/20 Javascript
[04:04]显微镜下的DOTA2第六期——电影级别的华丽团战
2014/06/20 DOTA
[33:19]完美世界DOTA2联赛PWL S2 PXG vs InkIce 第一场 11.26
2020/11/30 DOTA
python2.7删除文件夹和删除文件代码实例
2013/12/18 Python
Python 中字符串拼接的多种方法
2018/07/30 Python
对python读取zip压缩文件里面的csv数据实例详解
2019/02/08 Python
如何在django中添加日志功能
2020/02/06 Python
python GUI库图形界面开发之PyQt5 Qt Designer工具(Qt设计师)详细使用方法及Designer ui文件转py文件方法
2020/02/26 Python
浅谈python多线程和多线程变量共享问题介绍
2020/04/17 Python
如何在网站上添加谷歌定位信息
2016/04/16 HTML / CSS
HTML5 通过Vedio标签实现视频循环播放的示例代码
2020/08/05 HTML / CSS
Original Penguin美国官网:布拉德皮特、强尼德普喜爱的服装品牌
2016/10/25 全球购物
Servlet方面面试题
2016/09/28 面试题
领导的自我鉴定
2013/12/28 职场文书
教师先进事迹材料
2014/12/16 职场文书
建筑工地资料员岗位职责
2015/04/13 职场文书
2019年员工旷工保证书!
2019/06/28 职场文书
Python调用腾讯API实现人脸身份证比对功能
2022/04/04 Python