Foxit PDF SDK
foxit::pdf::LTVVerifier类 参考
类 foxit::pdf::LTVVerifier 继承关系图:
foxit::Base

Public 类型

enum  TimeType { e_SignatureCreationTime = 0, e_SignatureTSTTime = 1, e_CurrentTime = 2, e_VRICreationTime = 3 }
 时间类型枚举。 更多...
 
enum  VerifyMode { e_VerifyModeAcrobat = 1 }
 验证模式枚举。 更多...
 

Public 成员函数

 LTVVerifier (const PDFDoc &document, bool is_verify_signature, bool use_expired_tst, bool ignore_doc_info, TimeType time_type)
 带参数的构造函数。 更多...
 
 LTVVerifier (const LTVVerifier &other)
 带另一个 LTV 验证器对象的构造函数。 更多...
 
 ~LTVVerifier ()
 析构函数。
 
void AddDSS (const SignatureVerifyResult &signature_verify_result)
 将签名的验证结果(作为 VRI 信息)添加到 DSS 中。 更多...
 
bool IsEmpty () const
 检查当前对象是否为空。 更多...
 
bool operator != (const LTVVerifier &other) const
 不相等运算符。 更多...
 
LTVVerifieroperator= (const LTVVerifier &other)
 赋值运算符。 更多...
 
bool operator== (const LTVVerifier &other) const
 相等运算符。 更多...
 
void SetCertChainResolverCallback (CertChainResolverCallback *callback)
 如果用户想要提供额外证书以完成证书链,请设置自定义的 pdf::CertChainResolverCallback 对象。 更多...
 
void SetRevocationCallback (RevocationCallback *callback)
 设置自定义的 pdf::RevocationCallback 对象。 更多...
 
void SetTrustedCertStoreCallback (TrustedCertStoreCallback *callback)
 如果用户想要信任某些证书,请设置自定义的 pdf::TrustedCertStoreCallback 对象。 更多...
 
void SetVerifyMode (VerifyMode mode)
 设置验证模式以指定要使用的验证过程。 更多...
 
SignatureVerifyResultArray Verify ()
 验证用于构造当前对象的 PDF 文档中的所有签名。 更多...
 
SignatureVerifyResultArray VerifySignature (const Signature &signature)
 验证用于构造当前对象的 PDF 文档中的目标签名。 更多...
 
- Public 成员函数 继承自 foxit::Base
FS_HANDLE Handle () const
 获取当前对象的句柄。 更多...
 

详细描述

LTV 验证器用于在 LTV 工作流中验证签名。 在使用此类验证签名之前,请确保已通过函数 LTVVerifier::SetVerifyMode 设置了验证模式。
Foxit PDF SDK 为 LTV 验证器提供了默认的撤销回调。如果用户想要使用 自定义撤销回调,请参考函数 LTVVerifier::SetRevocationCallback
如果用户想要信任某些证书,请参考函数 LTVVerifier::SetTrustedCertStoreCallback

成员枚举类型说明

◆ TimeType

时间类型枚举。

此枚举的值应单独使用。

枚举值
e_SignatureCreationTime 

使用签名创建时间。

e_SignatureTSTTime 

使用签名时间戳令牌的时间。

e_CurrentTime 

使用当前时间。

e_VRICreationTime 

使用签名的 VRI 字典的创建时间。

注解
VRI 表示“验证相关信息”。

◆ VerifyMode

验证模式枚举。

此枚举的值应单独使用。

枚举值
e_VerifyModeAcrobat 

使用 Acrobat 验证过程。

构造及析构函数说明

◆ LTVVerifier() [1/2]

foxit::pdf::LTVVerifier::LTVVerifier ( const PDFDoc document,
bool  is_verify_signature,
bool  use_expired_tst,
bool  ignore_doc_info,
TimeType  time_type 
)
explicit

带参数的构造函数。

参数
[in]document有效的 PDF 文档对象。
[in]is_verify_signature(仅适用于 LTVVerifier::e_VerifyModeAcrobat) 用于决定在验证签名时是否验证签名有效性。
[in]use_expired_tst(仅适用于 LTVVerifier::e_VerifyModeAcrobat) 用于决定是否使用已过期的 TST 来验证签名。
[in]ignore_doc_info(仅适用于 LTVVerifier::e_VerifyModeAcrobat) 用于决定是否忽略 DSS 和签名中的撤销信息。
[in]time_type(仅适用于 LTVVerifier::e_VerifyModeAcrobat) 用于指定期望用于验证的时间类型。 请参考从 LTVVerifier::e_SignatureCreationTime 开始的值, 应为这些值之一,但不包括 LTVVerifier::e_VRICreationTime

◆ LTVVerifier() [2/2]

foxit::pdf::LTVVerifier::LTVVerifier ( const LTVVerifier other)

带另一个 LTV 验证器对象的构造函数。

参数
[in]other另一个 LTV 验证器对象。

成员函数说明

◆ AddDSS()

void foxit::pdf::LTVVerifier::AddDSS ( const SignatureVerifyResult signature_verify_result)

将签名的验证结果(作为 VRI 信息)添加到 DSS 中。

参数
[in]signature_verify_result要添加到 DSS 的签名验证结果。
返回
无。

◆ IsEmpty()

bool foxit::pdf::LTVVerifier::IsEmpty ( ) const

检查当前对象是否为空。

当当前对象为空时,表示当前对象无用。

返回
true 表示当前对象为空,false 表示不为空。

◆ operator !=()

bool foxit::pdf::LTVVerifier::operator != ( const LTVVerifier other) const

不相等运算符。

参数
[in]other另一个 LTV 验证器对象。此函数将检查当前对象是否与此对象不相等。
返回
true 表示不相等,false 表示相等。

◆ operator=()

LTVVerifier& foxit::pdf::LTVVerifier::operator= ( const LTVVerifier other)

赋值运算符。

参数
[in]other另一个 LTV 验证器对象,其值将被赋给当前对象。
返回
当前对象的引用。

◆ operator==()

bool foxit::pdf::LTVVerifier::operator== ( const LTVVerifier other) const

相等运算符。

参数
[in]other另一个 LTV 验证器对象。此函数将检查当前对象是否与此对象相等。
返回
true 表示相等,false 表示不相等。

◆ SetCertChainResolverCallback()

void foxit::pdf::LTVVerifier::SetCertChainResolverCallback ( CertChainResolverCallback callback)

如果用户想要提供额外证书以完成证书链,请设置自定义的 pdf::CertChainResolverCallback 对象。

参数
[in]callback自定义证书链解析器回调对象,基于回调类 pdf::CertChainResolverCallback 实现。 此参数可以设置为 NULL,表示不使用它。
返回
无。
注解
仅在使用 Foxit PDF SDK 的默认内部撤销回调时可用。

◆ SetRevocationCallback()

void foxit::pdf::LTVVerifier::SetRevocationCallback ( RevocationCallback callback)

设置自定义的 pdf::RevocationCallback 对象。

如果未通过此函数设置自定义撤销回调,Foxit PDF SDK 将使用默认回调。

参数
[in]callback自定义撤销回调对象,基于回调类 pdf::RevocationCallback 实现。 此参数不应为 NULL
返回
无。

◆ SetTrustedCertStoreCallback()

void foxit::pdf::LTVVerifier::SetTrustedCertStoreCallback ( TrustedCertStoreCallback callback)

如果用户想要信任某些证书,请设置自定义的 pdf::TrustedCertStoreCallback 对象。

如果未通过此函数设置受信任证书存储回调对象,在验证过程中将不信任任何证书。

参数
[in]callback自定义受信任证书存储回调对象,基于回调类 pdf::TrustedCertStoreCallback 实现。 此参数可以设置为 NULL,表示不使用它。

◆ SetVerifyMode()

void foxit::pdf::LTVVerifier::SetVerifyMode ( VerifyMode  mode)

设置验证模式以指定要使用的验证过程。

请确保在进行验证之前设置验证模式。

参数
[in]mode用于快速验证过程的验证模式。请参考从 LTVVerifier::e_VerifyModeAcrobat 开始的值,应为这些值之一。
返回
无。

◆ Verify()

SignatureVerifyResultArray foxit::pdf::LTVVerifier::Verify ( )

验证用于构造当前对象的 PDF 文档中的所有签名。

如果验证模式不是 LTVVerifier::e_VerifyModeAcrobat,当无法验证任何签名时, 验证过程将立即停止,并仅返回成功验证的签名的验证结果。 如果验证模式是 LTVVerifier::e_VerifyModeAcrobat,将验证所有签名 并返回所有签名的验证结果。

返回
签名验证结果数组。

◆ VerifySignature()

SignatureVerifyResultArray foxit::pdf::LTVVerifier::VerifySignature ( const Signature signature)

验证用于构造当前对象的 PDF 文档中的目标签名。

参数
[in]signature要验证的目标签名。 如果验证模式是 LTVVerifier::e_VerifyModeAcrobat,此函数将 验证直到目标签名的签名。 如果验证模式不是 LTVVerifier::e_VerifyModeAcrobat,此函数将 仅验证目标签名。
返回
签名验证结果数组。