有沒有辦法在不使用 3rd 方庫的情況下將 RSA PEM 公鑰轉換為 XML。
-----BEGIN PUBLIC KEY-----
MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDEDtIRT57TJAfmub2RsIM32jdo
8ijsds/u1fpY6hwtkC01/LFJkNTXqSwvpaO5tp86o0SlzBHdF0WxPtsKqdc8F7kQ
uHm7hUTLX0zPGRdGCsy9q/PIGlVGAFTBSVXl grmGGZuS1CHI13L/oulBGENQOxO
8r6D1RyPjt6z0BAndQIDAQAB
-----END PUBLIC KEY-----
輸出應該是這種格式
<RSAKeyValue><Modulus>xA7SEU e0yQH5rm9kbCDN9o3aPIo7HbP7tX6WOocLZAtNfyxSZDU16ksL6WjubafOqNEpcwR3RdFsT7bCqnXPBe5ELh5u4VEy19MzxkXRgrMvavzyBpVRgBUwUlV5foK5hhmbktQhyNdy/6LpQRhDUDsTvK g9Ucj47es9AQJ3U=</Modulus><Exponent>AQAB</Exponent></RSAKeyValue>
我試圖實作這個
$publicKey = -----BEGIN PUBLIC KEY-----
MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDEDtIRT57TJAfmub2RsIM32jdo
8ijsds/u1fpY6hwtkC01/LFJkNTXqSwvpaO5tp86o0SlzBHdF0WxPtsKqdc8F7kQ
uHm7hUTLX0zPGRdGCsy9q/PIGlVGAFTBSVXl grmGGZuS1CHI13L/oulBGENQOxO
8r6D1RyPjt6z0BAndQIDAQAB
-----END PUBLIC KEY-----;
$this->load->dbutil();
$this->output->set_content_type('text/xml');
$dom = new DOMDocument("1.0");
$root = $dom->createElement("publicKey");
$dom->appendChild($root);
$marker = $dom->createElement("marker");
$root->appendChild($marker);
echo $dom->saveXML();
誰能知道答案。提前致謝
uj5u.com熱心網友回復:
密碼學是復雜的數學,我們 99% 的人都無法理解核心。所以它不僅僅是一個簡單的 XML。
不要嘗試對已知和已解決的問題實施您自己的解決方案。
使用經過驗證的庫
例如phpseclib
use phpseclib3\Crypt\RSA;
class Home extends BaseController
{
public function index()
{
$key = RSA::load(file_get_contents('key.pem'));
echo $key->toString("XML"); //this gives you Modulus/Exponent XML string
}
}
轉載請註明出處,本文鏈接:https://www.uj5u.com/qiye/406039.html
標籤:
上一篇:名稱更改時應重置計數
下一篇:資料表查詢中顯示的錯誤
