IX509ExtensionAuthorityKeyIdentifier 接口 (certenroll.h)

使用 IX509ExtensionAuthorityKeyIdentifier 接口可以指定 AuthorityKeyIdentifier 扩展。 当 证书颁发机构 (CA) 具有多个签名证书时,此扩展可用于帮助确定哪个证书颁发机构证书用于对颁发的证书进行签名。 扩展放置在根证书以外的所有证书中。 它具有以下 抽象语法表示法 One (ASN.1) 语法。 扩展值使用 可辨别编码规则 ( DER) 进行编码,并包含在证书请求中。


----------------------------------------------------------------------
-- AuthorityKeyIdentifier 
-- XCN_OID_AUTHORITY_KEY_IDENTIFIER2 (2.5.29.35)
----------------------------------------------------------------------

AuthorityKeyId2 ::= SEQUENCE 
{
   keyIdentifier             [0] IMPLICIT KeyIdentifier OPTIONAL,
   authorityCertIssuer       [1] IMPLICIT GeneralNames OPTIONAL,
   authorityCertSerialNumber [2] IMPLICIT CertificateSerialNumber OPTIONAL
} 

KeyIdentifier ::= OCTETSTRING

默认证书请求行为是仅填充 keyIdentifier 字段。 通常,此值是 CA 签名证书中包含的 公钥 的 20 字节 SHA-1 哈希。 CA 颁发证书时,会将哈希值复制到已颁发证书的 SubjectKeyIdentifier 扩展中。 链式构建软件会搜索可用的 CA 证书,直到它与颁发证书上的 SubjectKeyIdentifier 扩展值与 CA 证书上 AuthorityKeyIdentifier 扩展中的 keyIdentifier 字段匹配。 有关 SubjectKeyIdentifier 扩展的详细信息,请参阅 IX509ExtensionSubjectKeyIdentifier

若要将此扩展对象添加到 PKCS #10 请求或 CMC 请求,必须先将其添加到 IX509Extensions 集合,然后使用该集合初始化 IX509AttributeExtensions 对象。 有关详细信息,请参阅 PKCS #10 扩展CMC 扩展 主题。

继承

IX509ExtensionAuthorityKeyIdentifier 接口继承自 IX509ExtensionIX509ExtensionAuthorityKeyIdentifier 也具有以下类型的成员:

方法

IX509ExtensionAuthorityKeyIdentifier 接口包含以下方法。

 
IX509ExtensionAuthorityKeyIdentifier::get_AuthorityKeyIdentifier

检索包含扩展值的字节数组。 (IX509ExtensionAuthorityKeyIdentifier.get_AuthorityKeyIdentifier)
IX509ExtensionAuthorityKeyIdentifier::InitializeDecode

从包含扩展值的 可辨别编码规则 (DER) 编码的字节数组初始化扩展。 (IX509ExtensionAuthorityKeyIdentifier.InitializeDecode)
IX509ExtensionAuthorityKeyIdentifier::InitializeEncode

从字节数组初始化扩展。

要求

要求
最低受支持的客户端 Windows Vista [仅限桌面应用]
最低受支持的服务器 Windows Server 2008 [仅限桌面应用]
目标平台 Windows
标头 certenroll.h

另请参阅

证书注册 API

扩展

IX509Extension

IX509ExtensionSubjectKeyIdentifier