溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

php加密 亂碼怎么辦

發(fā)布時(shí)間:2020-11-20 11:30:38 來源:億速云 閱讀:132 作者:小新 欄目:編程語言

這篇文章主要介紹php加密 亂碼怎么辦,文中介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們一定要看完!

php加密亂碼的解決解決辦法:首先對(duì)密文進(jìn)行MD5加密;然后通過base64加密來避免亂碼,代碼語句為“$bs_test = base64_encode($test); ”。

在最近的項(xiàng)目當(dāng)中,是把原來的功能封裝一層弄成接口給第三方調(diào)用,其中就接觸到了弄簽名加密這一塊,用的是RES加密,思路是用公鑰和POST參數(shù)拼接成字符串再進(jìn)行公鑰加密,但是因RES加密對(duì)密文是有要求的,有長度限制的。POST數(shù)據(jù)過長會(huì)導(dǎo)致密文數(shù)據(jù)過長,從而解密失敗,因此我們解決這個(gè)問題的思路是對(duì)密文進(jìn)行MD5加密,然后把加密后的數(shù)據(jù)進(jìn)行RES加密,但是RES加密過的數(shù)據(jù)也有可能因?yàn)榫幋a問題導(dǎo)致亂碼,因此我們還需要進(jìn)行base64加密來避免亂碼。

簡單的代碼展示如下:

/*
*$rsa_pub為RES公鑰
*
*/$secret = md5($querystr . $api_secret); 
//組成密文
openssl_public_encrypt($secret ,$test, $rsa_pub); //公鑰加密  
$bs_test = base64_encode($test);  //進(jìn)行base64加密

以上是php加密 亂碼怎么辦的所有內(nèi)容,感謝各位的閱讀!希望分享的內(nèi)容對(duì)大家有幫助,更多相關(guān)知識(shí),歡迎關(guān)注億速云行業(yè)資訊頻道!

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請(qǐng)聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI