下位(中間)CAによって署名された証明書を使用するサーバーがあります。
私のJavaベースのクライアントは、中間またはルートCA証明書をトラストストアに配置する必要があるため、サーバーと通信するときに、そのサーバー証明書を信頼できることがわかります。
トラストストアに中間またはルートCA証明書を置くことになっていますか?
ルートを保護することでセキュリティを強化するために中間CAが使用されていることを知っているので、ルートには何も含めないようにしています。しかし、これがどのように機能するかを正確に理解するのに苦労しています。
私を啓発します :)
一般的に言って、ルート証明書を入れるべきです。モデルは通常、次のように機能します。
ルート証明書を「固定」する(つまり、トラストストアに埋め込む)。
彼らは証明書を検証しますが、信頼ストア内のいくつかの証明書までさかのぼる必要があります。エンド証明書とピン留めされた証明書の間の中間証明書の数は無関係である必要があるため、ルート証明書をピン留めしない理由はありません-少なくともクライアントの視点から。
CAキーが危険にさらされている場合の対処法は、CAを実行する人々にとって大きな懸念事項です。何か悪い場合にクリーンアップを簡単にするために、人々は通常「オフラインルート」を使用します。
ルートCAに下位のCAに署名させてから、ルートCAを取り外し(CAが専用の物理サーバーの場合)、十分に保護されたバックアップディスクでルートの秘密キーを非表示にして、コピーが浮遊していないことを確認します。これにより、ハッカーが秘密鍵を盗むことが非常に困難になります。
中間証明書を使用せずに、日常的な証明書の発行、CRLの発行/ OCSPなどを行います。それらはインターネットに接続されているため、侵害のリスクが高くなります。
中間CAが侵害された場合は、ルートCAを起動し、その中間を取り消し、新しい中間を起動し、偶発的に取り消されたすべての正当な証明書を再発行できます。
その中間者によって署名された証明書を使用していたサーバーは、古い証明書が取り消されるため、新しく発行された証明書をインストールする必要があります。
クライアントはルート証明書を固定しているため、クライアントはまったく影響を受けません。したがって、中間体を交換してもまったく影響はありません。
実験として、ルートCAキーが危険にさらされた場合に実行する必要があることと上記を比較してください。ルートがパブリックブラウザー、vpnクライアント、その他のサーバーなどに組み込まれるまでに数ヶ月から数年かかる可能性があるため、おそらくCAが廃業することを意味します。