PHP解密支付宝小程序的加密数据、手机号的示例代码


Posted in PHP onFebruary 26, 2021

1.小程序端代码示例

my.getPhoneNumber({
 success: (res) => {
 let encryptedData = res.response;
 my.httpRequest({
  url: '你的后端服务端',
  data: encryptedData,
 });
 },
 fail: (res) => {
 console.log(res);
 console.log('getPhoneNumber_fail');
 },
});

2.PHP后端解密示例

public static function decryptData($encryptedData, $key = '开发设置-接口内容加密方式-查看-字符串')
 {
 $encrys = json_decode($encryptedData, true);
 $encryptedData = $encrys['response'];
 $str = base64_decode($encryptedData);
 $screct_key = base64_decode($key);

 //设置全0的IV
 $iv_size = mcrypt_get_iv_size(MCRYPT_RIJNDAEL_128, MCRYPT_MODE_CBC);
 $iv = str_repeat("\0", $iv_size);

 $decrypt_str = mcrypt_decrypt(MCRYPT_RIJNDAEL_128, $screct_key, $str, MCRYPT_MODE_CBC, $iv);
 $decrypt_str = self::stripPKSC7Padding($decrypt_str);
 return $decrypt_str;
 }

 public static function stripPKSC7Padding($source)
 {
 $char = substr($source, -1);
 $num = ord($char);
 if ($num == 62) return $source;
 $source = substr($source, 0, -$num);
 return $source;
 }

3.解密返回

{"code":"10000","msg":"Success","mobile":"185xxxxx111"}

知识点扩展:

php函数摘要-加密和解密类

1支付宝小程序手机号解密

加密数据

{
 "response": "EaieI1W9gPK0zClNbA7P0T6svaSYq/1xejihTXNVSH0WyCjBIcP2xOwaAevaYgb4aeQ5NNRQaqbZgVvfJKfaLQ==",
 "sign": "iSHQH/r3rZiBx7N49SwQNHx2Y0B6OP2ePvhS+T2XKw9+dzt3T1W9T0cHSldFlkczcdPQ05Pi/bEygsZxip6StCNEqse7ou/nXx9QOAVNoBgZfb4bmFJxOl8DYeuF8VKQy+NdxuvRGJFpmVynZtSNy31BfD4663IowMj80/pfnmLJCEKqoS2oHWtGRRM7oIFEdCH5IJKCsq79qxFEPwmQVid2uN0XuL/Rg+lKN9eAbTGcBttVZGaI11vGDEBUq9sNksVJXWUHofszCeD9jGz8pGoNvApRt8Swe2RnVtWcnQ+Zh+G105fPpp3RYNZBSBV9EJJ5la5IEv8KfAwjW7jGFg=="
}

解密函数

/**
 * 解密
 *
 * return mix
 */
function decryptData(string $encrypted_data)
{
 $key = env('EAS');
 $aesKey=base64_decode($key);
 $iv = 0;
 $aesIV=base64_decode($iv);
 $aesCipher=base64_decode($encrypted_data);
 $result=openssl_decrypt( $aesCipher, "AES-128-CBC", $aesKey, 1, $aesIV);
 return $result;
}

解密过程

echo decryptData('EaieI1W9gPK0zClNbA7P0T6svaSYq/1xejihTXNVSH0WyCjBIcP2xOwaAevaYgb4aeQ5NNRQaqbZgVvfJKfaLQ==');

// {"code":"10000","msg":"Success","mobile":"1342XXXXXXX"}

到此这篇关于PHP解密支付宝小程序的加密数据,手机号的文章就介绍到这了,更多相关PHP解密支付宝小程序加密数据内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

PHP 相关文章推荐
通过ICQ网关发送手机短信的PHP源程序
Oct 09 PHP
php+AJAX传送中文会导致乱码的问题的解决方法
Sep 08 PHP
初学CAKEPHP 基础教程
Nov 02 PHP
php小型企业库存管理系统的设计与实现代码
May 16 PHP
php 无法加载mcrypt.dll的解决办法
Apr 03 PHP
关于php循环跳出的问题
Jul 01 PHP
分析PHP中单双引号的误区和双引号小隐患
Jul 19 PHP
PHP实现QQ快速登录的方法
Sep 28 PHP
PHP使用pdo实现事务处理操作示例
Sep 05 PHP
php微信公众号开发之秒杀
Oct 20 PHP
php设计模式之职责链模式实例分析【星际争霸游戏案例】
Mar 27 PHP
PHP $O00OO0=urldecode & eval 解密,记一次商业源码的去后门
Sep 13 PHP
php中get_object_vars()在数组的实例用法
Feb 22 #PHP
MacOS下PHP7.1升级到PHP7.4.15的方法
Feb 22 #PHP
关于PhpStorm设置点击编辑文件自动定位源文件的实现方式
Dec 30 #PHP
Thinkphp5+Redis实现商品秒杀代码实例讲解
Dec 29 #PHP
PHP序列化和反序列化深度剖析实例讲解
Dec 29 #PHP
PHP实现简单注册登录系统
Dec 28 #PHP
php的lavarel框架中join和orWhere的用法
Dec 28 #PHP
You might like
php绘制一条直线的方法
2015/01/24 PHP
PHP永久登录、记住我功能实现方法和安全做法
2015/04/27 PHP
PHP检测数据类型的几种方法(总结)
2017/03/04 PHP
php pdo操作数据库示例
2017/03/10 PHP
PHP后期静态绑定之self::限制实例分析
2018/12/21 PHP
php+iframe 实现上传文件功能示例
2020/03/04 PHP
javascript 跳转代码集合
2009/12/03 Javascript
JS getMonth()日期函数的值域是0-11
2010/02/15 Javascript
15个款优秀的 jQuery 图片特效插件推荐
2011/11/21 Javascript
js判断生效时间不得大于失效时间的思路及代码
2013/04/23 Javascript
javascript相等运算符与等同运算符详细介绍
2013/11/09 Javascript
jQuery左右滚动支持图片放大缩略图图片轮播代码分享
2015/08/26 Javascript
js实现String.Fomat的实例代码
2016/09/02 Javascript
从零学习node.js之详解异步控制工具async(八)
2017/02/27 Javascript
JS动态添加的div点击跳转到另一页面实现代码
2017/09/30 Javascript
详解Vue基于 Nuxt.js 实现服务端渲染(SSR)
2018/04/05 Javascript
java和js实现的洗牌小程序
2019/09/30 Javascript
vue视频播放插件vue-video-player的具体使用方法
2019/11/08 Javascript
Python文件的读写和异常代码示例
2017/10/31 Python
python用户评论标签匹配的解决方法
2018/05/31 Python
Python对CSV、Excel、txt、dat文件的处理
2018/09/18 Python
python把ipynb文件转换成pdf文件过程详解
2019/07/09 Python
Python线程协作threading.Condition实现过程解析
2020/03/12 Python
Zipadee-Zip襁褓过渡毯:Sleeping Baby
2018/12/30 全球购物
琳达·法罗眼镜英国官网:Linda Farrow英国
2021/01/19 全球购物
物资采购方案
2014/06/12 职场文书
领导班子民主生活会整改措施(工商局)
2014/09/21 职场文书
2014年幼儿园老师工作总结
2014/12/05 职场文书
评职称个人总结
2015/03/05 职场文书
物业项目经理岗位职责
2015/04/01 职场文书
看雷锋电影观后感
2015/06/10 职场文书
聘任合同书
2015/09/21 职场文书
《观潮》教学反思
2016/02/17 职场文书
2019年最新借条范本!
2019/07/08 职场文书
解决SpringBoot跨域的三种方式
2021/06/26 Java/Android
python中的mysql数据库LIKE操作符详解
2021/07/01 MySQL