我正在使用WinVerifyTrust来验证文件签名。
与互联网的连接非常糟糕,因此我只想检查本地缓存。
问题是我对如何在WinTrustData
中设置参数感到困惑关于 fdwRevocationChecks - 文档如下:
当WTD_REVOKE_NONE标志与WinVerifyTrust函数的pgActionID参数中设置的HTTPSPROV_ACTION值一起使用时,不会进行额外的吊销检查。要确保WinVerifyTrust函数在验证代码签名时不尝试任何网络检索,必须在dwProvFlags参数中设置WTD_CACHE_ONLY_URL_RETRIEVAL。
这是什么意思“没有额外的撤销检查” - 除了什么?它是否使用CRL进行撤销检查?如果我将此字段设置为* WTD_REVOKE_WHOLECHAIN *它是否会在线检查?
如果我设置WTD_CACHE_ONLY_URL_RETRIEVAL就足够了,以确保它不会尝试从互联网上获取撤销列表?
底线:如何确保有 CRL检查,但没有任何在线检查。< / p>
由于
答案 0 :(得分:5)
您应该将fdwRevocationChecks设置为WTD_REVOKE_NONE,还将WTD_CACHE_ONLY_URL_RETRIEVAL标志添加到dwProvFlags。这将确保WinVerifyTrust在验证嵌入式签名时仅在缓存的CRL中查找。