2013-03-31 19 views
0

我擁有公鑰的模數和指數。我可以在php中使用openssl api生成公鑰嗎?我已閱讀http://php.net/manual/en/ref.openssl.php,但似乎沒有將其歸檔的功能。使用openssl庫在php中創建具有現有模數和指數的公鑰PEM文件

如果openssl無法做到這一點(建模與指數的公鑰),我可以使用任何任何選項在PHP做到這一點?

+0

我不是一個PHP專家。但是這種方法並不好。通常建議在一段時間後更改公鑰和私鑰。一般證書有有效期。如果你的密鑰的模數和指數,你有公鑰(這是RSA公鑰的含義)。如果您需要證書,您需要私鑰來生成CSR。 – doptimusprime

回答

1

使用phpseclib, a pure PHP RSA implementation

<?php 
include('Crypt/RSA.php'); 

$rsa = new Crypt_RSA(); 

$rsa->loadKey(array ('e'=>new Math_BigInteger('65537'), 'n'=>new Math_BigInteger('11944573237954459805614520005393273287786384679965238498958830373752732874397055'. 
'98832111464872863171681422024469555089029360351247093972211786644957214280299847'. 
'26868375359168203283442617134197706515425366188396513684446494070223079865755643'. 
'116690165578452542158755074958452695530623055205290232290667934914919'))); 

echo $rsa; 

輸出如下:

-----BEGIN PUBLIC KEY----- 
MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCqGKukO1De7zhZj6+H0qtjTkVx 
wTCpvKe4eCZ0FPqri0cb2JZfXJ/DgYSF6vUpwmJG8wVQZKjeGcjDOL5UlsuusFnc 
CzWBQ7RKNUSesmQRMSGkVb1/3j+skZ6UtW+5u09lHNsj6tQ51s1SPrCBkedbNf0T 
p0GbMJDyR4e9T04ZZwIDAQAB 
-----END PUBLIC KEY----- 
相關問題