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 相关文章推荐
使用数据库保存session的方法
Oct 09 PHP
PHP企业级应用之常见缓存技术篇
Jan 27 PHP
php中获取关键词及所属来源搜索引擎名称的代码
Feb 15 PHP
给初学者的30条PHP最佳实践(荒野无灯)
Aug 02 PHP
PHP中return 和 exit 、break和contiue 区别与用法
Apr 09 PHP
PHP解析html类库simple_html_dom的转码bug
May 22 PHP
set_exception_handler函数在ThinkPHP中的用法
Oct 31 PHP
PHP实现对图片的反色处理功能【测试可用】
Feb 01 PHP
Laravel如何使用Redis共享Session
Feb 23 PHP
PHP从零开始打造自己的MVC框架之路由类实现方法分析
Jun 03 PHP
PHP的new static和new self的区别与使用
Nov 27 PHP
yii框架结合charjs实现统计30天数据的方法
Apr 04 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获取网络上文件
2006/10/09 PHP
967 个函式
2006/10/09 PHP
php学习之 循环结构实现代码
2011/06/09 PHP
两千行代码的PHP学习笔记汇总
2014/10/05 PHP
php禁止浏览器使用缓存页面的方法
2014/11/07 PHP
PHP动态柱状图实现方法
2015/03/30 PHP
php使用FFmpeg接口获取视频的播放时长、码率、缩略图以及创建时间
2016/11/07 PHP
thinkPHP5项目中实现QQ第三方登录功能
2017/10/20 PHP
浅析PHP类的反射来实现依赖注入过程
2018/02/06 PHP
laravel框架创建授权策略实例分析
2019/11/22 PHP
jsp网页搜索结果中实现选中一行使其高亮
2014/02/17 Javascript
JS库之Three.js 简易入门教程(详解之一)
2017/09/13 Javascript
vue、react等单页面项目应该这样子部署到服务器
2018/01/03 Javascript
Vuejs 单文件组件实例详解
2018/02/09 Javascript
在vue里面设置全局变量或数据的方法
2018/03/09 Javascript
NodeJs生成sitemap站点地图的方法示例
2019/06/11 NodeJs
JavaScript实现身份证验证代码实例
2019/08/26 Javascript
vue实现图片懒加载的方法分析
2020/02/05 Javascript
解决vue+router路由跳转不起作用的一项原因
2020/07/19 Javascript
[51:53]DOTA2-DPC中国联赛 正赛 RNG vs Dragon BO3 第二场 1月24日
2021/03/11 DOTA
基于Python os模块常用命令介绍
2017/11/03 Python
python配置grpc环境
2019/01/01 Python
Flask框架学习笔记之路由和反向路由详解【图文与实例】
2019/08/12 Python
Python 3.10 的首个 PEP 诞生,内置类型 zip() 迎来新特性(推荐)
2020/07/03 Python
Python Request类源码实现方法及原理解析
2020/08/17 Python
详解python os.path.exists判断文件或文件夹是否存在
2020/11/16 Python
Revolution Beauty美国官网:英国知名化妆品网站
2018/07/23 全球购物
材料加工工程求职信
2014/02/19 职场文书
诚信贷款承诺书
2014/05/30 职场文书
我的中国梦演讲稿小学篇
2014/08/19 职场文书
2014基建处领导班子“四风”对照检查材料思想汇报
2014/10/04 职场文书
学生逃课万能检讨书2000字
2015/02/17 职场文书
现实表现证明材料
2015/06/19 职场文书
2016年党风廉政建设承诺书
2016/03/25 职场文书
PHP实现创建以太坊钱包转账等功能
2021/04/21 PHP
Kubernetes部署实例并配置Deployment、网络映射、副本集
2022/04/01 Servers