//退款的加密信息
$req_info = $refund_notify_info['req_info'];
$api_key = config('api_key');
// 对加密信息进行解密,需要用到商户秘钥
$req_info_xml = openssl_decrypt(base64_decode($req_info), 'aes-256-ecb',md5($api_key),OPENSSL_RAW_DATA);
$req_info_data = $wechat->xmlToArray($req_info_xml);
在做微信支付退款时候,在notify 中返回的信息中有一个req_info 的字段是加密的,按照 下面官网的说明:
(1)对加密串A做base64解码,得到加密串B
(2)对商户key做md5,得到32位小写key* ( key设置路径:微信商户平台(pay.weixin.qq.com)-->账户设置-->API安全-->密钥设置 )
(3)用key*对加密串B做AES-256-ECB解密(PKCS7Padding)