公鑰加密 openssl_public_encrypt(): key parameter is not a valid public key


公鑰加密處理報錯, openssl_public_encrypt(): key parameter is not a valid public key

1.開啟open_ssl擴展

2.轉化再加密

下載的公鑰形式類似  '-----BEGIN PUBLIC KEY-----\nMIGTDVGHWDFNADCBiQKBgQ99XZ6WiHxh94IAKTgSOEev\n6tASj3XKVnssChGIZaSvdRXiJshGaR1LNeDbWSDFWE8OjA9sPlwgLJabnP\nWR283fGu7nRm9\/sc4HKRETEF2bj7rcMeEAQAB\n-----END PUBLIC KEY-----'

去掉 \n\/

$str = str_replace(array("\r\n", "\r", "\n"), "", $str);

$this->public_key = 'MIGTDVGHWDFNADCBiQKBgQ99XZ6WiHxh94IAKTgSOEev6tASj3XKVnssChGIZaSvdRXiJshGaR1LNeDbWSDFWE8OjA9sPlwgLJabnPWR283fGu7nRm9sc4HKRETEF2bj7rcMeEAQAB';

再重新拼接  "-----BEGIN PUBLIC KEY-----\n" . wordwrap($this->public_key, 64, "\n", true) . "\n-----END PUBLIC KEY-----"用來加密

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM