SignerTimeStampEx3 函数
SignerTimeStampEx3 函数标记指定的主题,并支持在多个签名上设置时间戳。
注意
此函数没有关联的头文件或导入库。 若要调用此函数,必须创建用户定义的头文件,并使用 LoadLibrary 和 GetProcAddress 函数动态链接到 Mssign32.dll。
语法
HRESULT WINAPI SignerTimeStampEx3(
_In_ DWORD dwFlags,
_In_ DWORD dwIndex,
_In_ SIGNER_SUBJECT_INFO *pSubjectInfo,
_In_ PCWSTR pwszHttpTimeStamp,
_In_ PCWSTR pszAlgorithmOid,
_In_opt_ PCRYPT_ATTRIBUTES psRequest,
_In_opt_ PVOID pSipData,
_Out_ SIGNER_CONTEXT **ppSignerContext,
_In_opt_ PCERT_STRONG_SIGN_PARA pCryptoPolicy,
_Reserved_ PVOID pReserved
);
参数
-
dwFlags [in]
-
指定要生成的时间戳类型的标志。 此参数的取值可为下列值之一: 这些值是互斥的。
值 含义 SIGNER_TIMESTAMP_AUTHENTICODE 指定验证码时间戳。
注意: 验证码不再是首选的时间戳类型。 将来可能会删除对 Authenticode 时间戳的支持。 建议改用 RFC 3161。- SIGNER_TIMESTAMP_RFC3161
指定符合 RFC 3161 的时间戳。 -
dwIndex [in]
-
指定要向其添加时间戳的签名的序列号。 如果此值为零 (0) ,则外部签名将带有时间戳。
-
pSubjectInfo [in]
-
表示要加时间戳的主题 的SIGNER_SUBJECT_INFO 结构的地址。
-
pwszHttpTimeStamp [in]
-
包含时间戳服务器的 URL 的以 null 结尾的 Unicode 字符串的地址。
-
pszAlgorithmOid [in]
-
用于执行符合 RFC 3161 的时间戳的哈希算法。 对于 Authenticode 时间戳,将忽略此参数。
-
psRequest [in, optional]
-
可选。 包含添加到时间戳请求的其他属性的 CRYPT_ATTRIBUTES 结构的地址。
此参数是可选的,如果未包含此参数,可为 NULL 。
-
pSipData [in, optional]
-
可选。 一个 32 位值,作为附加数据传递给 主题接口包 (SIP) 函数。 此参数的格式和内容由 SIP 提供程序定义。
此参数是可选的,如果未包含此参数,可为 NULL 。
-
ppSignerContext [out]
-
可选。 指向包含已签名 BLOB 的 SIGNER_CONTEXT 结构的指针的地址。 使用完 SIGNER_CONTEXT 结构后,通过调用 SignerFreeSignerContext 函数将其释放。
-
pCryptoPolicy [in, optional]
-
如果存在,则为指向CERT_STRONG_SIGN_PARA 结构的指针,该结构包含用于检查强签名的参数。 时间戳必须通过此加密策略。
-
pReserved
-
保留。 此值必须为 NULL。
返回值
如果函数成功,该函数将返回S_OK。
如果函数失败,它将返回指示错误的 HRESULT 值。 此函数返回的可能错误代码包括但不限于以下内容。 有关常见错误代码的列表,请参阅 常见 HRESULT 值。
返回代码 | 说明 |
---|---|
|
对于以下情况,可能会返回此错误:
|
要求
要求 | 值 |
---|---|
最低受支持的客户端 |
Windows 8 [仅限桌面应用] |
最低受支持的服务器 |
Windows Server 2012 [仅限桌面应用] |
DLL |
|
另请参阅