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 分页类 扩展代码
Jun 11 PHP
PHP开发需要注意的安全问题
Sep 01 PHP
php _autoload自动加载类与机制分析
Feb 10 PHP
php图像处理函数大全(推荐收藏)
Jul 11 PHP
实现PHP多线程异步请求的3种方法
Jan 17 PHP
php循环创建目录示例分享(php创建多级目录)
Mar 04 PHP
ThinkPHP2.0读取MSSQL提示Incorrect syntax near the keyword 'AS'的解决方法
Jun 25 PHP
ThinkPHP有变量的where条件分页实例
Nov 03 PHP
PHP内核探索之变量
Dec 22 PHP
php实现带读写分离功能的MySQL类完整实例
Jul 28 PHP
php验证码生成器
May 24 PHP
php获取微信openid方法总结
Oct 10 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
Windows下IIS6/Apache2.2.4+MySQL5.2+PHP5.2.1安装配置方法
2007/05/03 PHP
利用discuz实现PHP大文件上传应用实例代码
2008/11/14 PHP
php自定义函数之递归删除文件及目录
2010/08/08 PHP
php socket实现的聊天室代码分享
2014/08/16 PHP
PHP中$_SERVER使用说明
2015/07/05 PHP
PHP使用星号隐藏用户名,手机和邮箱的实现方法
2016/09/22 PHP
CodeIgniter开发实现支付宝接口调用的方法示例
2016/11/14 PHP
php求数组全排列,元素所有组合的方法总结
2017/03/14 PHP
thinkphp中U方法按路由规则生成url的方法
2018/03/12 PHP
Laravel 将数据表的数据导出,并生成seeds种子文件的方法
2019/10/09 PHP
有一段有意思的代码-javascript现实多行信息
2007/08/26 Javascript
13个绚丽的Jquery 界面设计网站推荐
2010/09/28 Javascript
JQuery1.4+ Ajax IE8 内存泄漏问题
2010/10/15 Javascript
jQuery之尺寸调整组件的深入解析
2013/06/19 Javascript
JS简单实现登陆验证附效果图
2013/11/19 Javascript
JS新包管理工具yarn和npm的对比与使用入门
2016/12/09 Javascript
Javascript实现base64的加密解密方法示例
2017/06/27 Javascript
解决vue无法设置滚动位置的问题
2018/10/07 Javascript
nodejs 使用nodejs-websocket模块实现点对点实时通讯
2018/11/28 NodeJs
JS一次前端面试经历记录
2020/03/19 Javascript
[43:24]VG vs Serenity 2018国际邀请赛小组赛BO2 第二场 8.17
2018/08/20 DOTA
python 排列组合之itertools
2013/03/20 Python
Python中的pygal安装和绘制直方图代码分享
2017/12/08 Python
Python中的Django基本命令实例详解
2018/07/15 Python
Python openpyxl读取单元格字体颜色过程解析
2019/09/03 Python
python中栈的原理及实现方法示例
2019/11/27 Python
python实现图像高斯金字塔的示例代码
2020/12/11 Python
白俄罗斯大卖场:21vek.by
2019/07/25 全球购物
员工培训心得体会
2013/12/30 职场文书
医学生职业规划范文
2014/01/05 职场文书
学生党员思想汇报范文
2014/01/09 职场文书
旅行社优秀创业计划书
2014/08/16 职场文书
2015年综治维稳工作总结
2015/04/07 职场文书
药品销售内勤岗位职责
2015/04/13 职场文书
学校元旦晚会开场白
2015/05/29 职场文书
Django migrate报错的解决方案
2021/05/20 Python