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 相关文章推荐
php&java(一)
Oct 09 PHP
杏林同学录(九)
Oct 09 PHP
php表单转换textarea换行符的方法
Sep 10 PHP
thinkphp的静态缓存用法分析
Nov 29 PHP
php操作xml入门之xml标签的属性分析
Jan 23 PHP
带你了解PHP7 性能翻倍的关键
Nov 19 PHP
php中array_unshift()修改数组key注意事项分析
May 16 PHP
thinkPHP内置字符串截取函数用法详解
Nov 15 PHP
php实现简单加入购物车功能
Mar 07 PHP
PHP+ajax实现获取新闻数据简单示例
May 08 PHP
PHP获取HTTP body内容的方法
Dec 31 PHP
PHP 时间处理类Carbon
May 20 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
PHP5.3.1 不再支持ISAPI
2010/01/08 PHP
PHP 强制下载文件代码
2010/10/24 PHP
PHP的cURL库功能简介 抓取网页、POST数据及其他
2011/04/07 PHP
php eval函数用法总结
2012/10/31 PHP
PHP 利用Mail_MimeDecode类提取邮件信息示例
2014/01/26 PHP
javascript去掉前后空格的实例
2013/11/07 Javascript
Jquery实现的一种常用高亮效果示例代码
2014/01/28 Javascript
Jquery倒计时源码分享
2014/05/16 Javascript
JS控制按钮10秒钟后可用的方法
2015/12/22 Javascript
noty ? jQuery通知插件全面解析
2016/05/18 Javascript
javascript实现鼠标点击页面 移动DIV
2016/12/02 Javascript
简单谈谈require模块化jquery和angular的问题
2017/06/23 jQuery
js+html制作简单日历的方法
2017/06/27 Javascript
vue使用better-scroll实现下拉刷新、上拉加载
2018/11/23 Javascript
详解javascript设计模式三:代理模式
2019/03/25 Javascript
node省市区三级数据性能测评实例分析
2019/11/06 Javascript
Javascript异步编程async实现过程详解
2020/04/02 Javascript
[01:35]辉夜杯战队访谈宣传片—iG.V
2015/12/25 DOTA
python开发之str.format()用法实例分析
2016/02/22 Python
Python判断值是否在list或set中的性能对比分析
2016/04/16 Python
利用Python中SocketServer 实现客户端与服务器间非阻塞通信
2016/12/15 Python
Python 对象中的数据类型
2017/05/13 Python
对python抓取需要登录网站数据的方法详解
2018/05/21 Python
Django+JS 实现点击头像即可更改头像的方法示例
2018/12/26 Python
Python中的正则表达式与JSON数据交换格式
2019/07/03 Python
python爬虫 urllib模块发起post请求过程解析
2019/08/20 Python
python 已知三条边求三角形的角度案例
2020/04/12 Python
Pycharm中使用git进行合作开发的教程详解
2020/11/17 Python
Python如何telnet到网络设备
2021/02/18 Python
遗嘱继承公证书
2014/04/09 职场文书
大学生学习新党章思想汇报
2014/10/25 职场文书
酒店工程部经理岗位职责
2015/04/09 职场文书
幸福来敲门观后感
2015/06/04 职场文书
关于幸福的感言
2015/08/03 职场文书
Python实战之OpenCV实现猫脸检测
2021/06/26 Python
Python实现科学占卜 让视频自动打码
2022/04/09 Python