ISmimeCapability::Initialize 方法(certenroll.h)

Initialize 方法从对称加密算法对象标识符(OID)和可选密钥长度初始化对象。

Syntax

HRESULT Initialize(
  [in] IObjectId *pObjectId,
  [in] LONG      BitCount
);

参数

[in] pObjectId

指向表示 OID 的 IObjectId 接口的指针。

[in] BitCount

包含对称密钥的位长度的 LONG 变量。

返回值

如果函数成功,该函数将返回 S_OK

如果函数失败,它将返回指示错误的 HRESULT 值。 可能的值包括但不限于下表中的值。 有关常见错误代码的列表,请参阅 通用 HRESULT 值

返回代码/值 Description
CERTSRV_E_PROPERTY_EMPTY
IObjectId 指针为 NULL

注解

证书注册 API 支持以下对称加密算法。 只有 RC2RC4 算法具有可指定的可变密钥长度。

OID 密钥长度 Description
XCN_OID_OIWSEC_desCBC1.3.14.3.2.7 56 密钥大小是 DES CBC 算法的 56 位。 无需指定此值。
XCN_OID_RSA_DES_EDE3_CBC1.2.840.113549.3.7 168 密钥大小是 3DES CBC 算法的 168 位。 无需指定此值。
XCN_OID_RSA_RC2CBC1.2.840.113549.3.2 40 到 128 RC4 是变量键算法。 公共值为 40、64 和 128 位。
XCN_OID_RSA_RC41.2.840.113549.3.4 40 到 128 RC4 是变量键算法。 公共值为 40、64 和 128 位。
XCN_OID_RSA_SMIMEalgCMS3DESwrap1.2.840.113549.1.9.16.3.6 168 MMS 数据加密标准 (DES)密钥包装算法的密钥大小为 168 位。 无需指定此值。
XCN_OID_RSA_SMIMEalgCMSRC2wrap1.2.840.113549.1.9.16.3.7 128 MMS RC2 密钥包装算法的密钥大小为 128 位。 无需指定此值。
XCN_OID_NIST_AES128_CBC2.16.840.1.101.3.4.1.2 128 密钥大小由 OID 隐含。 无需指定此值。
XCN_OID_NIST_AES192_CBC2.16.840.1.101.3.4.1.22 192 密钥大小由 OID 隐含。 无需指定此值。
XCN_OID_NIST_AES256_CBC2.16.840.1.101.3.4.1.42 256 密钥大小由 OID 隐含。 无需指定此值。
XCN_OID_NIST_AES128_WRAP2.16.840.1.101.3.4.1.5 128 密钥大小由 OID 隐含。 无需指定此值。
XCN_OID_NIST_AES192_WRAP2.16.840.1.101.3.4.1.25 192 密钥大小由 OID 隐含。 无需指定此值。
XCN_OID_NIST_AES256_WRAP2.16.840.1.101.3.4.1.45 256 密钥大小由 OID 隐含。 无需指定此值。
 

为 RC2 和 RC4 算法指定的密钥长度必须与客户端使用的加密提供程序或提供程序支持的密钥长度一致。 有关详细信息,请参阅 ICspInformation。 可以通过调用 BitCount 属性来检索位长度,并且可以通过调用 ObjectId 属性来检索算法 OID。

要求

Requirement 价值
最低支持的客户端 Windows Vista [仅限桌面应用]
支持的最低服务器 Windows Server 2008 [仅限桌面应用]
目标平台 Windows操作系统
Header certenroll.h
DLL CertEnroll.dll

另请参阅

ISmimeCapabilities

ISmimeCapability

IX509ExtensionSmimeCapabilities