1

.pem ファイルと .pub ファイルがあり、次のコマンドを使用して作成しました

openssl genrsa -out temp.pem 1024
openssl rsa -in temp.pem -pubout -out temp.pub

ここで、それらをバイナリであり、秘密鍵と公開鍵の両方を含む 1 つの .pfx ファイルにしたいと考えています。出来ますか?どうやって?(いくつかの openssl コマンドをテストしましたが、ファイルは空でした)。

このコマンドを使用しました

 openssl pkcs12 -export -in temp.pem -inkey temp.pub -out temp.pfx -name "Temp Certificate"

次のエラーが生成されます。

秘密鍵を読み込めません 17880:error:0906D06C:PEM ルーチン:PEM_read_bio:no start line:.\crypto\pem\pem_li bc:703:予期: ANY PRIVATE KEY

4

2 に答える 2

4

-inkey引数には秘密鍵を指定する必要があるため、エラーが発生します。公開鍵ではありません。

OpenSSL の pkcs12 コマンドは、公開鍵と秘密鍵を 1 つのファイルに統合する方法を提供しません。特に、証明書と秘密鍵を 1 つのファイルに統合するために使用されます。上記の場合、あなたが持っているのは証明書ではなく公開鍵です。

マニュアルページから:

-in filename The filename to read certificates and private keys from, standard input by default. They must all be in PEM format. The order doesn't matter but one private key and its corresponding certificate should be present. If additional certificates are present they will also be included in the PKCS#12 file.

1 つの秘密鍵とそれに対応する証明書が存在する必要があることが具体的に述べられていることに注意してください。PKCS#12 ファイルを生成するために通常使用するコマンドは次のとおりです。

openssl pkcs12 -export -in cert.pem -inkey private.key -out file.pfx -name "My Certificate"

于 2013-09-27T14:43:15.980 に答える