6

ご存知のように、公開鍵は公開指数と係数で構成されています。

私の質問は:

RSAの公開指数と係数からDER/PEM証明書を生成する方法は?</ p>

事前にどうもありがとうございました。

4

1 に答える 1

5

公開指数とモジュラスを使用すると、次のような結果を得ることができます。

-----BEGIN PUBLIC KEY-----
MIGGAoGAfHlcdrcuOK6C02rbGR3SgV/ZJ2wnTiFBguh5FHduoB6LcZz49LIC/KcIiH/TckK8GxQd
oJ7wHCPBpNiumrlC6caj/C8jO/HZ3cb12Wuk4gUuJq1lg5+HTv4KRJ9pFeEFQqS6X+BTztY+EoRx
uc8MlLXS4PUeouwd9Ios2K0Y5/sCASU=
-----END PUBLIC KEY-----

とはいえ、通常、DER/PEM ファイルは秘密鍵を保持するために使用され、公開鍵しかない場合は秘密指数を取得することはできません。ただし、上記があなたが探しているものである場合は、私に知らせてください。モジュラス/公開指数からそれを取得する方法に関する詳細な手順を投稿できます!

編集:これが私がそれを行う方法です:

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

$modulus = new Math_BigInteger($modulusBinaryString, 256);
$exponent = new Math_BigInteger($exponentBinaryString, 256);

$rsa = new Crypt_RSA();
$rsa->modulus = $modulus;
$rsa->exponent = $exponent;
$rsa->publicExponent = $exponent;
$rsa->k = strlen($rsa->modulus->toBytes());

echo $rsa->getPublicKey(CRYPT_RSA_PRIVATE_FORMAT_PKCS1);
?>

純粋な PHP RSA 実装である phpseclibを使用しています。

于 2011-05-12T04:03:50.060 に答える