公開鍵および秘密鍵は、暗号化アルゴリズムを使用することによって生成される鍵ペアを構成する。 キーペアは、非対称暗号化に使用されます。 公開鍵は、セッションを暗号化し、デジタル署名を検証するために使用され、そのペアの秘密鍵は、セッションデータを復号化するために使用される。 これにより、データ伝送のセキュリティが確保される。 公開鍵は公開され、そのペアの秘密鍵は、鍵ペアを作成するユーザに秘密である。
暗号化アルゴリズムを使用することによって生成される鍵ペアは、世界中で一意である。 キーペアのキーを使用してデータを暗号化する場合、データはキーペアの他のキーを使用してのみ復号できます。 たとえば、公開鍵を使用して暗号化されたデータは、そのペアの秘密鍵を使用することによってのみ復号化することができる。 秘密鍵を使用して暗号化されたデータは、ペアの公開鍵を使用してのみ復号できます。
SSL証明書のしくみ
SSL証明書は、キーペアを使用してデータを暗号化および復号化する公開キー暗号化を採用しています。 各ユーザーは、復号化と署名のために誰にも開示されない秘密鍵を作成します。 ユーザはまた、公開鍵を作成し、暗号化および署名検証のためにその鍵をユーザのグループに開示する。
鍵の所有者のみが秘密鍵を使用して文書を暗号化することができ、それによってデジタル署名が生成される。
SSL証明書は、認証局 (CA) によってデジタル署名されたドキュメントです。 文書は、公開鍵および公開鍵の所有者に関する情報を含む。 証明書には、公開鍵、証明書名、およびCAによって提供されるデジタル署名が含まれている必要があります。 デジタル証明書は、特定の期間のみ有効です。
プライベートキーの詳細については、Certificate Management Serviceは秘密鍵をどのように保護しますか?
プライベートキーの作成
証明書管理サービスには、秘密鍵の長さと、秘密鍵の作成に使用する暗号化アルゴリズムに関する次の要件があります。
- Rivest-Shamir-Adleman (RSA) アルゴリズムを使用する必要があります。
- 秘密鍵は少なくとも2,048ビットの長さでなければならない。
次のいずれかの方法を使用して、秘密鍵を作成できます。
- OpenSSLを使用した秘密鍵の生成
- OpenSSLの最新インストールパッケージは、OpenSSL公式Webサイト (OpenSSL) からダウンロードできます。 説明 OpenSSLのバージョンは1.0.1g以降である必要があります。
- OpenSSLをインストールしたら、コマンドラインで
openssl genrsa -out myprivate.pem 2048
コマンドを実行して秘密鍵ファイルを生成します。 秘密鍵ファイルの名前はmyprivate.pemです。 秘密鍵の長さは2,048ビットである。
- OpenSSLの最新インストールパッケージは、OpenSSL公式Webサイト (OpenSSL) からダウンロードできます。
- Keytoolを使用した秘密鍵の生成とエクスポート
Keytoolは、JDKに付属するキー管理ツールです。 Keytoolでは、証明書用のJKS形式のキーストアファイルを作成できます。 Keytoolを入手するには、Java公式Webサイト (Java Downloads) からJDKをダウンロードします。
既定では、Keytoolを使用して作成された公開鍵と秘密鍵はエクスポートできません。 からのみ秘密鍵をエクスポートできます。. キーストアファイルが作成されます。 からプライベートキーをエクスポートする方法の詳細については、. キーストアファイルを参照してください。証明書の形式を変換するにはどうすればよいですか?
エクスポートされたファイルでは、秘密鍵は次のコード行で囲まれます:----- BEGIN RSA private key ----- ...... ----- END RSAプライベートキー -----
または----- プライベートキーを開始 ----- ...... ----- プライベートキーを終了 -----
説明 秘密鍵は秘密にしておくことをお勧めします。 秘密鍵が失われたり破損したりすると、ペアの公開鍵やデジタル証明書を使用できなくなります。