web-dev-qa-db-ja.com

PKCS#7(P7B)証明書チェーン内のエンドエンティティ証明書を区別する

PKCS#7(P7B)証明書チェーン内のエンドエンティティ証明書を区別する標準的で明確な方法はありますか? PKCS#7標準では、チェーンで証明書を注文するときに順序を指定していないと思いますが、ほとんどのツールは、(bkwまたはfwdの)署名順序で証明書を順序付けします。そして、私はエンド証明書が異なる所有者/発行者CNを持っていることを知っています(ルートは両方とも同じです)、エンドと中間の証明書の場合、両方が異なる所有者/発行者(右?)どうも!

1
user1172173

CA証明書(V3)には常にBasic Constraints証明書拡張。ここで、isCA attriuteはTrueに設定されています。エンドエンティティ証明書の場合、この拡張を省略するか、isCA attrbitueをFalseに設定して拡張を含めます。基本的な制約( RFC 5280§4.2.1.9 )は、CA証明書とエンドエンティティ証明書を区別する最も信頼できる方法です。

次に、Windows証明書ビューアのCA証明書の基本制約拡張の例を示します。

enter image description here

windows Certificate Viewerのエンドエンティティ証明書の基本制約拡張の例: enter image description here

1
Crypt32