微信加密用户数据对称解密函数版
微信加密用户数据对称解密函数版<?php
/**
* @Author: MaXian
* @Date: 2021-06-02 09:46:11
* @Last Modified by: MaXian
* @Last Modified time: 2021-06-02 09:46:11
*/
// 微信加密用户数据 对称解密
function wxDecryptData($sessionKey, $encryptedData, $iv)
{
global $api;
$appid = '你的APPID';
if (strlen($sessionKey) != 24) {
$api->load('fun')->json(41001, [], 'encodingAesKey非法');
}
$aesKey = base64_decode($sessionKey);
if (strlen($iv) != 24) {
$api->load('fun')->json(41002, [], '初始向量非法');
}
$aesIV = base64_decode($iv);
$aesCipher = base64_decode($encryptedData);
$result = openssl_decrypt($aesCipher, "AES-128-CBC", $aesKey, 1, $aesIV);
$dataObj = json_decode($result);
if ($dataObj == NULL) {
/*$api->load('fun')->json(41003, [
'sessionKey' => $sessionKey,
'encryptedData' => $encryptedData,
'iv' => $iv,
], 'AES解密失败1');*/
$api->load('fun')->json(41003-1, [], '获取用户数据失败,请重新试'); // aes 解密失败
}
if ($dataObj->watermark->appid != $appid) {
$api->load('fun')->json(41003-2, [], '用户数据校验失败,请重新试'); // aes 解密失败
}
return $result;
}
页:
[1]