OpenSSL 1.0.1e 2013年2月11日
自己署名証明書の生成:
openssl req -x509 -newkey rsa:1024 -keyout key.pem -out cert.pem -days 365
その過程でPEM パスフレーズ要求されます:
PEM パスフレーズを入力してください:
検証中 - PEM パスフレーズを入力してください:
正常に完了すると、2つのファイルが生成されます。ペムフォーマット:
キー.pem、証明書.pem
秘密鍵(キー.pem)はPKCS#8形式と開始行は次のようになります。
-----暗号化された秘密鍵の開始-----
今、私は証明書と関連する秘密鍵を結合しようとしています。PKCS#12キーストアを保護し、パスワード注 - 私の理解では、これは事実上、パスワード読み取りアクセス中、およびパスフレーズ対応するエントリの秘密鍵:
openssl pkcs12 -export -inkey key.pem -in cert.pem -out keystore.p12
実行時に次のことを尋ねられます。
key.pem のパスフレーズを入力してください:
エクスポート パスワードを入力してください:
確認中 - エクスポート パスワードを入力してください:
しかし、私の理解では、パスフレーズそのまま残しておくべきである秘密鍵現在保管されているのはキーストア.p12ファイル。キーストアの内容を読み取る方法は次のとおりです。
openssl pkcs12 -nodes -info -in keystore.p12
私が得た出力(キーストアを保護することに関するもののみ)は、パスワード):
インポートパスワードを入力してください:
そして、証明書と秘密鍵をPEM形式でリストします。パスフレーズ後者の場合、それが基本的に問題です。PEM パスフレーズもはやそこには秘密鍵何が間違っているのでしょうか、またはこれを修正するにはどうすればいいでしょうか? ありがとうございます。
答え1
何も問題はありません。これが PKCS12 の仕組みです。PKCS12 は、トークン間で証明書チェーンと秘密鍵を安全に転送するための形式です。秘密鍵の保護/暗号化は、「エクスポート パスワードの入力」を求められたときに入力したパスフレーズによって行われます。2 回暗号化された鍵ほど厄介なものはありません。
編集:-nodes
オプションを省略します。これにより、秘密鍵の暗号化がオフになります。