ISmimeCapability::Initialize 方法 (certenroll.h)

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

语法

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

参数

[in] pObjectId

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

[in] BitCount

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

返回值

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

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

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

注解

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

OID 密钥长度 说明
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。

要求

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

另请参阅

ISmimeCapabilities

ISmimeCapability

IX509ExtensionSmimeCapabilities