是否可以重用CryptVerifySignature()哈希对象?

时间:2011-09-23 10:18:47

标签: c cryptoapi

MSDN表示,在CryptVerifySignature()之后,您无法重复使用HCRYPTHASH对象来尝试散列更多数据,而是说您需要使用CryptDestroyHash()CryptCreateHash()重新创建数据。 重用真的失败了。

任何人都熟悉可以保存这些电话的黑客,或者这真的不可能?

1 个答案:

答案 0 :(得分:1)

我认为HCRYPTHASH数据结构比仅用CryptVerifySignature()调用更灵活。它设计用于(可能是不连续的)数据流(通过CryptHashData()),这意味着它将一些状态存储在哈希的当前值中。因此,一旦你在流上使用它(甚至部分),状态就会不可逆转地改变,所以你不能在另一个流上使用它。

我猜他们可以为reset结构提供HCRYPTHASH函数......但他们没有!