web-dev-qa-db-ja.com

証明書に複数のチェーンと複数の自己署名ルートを含めることはできますか?

次のMSFTドキュメントにはこの段落があります:

  1. 可能なすべての証明書チェーンは、ローカルにキャッシュされた証明書を使用して構築されます。自己署名証明書で終わる証明書チェーンがない場合、CryptoAPIは可能な限り最適なチェーンを選択し、機関情報アクセス拡張機能で指定されている発行者証明書を取得してチェーンを完成させます。このプロセスは、自己署名証明書へのチェーンが構築されるまで繰り返されます。

  2. 信頼されたルートストアの自己署名証明書で終わるチェーンごとに、失効チェックが実行されます。

これは、単一の証明書が複数の「チェーン」を持つことができることを意味しますか?これはどのように見え、どこで使用されますか?

7

複数のルートは次の場合に作成されます

これは、CA階層内のすべての証明書に適用されます。

物事をより面白くするために、失効リスト自体(CRL/OCSP)は署名されており、独自のPKIを持っている場合があります。また、独自のキーのセットを持っている場合もあります。 (検証を検証するには?)

言い換えると、

  • CRL、Delta、およびOCSP応答の検証中に検出されたチェーンも、検出されたCAルートにカウントされます。 (OCSP検証はid-pkix-ocsp-nocheckで抑制できることに注意してください)

CAアーキテクチャは、チェーン構築プロセスに影響を与えます。個別の証明書チェーンが有効であると見なされる前に、チェーンエンジンは、検証中の証明書で可能なすべてのチェーンを構築します。エンドエンティティ証明書が新しくセットアップされたCAによって生成された場合、証明書チェーンは簡単です。ただし、更新されたCAによって発行された証明書、または発行CAと別のCAの間に相互認証が存在する場合、複数の証明書チェーンが存在する可能性があります。

証明書チェーンのグラフ全体が作成され、チェーンの「品質」の順に並べられます。特定の最終証明書の最高品質のチェーンは、デフォルトのチェーンとして呼び出し側アプリケーションに返されます。

以下は、シングル、N層、クロス、およびブリッジPKIでの検証プロセスの図です

単一CA

Single CA

N Tier

N-Tier

Cross Trust CA

Cross CA

ブリッジCA

Bridge CA

PKIトポロジと証明書の更新に関する詳細は、この記事の最後にあります

8