web-dev-qa-db-ja.com

opensslを使用して自分のパブリック証明書を作成するにはどうすればよいですか?

私は2つの素数pとqを使用して生成した公開鍵/秘密鍵のペアを持っています。 opensslを使用して証明書に署名し、作成する必要があります。 reqユーティリティを聞いて、manページからこれを書いた。

openssl req -x509 -days 365 -nodes -key inputfile.txt -keyout key.pem -out cert.pem

しかし、inputfile.txtでどのような詳細を指定する必要がありますか?そのための特定の形式はありますか?

3

自己署名証明書を生成するために実行する必要のあるすべてのステップの素晴らしいチュートリアルです。

http://www.akadia.com/services/ssh_test_certificate.html

間違ったパラメーターを使用しています。新しい証明書を生成するときは、2つの入力(要求と秘密鍵)と1つの出力(署名付き証明書)があります。したがって、正しいコマンドは次のようになります。openssl x509 -req -days 365 -in server.csr -signkey server.key -out server.crtここで

  • x509 req:PKI機能を要求しています
  • 365日目:証明書の有効期間
  • in:証明書署名リクエスト
  • signkey:証明書の署名に使用される秘密鍵
  • out:生成された証明書の出力ファイル

お役に立てれば。

3
user1164108

req -x509-newなし)は入力時にCSRを必要とし、CSRを作成したことについて何も言わない。 -keyには「秘密鍵」ファイル(OpenSSLが使用するPKCS#1 CRTフォームでは実際にはキーペアです)が必要ですが、通常は.txt拡張子を使用しません。 -keyoutが入力されている場合、-nodesおよび-keyは使用できません。これらは、reqgeneratesがCSRまたは証明書と一緒に新しい鍵ペアである場合のためのものです。

req -new -x509を使用すると、実際にはキーペアと名前のCSRが生成され、それが自己署名証明書に自動的に変換されます。そのためには、サブジェクトの識別名(通常、Organization、CommonNameなどですが、構成できます)と有効性、およびオプションで、通常は証明書拡張機能を提供する必要があります。ファイル。指定するか、ビルド/パッケージ、コマンドラインオプション、またはその両方の組み合わせに依存するデフォルトを使用できます。

reqおよびそれが参照するx509v3_configのマンページを読んでみましたか?これらの合計15キロバイトに、ここで再入力することを提案しない理由があります。

1