VeriSign 第三类证书在Windows中不被信任?

7
我分发的Windows桌面应用程序所有可执行文件都由Verisign Class 3代码签名证书数字签名。对于绝大多数用户来说,这似乎很正常。 然而,一小部分用户报告说该证书无效。他们说出现了消息"A certificate chain processed, but terminated in a root certificate which is not trusted by the trust provider"。这对应错误代码CERT_E_UNTRUSTEDROOT (0x800B0109)。在已更新的Windows 7机器上也报告了此问题,因此可以推断我的证书是好的,但有时Windows不信任VeriSign证书。 为什么Windows有时不信任VeriSign?我能否在安装程序中加入一些东西(也已签名),以告诉Windows相信这个证书?

2
我建议联系Verisign支持团队 - 他们应该更清楚问题的原因。关于您的问题 - 您无法在自己的端解决此问题(除了联系支持并提供尽可能多的详细信息来报告问题)。 - Eugene Mayevski 'Callback
1个回答

8

微软通过 Windows Update 经常更新根证书,但这些更新被标记为“可选更新”,因此并非所有用户都可能已安装它们,需要手动安装。即使是“完全更新”的计算机,自动安装通常也仅设置为安装“重要更新”,而根证书更新不是重要更新之一。

根据桌面应用程序的类型,您可能还需要遵循某些签名规则。例如,与 Windows 安全中心交互的应用程序需要基本相同的签名方法,如驱动程序所需的签名方法。也就是说,证书链会与签名嵌入在一起(使用 signtool/ac 开关)。您可以在此处获取适用于 VeriSign 证书的 MSCV-VSClass3.cer链接

该过程通常被称为交叉签名,但似乎这是一个用词不当。虽然这是获取您的驱动程序二进制文件或目录交叉签名的其中一步,但至关重要的一步是微软签署驱动程序(或现今更常见的是目录文件),这才是实际的交叉签名。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接