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 array的学习笔记
May 16 PHP
PHP导出EXCEL快速开发指南--PHPEXCEL的使用详解
Jun 03 PHP
PHP输出XML到页面的3种方法详解
Jun 06 PHP
php根据操作系统转换文件名大小写的方法
Feb 24 PHP
php类中的各种拦截器用法分析
Nov 03 PHP
php中实现可以返回多个值的函数实例
Mar 21 PHP
DEDECMS首页调用图片集里的多张图片
Jun 05 PHP
PHP多文件上传实例
Jul 09 PHP
分享10段PHP常用代码
Nov 11 PHP
PHP面向对象程序设计之命名空间与自动加载类详解
Dec 02 PHP
PHP如何通过表单直接提交大文件详解
Jan 08 PHP
PHP基于mcript扩展实现对称加密功能示例
Feb 21 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
一个简单的自动发送邮件系统(三)
2006/10/09 PHP
php生成无限栏目树
2017/03/16 PHP
[JS]点出统计器
2020/10/11 Javascript
jQuery(1.6.3) 中css方法对浮动的实现缺陷分析
2011/09/09 Javascript
JS命名空间的另一种实现
2013/08/09 Javascript
jquery向上向下取整适合分页查询
2014/09/06 Javascript
node.js中的fs.link方法使用说明
2014/12/15 Javascript
js操作XML文件的实现方法兼容IE与FireFox
2016/06/25 Javascript
JS跨域交互(jQuery+php)之jsonp使用心得
2016/07/01 Javascript
关于Vue.js一些问题和思考学习笔记(2)
2016/12/02 Javascript
vue中实现滚动加载更多的示例
2017/11/08 Javascript
Vim快速合并行及vim 将文件所有行合并到一行
2017/11/27 Javascript
微信小程序实现留言板功能
2018/11/02 Javascript
微信小程序实现省市区三级地址选择
2020/06/21 Javascript
详解element-ui中form验证杂记
2019/03/04 Javascript
使用Vue 实现滑动验证码功能
2019/06/27 Javascript
vue基于v-charts封装双向条形图的实现代码
2019/12/09 Javascript
Vue 一键清空表单的实现方法
2020/02/07 Javascript
vue 微信分享回调iOS和安卓回调出现错误的解决
2020/09/07 Javascript
[51:26]VP vs VG 2018国际邀请赛小组赛BO2 第二场 8.19
2018/08/21 DOTA
Python中返回字典键的值的values()方法使用
2015/05/22 Python
Python实现复杂对象转JSON的方法示例
2017/06/22 Python
Python3.6+Django2.0以上 xadmin站点的配置和使用教程图解
2019/06/04 Python
pytorch 输出中间层特征的实例
2019/08/17 Python
python3.7将代码打包成exe程序并添加图标的方法
2019/10/11 Python
python构建指数平滑预测模型示例
2019/11/21 Python
Keras构建神经网络踩坑(解决model.predict预测值全为0.0的问题)
2020/07/07 Python
python 决策树算法的实现
2020/10/09 Python
去加拿大的旅行和假期:Canadian Affair
2016/10/25 全球购物
英国女性运动服品牌:Sweaty Betty
2018/11/08 全球购物
法国在线药房:DoctiPharma
2020/10/21 全球购物
机械专业应届生求职信
2013/09/21 职场文书
大学生饮食配送创业计划书
2014/01/04 职场文书
学校勤俭节约倡议书
2015/04/29 职场文书
手把手教你制定暑期学习计划,让你度过充实的暑假
2019/08/22 职场文书
假如给我三天光明:舟逆水而行,人遇挫而达 
2019/10/29 职场文书