SignedData.Verify 方法

[ Verify 方法可用于“要求”部分中指定的操作系统。 请改用 System.Security.Cryptography.Pkcs 命名空间中的 SignedCms 类。]

Verify 方法确定 SignedData 对象中签名数据上的签名是否有效。 为了验证签名,将使用签名者证书中的签名者公钥解密内容的加密 哈希 。 解密的哈希与数据内容的新哈希进行比较。 如果哈希匹配,则签名有效。 此外,此方法还会生成证书链,以确定提供用于解密哈希的 公钥 的证书的有效性。

语法

SignedData.Verify( _
  ByVal SignedMessage, _
  [ ByVal bDetached ], _
  [ ByVal VerifyFlag ] _
)

参数

SignedMessage [in]

包含要验证的已签名消息的字符串。

bDetached [in, optional]

如果 为 True,则分离要签名的数据;也就是说,已签名的内容不作为已签名对象的一部分包含在内。 若要验证分离内容上的签名,应用程序必须具有原始内容的副本。 如果已签名邮件的收件人具有已签名数据的原始副本,则分离内容通常用于减小要通过 Web 发送的已签名对象的大小。 默认值为 False

VerifyFlag [in, optional]

指示验证策略的 CAPICOM_SIGNED_DATA_VERIFY_FLAG 枚举的值。 默认值为 CAPICOM_VERIFY_SIGNATURE_AND_CERTIFICATE。 使用此值时,将检查证书的有效性和签名的有效性。 此参数可以设置为验证签名而不是证书。 此参数的取值可为下列值之一:

含义
CAPICOM_VERIFY_SIGNATURE_ONLY
仅检查签名。
CAPICOM_VERIFY_SIGNATURE_AND_CERTIFICATE
将检查用于创建签名的证书的签名和有效性。

 

返回值

此方法返回一个字符串,其中包含已编码的带符号数据。

如果此方法失败,将引发错误。 Err 对象将包含有关错误的其他信息。

要求

要求
可再发行组件
Windows Server 2003 和 Windows XP 上的 CAPICOM 2.0 或更高版本
DLL
Capicom.dll

另请参阅

加密对象

SignedData