PHP解密支付寶小程序的加密數(shù)據(jù)、手機(jī)號(hào)的示例代碼
1.小程序端代碼示例
my.getPhoneNumber({ success: (res) => { let encryptedData = res.response; my.httpRequest({ url: '你的后端服務(wù)端', data: encryptedData, }); }, fail: (res) => { console.log(res); console.log('getPhoneNumber_fail'); }, });
2.PHP后端解密示例
public static function decryptData($encryptedData, $key = '開(kāi)發(fā)設(shè)置-接口內(nèi)容加密方式-查看-字符串') { $encrys = json_decode($encryptedData, true); $encryptedData = $encrys['response']; $str = base64_decode($encryptedData); $screct_key = base64_decode($key); //設(shè)置全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"}
知識(shí)點(diǎn)擴(kuò)展:
php函數(shù)摘要-加密和解密類
1支付寶小程序手機(jī)號(hào)解密
加密數(shù)據(jù)
{ "response": "EaieI1W9gPK0zClNbA7P0T6svaSYq/1xejihTXNVSH0WyCjBIcP2xOwaAevaYgb4aeQ5NNRQaqbZgVvfJKfaLQ==", "sign": "iSHQH/r3rZiBx7N49SwQNHx2Y0B6OP2ePvhS+T2XKw9+dzt3T1W9T0cHSldFlkczcdPQ05Pi/bEygsZxip6StCNEqse7ou/nXx9QOAVNoBgZfb4bmFJxOl8DYeuF8VKQy+NdxuvRGJFpmVynZtSNy31BfD4663IowMj80/pfnmLJCEKqoS2oHWtGRRM7oIFEdCH5IJKCsq79qxFEPwmQVid2uN0XuL/Rg+lKN9eAbTGcBttVZGaI11vGDEBUq9sNksVJXWUHofszCeD9jGz8pGoNvApRt8Swe2RnVtWcnQ+Zh+G105fPpp3RYNZBSBV9EJJ5la5IEv8KfAwjW7jGFg==" }
解密函數(shù)
/** * 解密 * * 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; }
解密過(guò)程
echo decryptData('EaieI1W9gPK0zClNbA7P0T6svaSYq/1xejihTXNVSH0WyCjBIcP2xOwaAevaYgb4aeQ5NNRQaqbZgVvfJKfaLQ=='); // {"code":"10000","msg":"Success","mobile":"1342XXXXXXX"}
到此這篇關(guān)于PHP解密支付寶小程序的加密數(shù)據(jù),手機(jī)號(hào)的文章就介紹到這了,更多相關(guān)PHP解密支付寶小程序加密數(shù)據(jù)內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
php實(shí)現(xiàn)window平臺(tái)的checkdnsrr函數(shù)
這篇文章主要介紹了php實(shí)現(xiàn)window平臺(tái)的checkdnsrr函數(shù),PHP的自帶checkdnsrr函數(shù)只在linux平臺(tái)有效,本文就模擬出了一個(gè)window下可以使用的checkdnsrr函數(shù),需要的朋友可以參考下2015-05-05PHP與服務(wù)器文件系統(tǒng)的簡(jiǎn)單交互
這篇文章主要介紹了PHP與服務(wù)器文件系統(tǒng)的簡(jiǎn)單交互的相關(guān)資料,非常不錯(cuò),具有參考借鑒價(jià)值,感興趣的朋友一起看看吧2016-10-10Thinkphp3.2.3分頁(yè)使用實(shí)例解析
這篇文章主要介紹了Thinkphp3.2.3分頁(yè)使用實(shí)例,采取調(diào)用公共函數(shù)中的函數(shù)方法實(shí)現(xiàn)分頁(yè),感興趣的小伙伴們可以參考一下2016-07-07postman的安裝與使用方法(模擬Get和Post請(qǐng)求)
今天小編就為大家分享一篇postman的安裝與使用方法(模擬Get和Post請(qǐng)求),具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2018-08-08php獲取目標(biāo)函數(shù)執(zhí)行時(shí)間示例
這篇文章主要介紹了php獲取目標(biāo)函數(shù)執(zhí)行時(shí)間示例,需要的朋友可以參考下2014-03-03