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 相关文章推荐
Array of country list in PHP with Zend Framework
Oct 17 PHP
关于php程序报date()警告的处理(date_default_timezone_set)
Oct 22 PHP
PHP递归删除目录几个代码实例
Apr 21 PHP
PHP中IP地址与整型数字互相转换详解
Aug 20 PHP
PHP实现通过中文字符比率来判断垃圾评论的方法
Oct 20 PHP
ecshop实现smtp发送邮件
Feb 03 PHP
PHP实现的观察者模式实例
Jun 21 PHP
PHP/ThinkPHP实现批量打包下载文件的方法示例
Jul 31 PHP
PHP堆栈调试操作简单示例
Jun 15 PHP
PHP中“=>
Mar 01 PHP
PHP静态方法和静态属性及常量属性的区别与介绍
Mar 22 PHP
laradock环境docker-compose操作详解
Jul 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写入数据库类代码分享
2011/07/26 PHP
PHP数据流应用的一个简单实例
2012/09/14 PHP
使用php记录用户通过搜索引擎进网站的关键词
2014/02/13 PHP
php递归方法实现无限分类实例代码
2014/02/28 PHP
PHP编译安装中遇到的两个错误和解决方法
2014/08/20 PHP
php中curl和soap方式请求服务超时问题的解决
2018/06/11 PHP
一个加密JavaScript的开源工具PACKER2.0.2
2006/11/04 Javascript
IE浏览器PNG图片透明效果代码
2008/09/02 Javascript
用Javascript同时提交多个Web表单的方法
2009/12/26 Javascript
基于jquery的气泡提示效果
2010/05/31 Javascript
jquery实现心算练习代码
2010/12/06 Javascript
排序算法的javascript实现与讲解(99js手记)
2014/09/28 Javascript
Javascript iframe交互并兼容各种浏览器的解决方法
2016/07/12 Javascript
EasyUI创建对话框的两种方式
2016/08/23 Javascript
JavaScript中双符号的运算详解
2017/03/12 Javascript
详解基于vue-router的动态权限控制实现方案
2017/09/28 Javascript
webpack手动配置React开发环境的步骤
2018/07/02 Javascript
浅谈微信小程序之官方UI框架we-ui使用教程
2018/08/20 Javascript
在vue项目中引入高德地图及其UI组件的方法
2018/09/04 Javascript
纯javascript实现选择框的全选与反选功能
2019/04/08 Javascript
Koa从零搭建到Api实现项目的搭建方法
2019/07/30 Javascript
关于layui 弹出层一闪而过就消失的解决方法
2019/09/09 Javascript
nodeJs的安装与npm全局环境变量的配置详解
2020/01/06 NodeJs
Python操作MongoDB详解及实例
2017/05/18 Python
浅谈python装饰器探究与参数的领取
2017/12/01 Python
对Python3中bytes和HexStr之间的转换详解
2018/12/04 Python
python获取交互式ssh shell的方法
2019/02/14 Python
pyqt 实现为长内容添加滑轮 scrollArea
2019/06/19 Python
利用CSS3的border-radius绘制太极及爱心图案示例
2016/05/17 HTML / CSS
计算机求职信
2013/12/01 职场文书
成龙霸王洗发水广告词
2014/03/14 职场文书
庆六一活动总结
2014/08/29 职场文书
机关领导查摆四风思想汇报
2014/09/13 职场文书
单位授权委托书范本
2014/09/26 职场文书
邀请函怎么写
2015/01/30 职场文书
Python import模块的缓存问题解决方案
2021/06/02 Python