我正在使用WinTrust.dll的WinVerifyTrust方法来验证我的dll的数字签名是否有效。但是,如果我创建了自己的证书和一个自签名证书颁发机构,并将其添加到我的机器上的根存储中,WinVerifyTrust()仍然返回true。
有没有其他选项来验证我的数字签名是否有效?
P.S.不能使用X509Certificates.Verify()方法。
发布于 2015-04-07 08:10:00
WinVerifyTrust将始终检查存储以验证数字签名。将根目录和证书添加到受信任的根存储区意味着您信任这些证书,因此也信任签名。如果要从受信任的存储区中删除这些证书,则验证应该会失败(取决于您设置的标志)。试着看看WinVerifyTrustEx
发布于 2018-06-25 14:39:24
如果您不介意使用外部工具,我建议您使用sysinternal的sigcheck。它体积小,性能可靠,易于使用。如果您愿意,它可以将结果导出为csv文件。
https://stackoverflow.com/questions/29467500
复制相似问题