5.2. 証明書署名リクエストの作成


Red Hat Certificate System Planning、Installation、and Deployment Guide (Common Criteria Edition)』 の 『CMC を使用した登録』 セクションで説明されているように、CMCRequest ユーティリティーは PKCS #10 および CRMF 形式の証明書署名要求(CSR)を受け入れます。
Red Hat Certificate System は、以下のユーティリティーを使用した CSR の作成をサポートします。
  • certutil: PKCS #10 リクエストの作成に対応します。
  • PKCS10Client: PKCS #10 リクエストの作成に対応します。
  • CRMFPopClient: CRMF 要求の作成をサポートします。
次のセクションでは、これらのユーティリティーを機能豊富な登録プロファイルフレームワークで使用する方法の例をいくつか示します。

5.2.1. certutil を使用した CSR の作成

本セクションでは、certutil ユーティリティーを使用して CSR を作成する方法を説明します。
certutil の使用の詳細は、以下を参照してください。
  • certutil(1) の man ページ
  • certutil --help コマンドの出力

5.2.1.1. certutil を使用した EC キーで CSR の作成

以下の手順は、certutil ユーティリティーを使用して Elliptic Curve(EC) キーペアと CSR を作成する方法を示しています。
  1. 証明書が要求されるユーザーまたはエンティティーの証明書データベースディレクトリーに移動します。以下に例を示します。
    $ cd /user_or_entity_database_directory/
  2. バイナリー CSR を作成し、これを /user_or_entity_database_directory/request.csr ファイルに保存します。
    $ certutil -d . -R -k ec -q nistp256 -s "CN=subject_name" -o /user_or_entity_database_directory/request-bin.csr
    プロンプトが表示されたら、必要な NSS データベースのパスワードを入力します。
    パラメーターの詳細は、certutil(1) の man ページを参照してください。
  3. 作成したバイナリー形式の CSR を PEM 形式に変換します。
    $ BtoA /user_or_entity_database_directory/request-bin.csr /user_or_entity_database_directory/request.csr
  4. 必要に応じて、CSR ファイルが正しいことを確認します。
    $ cat /user_or_entity_database_directory/request.csr
    
    MIICbTCCAVUCAQAwKDEQMA4GA1UEChMHRXhhbXBsZTEUMBIGA1UEAxMLZXhhbXBs
    ...
    
    これは、PKCS#10 PEM 証明書要求です。
  5. 次の手順については、「CMC 登録プロセス」 を参照してください。ただし、証明書要求の作成に関する手順はスキップしてください。

5.2.1.2. certutil を使用したユーザー定義拡張による CSR の作成

以下の手順は、certutil ユーティリティーを使用してユーザー定義の拡張で CSR を作成する方法を示しています。
登録要求は、CA で定義された登録プロファイルにより制限されることに注意してください。???を参照してください。
  1. 証明書が要求されるユーザーまたはエンティティーの証明書データベースディレクトリーに移動します。以下に例を示します。
    $ cd /user_or_entity_database_directory/
  2. ユーザー定義の Extended Key Usage 拡張とユーザー定義の Key Usage 拡張で CSR を作成し、これを /user_or_entity_database_directory/request.csr ファイルに保存します。
    $ certutil -d . -R -k rsa -g 1024 -s "CN=subject_name" --keyUsage keyEncipherment,dataEncipherment,critical --extKeyUsage timeStamp,msTrustListSign,critical -a -o /user_or_entity_database_directory/request.csr
    プロンプトが表示されたら、必要な NSS データベースのパスワードを入力します。
    パラメーターの詳細は、certutil(1) の man ページを参照してください。
  3. 必要に応じて、CSR ファイルが正しいことを確認します。
    $ cat /user_or_entity_database_directory/request.csr
    Certificate request generated by Netscape certutil
    Phone: (not specified)
    
    Common Name: user 4-2-1-2
    Email: (not specified)
    Organization: (not specified)
    State: (not specified)
    Country: (not specified)
    これは、PKCS#10 PEM 証明書要求です。
  4. 次の手順については、「CMC 登録プロセス」 を参照してください。ただし、証明書要求の作成に関する手順はスキップしてください。
    注記
    CSR からヘッダー情報を削除します。

5.2.2. PKCS10Client を使用した CSR の作成

本セクションでは、PKCS10Client ユーティリティーを使用して CSR を作成する方法を説明します。
PKCS10Client の使用に関する詳細は、以下を参照してください。
  • PKCS10Client(1) の man ページ
  • PKCS10Client --help コマンドの出力

5.2.2.1. PKCS10Client を使用した CSR の作成

以下の手順では、PKCS10Client ユーティリティーを使用して Elliptic Curve (EC) キーペアと CSR を作成する方法を説明します。
  1. 証明書が要求されるユーザーまたはエンティティーの証明書データベースディレクトリーに移動します。以下に例を示します。
    $ cd /user_or_entity_database_directory/
  2. CSR を作成し、これを /user_or_entity_database_directory/request.csr ファイルに保存します。
    $ PKCS10Client -d . -p NSS_password -a ec -c nistp256 -o /user_or_entity_database_directory/example.csr -n "CN=subject_name"
    パラメーターの詳細は、PKCS10Client(1) の man ページを参照してください。
  3. 必要に応じて、CSR ファイルが正しいことを確認します。
    $ cat /user_or_entity_database_directory/example.csr
    -----BEGIN CERTIFICATE REQUEST-----
    MIICzzCCAbcCAQAwgYkx
    ...
    -----END CERTIFICATE REQUEST-----

5.2.2.2. PKCS10Client を使用した SharedSecret ベースの CMC の CSR の作成

以下の手順では、PKCS10Client ユーティリティーを使用して、SharedSecret ベースの CMC 用の RSA 鍵ペアと CSR を作成する方法を説明します。これは、デフォルトでは caFullCMCSharedTokenCert プロファイルおよび caECFullCMCSharedTokenCert プロファイルによって処理される CMC 共有 Secret 認証方法にのみ使用します。
  1. 証明書が要求されるユーザーまたはエンティティーの証明書データベースディレクトリーに移動します。以下に例を示します。
    $ cd /user_or_entity_database_directory/
  2. CSR を作成し、これを /user_or_entity_database_directory/request.csr ファイルに保存します。
    $ PKCS10Client -d . -p NSS_password -o /user_or_entity_database_directory/example.csr -y true -n "CN=subject_name"
    パラメーターの詳細は、PKCS10Client(1) の man ページを参照してください。
  3. 必要に応じて、CSR ファイルが正しいことを確認します。
    $ cat /user_or_entity_database_directory/example.csr
    -----BEGIN CERTIFICATE REQUEST-----
    MIICzzCCAbcCAQAwgYkx
    ...
    -----END CERTIFICATE REQUEST-----

5.2.3. CRMFPopClient を使用した CSR の作成

Certificate Request Message Format (CRMF) は、CMC で受け入れられている CSR 形式であり、主要なアーカイブ情報を要求に安全に埋め込むことができます。
本セクションでは、CRMFPopClient ユーティリティーを使用して CSR を作成する方法を説明します。
CRMFPopClient の使用に関する詳細は、CRMFPopClient(1) の man ページを参照してください。

5.2.3.1. CRMFPopClient を使用したキー Archival を持つ CSR の作成

以下の手順では、CRMFPopClient ユーティリティーを使用して RSA キーペアと、鍵アーカイブオプションで CSR を作成する方法を説明します。
  1. 証明書が要求されるユーザーまたはエンティティーの証明書データベースディレクトリーに移動します。以下に例を示します。
    $ cd /user_or_entity_database_directory/
  2. KRA トランスポート証明書を取得します。
    $ pki ca-cert-find --name "DRM Transport Certificate"
        ---------------
        1 entries found
        ---------------
          Serial Number: 0x7
          Subject DN: CN=DRM Transport Certificate,O=EXAMPLE
          Status: VALID
          Type: X.509 version 3
          Key A    lgorithm: PKCS #1 RSA with 2048-bit key
          Not Valid Before: Thu Oct 22 18:26:11 CEST 2015
          Not Valid After: Wed Oct 11 18:26:11 CEST 2017
          Issued On: Thu Oct 22 18:26:11 CEST 2015
          Issued By: caadmin
        ----------------------------
        Number of entries returned 1
  3. KRA トランスポート証明書をエクスポートします。
    $ pki ca-cert-show 0x7 --output kra.transport
  4. CSR を作成し、これを /user_or_entity_database_directory/request.csr ファイルに保存します。
    $ CRMFPopClient -d . -p password -n "cn=subject_name" -q POP_SUCCESS -b kra.transport -w "AES/CBC/PKCS5Padding" -v -o /user_or_entity_database_directory/example.csr
    Elliptic Curve (EC) キーペアと CSR を作成するには、-a ec -t false オプションをコマンドに渡します。
    パラメーターの詳細は、CRMFPopClient(1) の man ページを参照してください。
  5. 必要に応じて、CSR ファイルが正しいことを確認します。
    $ cat /user_or_entity_database_directory/example.csr
    -----BEGIN CERTIFICATE REQUEST-----
    MIICzzCCAbcCAQAwgYkx
    ...
    -----END CERTIFICATE REQUEST-----

5.2.3.2. CRMFPopClient を使用した SharedSecret ベースの CMC の CSR の作成

以下の手順では、CRMFPopClient ユーティリティーを使用して、SharedSecret ベースの CMC 用の RSA 鍵ペアと CSR を作成する方法を説明します。これは、デフォルトでは caFullCMCSharedTokenCert プロファイルおよび caECFullCMCSharedTokenCert プロファイルによって処理される CMC 共有 Secret 認証方法にのみ使用します。
  1. 証明書が要求されるユーザーまたはエンティティーの証明書データベースディレクトリーに移動します。以下に例を示します。
    $ cd /user_or_entity_database_directory/
  2. KRA トランスポート証明書を取得します。
    $ pki ca-cert-find --name "DRM Transport Certificate"
        ---------------
        1 entries found
        ---------------
          Serial Number: 0x7
          Subject DN: CN=DRM Transport Certificate,O=EXAMPLE
          Status: VALID
          Type: X.509 version 3
          Key A    lgorithm: PKCS #1 RSA with 2048-bit key
          Not Valid Before: Thu Oct 22 18:26:11 CEST 2015
          Not Valid After: Wed Oct 11 18:26:11 CEST 2017
          Issued On: Thu Oct 22 18:26:11 CEST 2015
          Issued By: caadmin
        ----------------------------
        Number of entries returned 1
  3. KRA トランスポート証明書をエクスポートします。
    $ pki ca-cert-show 0x7 --output kra.transport
  4. CSR を作成し、これを /user_or_entity_database_directory/request.csr ファイルに保存します。
    $ CRMFPopClient -d . -p password -n "cn=subject_name" -q POP_SUCCESS -b kra.transport -w "AES/CBC/PKCS5Padding" -y -v -o /user_or_entity_database_directory/example.csr
    EC キーペアと CSR を作成するには、コマンドに -a ec -t false オプションを渡します。
    パラメーターの詳細は、CRMFPopClient --help コマンドの出力を参照してください。
  5. 必要に応じて、CSR ファイルが正しいことを確認します。
    $ cat /user_or_entity_database_directory/example.csr
    -----BEGIN CERTIFICATE REQUEST-----
    MIICzzCCAbcCAQAwgYkx
    ...
    -----END CERTIFICATE REQUEST-----
Red Hat logoGithubredditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

Red Hat ドキュメントについて

Red Hat をお使いのお客様が、信頼できるコンテンツが含まれている製品やサービスを活用することで、イノベーションを行い、目標を達成できるようにします。 最新の更新を見る.

多様性を受け入れるオープンソースの強化

Red Hat では、コード、ドキュメント、Web プロパティーにおける配慮に欠ける用語の置き換えに取り組んでいます。このような変更は、段階的に実施される予定です。詳細情報: Red Hat ブログ.

会社概要

Red Hat は、企業がコアとなるデータセンターからネットワークエッジに至るまで、各種プラットフォームや環境全体で作業を簡素化できるように、強化されたソリューションを提供しています。

Theme

© 2026 Red Hat
トップに戻る