证书和消息编码类型

许多函数都需要证书或 消息编码类型。 此编码类型是 DWORD,可能同时包含证书和消息编码类型。 证书编码类型存储在低序字中。 消息编码类型存储在高序字中。 某些函数或结构字段只需要其中一种编码类型,但始终可以同时指定这两种编码类型。 有关指定这两种编码类型的示例,请参阅 #includes 和 #defines

以下参数命名约定用于指示所需的编码类型。

名称 注释
dwMsgAndCertEncodingType 这两种编码类型都是必需的。
dwMsgEncodingType 只需要消息编码类型。
dwCertEncodingType 只需要证书编码类型。
dwEncodingType 需要消息或证书编码类型。 如果包含证书编码类型的低序字是非零的,则使用它。 否则,将使用包含消息编码类型的高序单词。 如果两者都指定,则使用低序字中的证书编码类型。

 

下表显示了当前定义的编码类型。

编码类型
CRYPT_ASN_ENCODING 0x00000001
X509_ASN_ENCODING 0x00000001
PKCS_7_ASN_ENCODING 0x00010000