6

我的公司从赛门铁克购买了 EV 证书,用于我们生产的软件产品。具体来说,它被称为:Symantec Class 3 Extended Validation Code Signing CA – G2

为了开发和构建这个产品,我们使用 Visual Studio 2013,并使用 ClickOnce 作为发布和安装程序机制。我们遇到的问题是 ClickOnce 无法使用其内置的签名机制来应用 EV 证书。ClickOnce 可以很好地看到证书,并允许我们使用“从存储中选择...”按钮来选择它。它在“证书”窗口中显示所有正确信息。但是当我们发布时遇到如下错误:

“<em>签名时出错:无法签名 bin\Release\app.publish\setup.exe。SignTool 错误:发生了意外的内部错误。”</p>

请注意,我们可以使用 SignTool.exe 从命令行应用 EV 证书,因此问题不在于该程序。

有没有人有过这种 EV 证书和 ClickOnce 组合的经验?我们应该购买与 ClickOnce 一起使用效果更好的不同 EV 证书吗?

4

2 回答 2

16

几天前我遇到了完全相同的问题,Digicert 售后服务已经能够解决它。尝试检查此注册键的值(在 regedit 中):

HKEY_LOCAL_MACHINE/SYSTEM/CurrentControlSet/Control/Cryptography/Providers/SafeNet Smart Card Key Storage Provider/Aliases

该值应该是“eToken Base Cryptographic Provider”而不是“eToken Base Cryctographic Provider”('p' 而不是 'c')。

如评论中所述,您必须在更改后重新启动。

希望能帮助到你。

于 2014-09-16T07:27:51.230 回答
3

不能评论(没有足够的代表)。花了很长时间访问此页面,所以我想为之后来到这里的任何人添加以下信息。

来自 signtool 的完整错误消息(用于搜索引擎查找此站点的目的)是:

SignTool 错误:发生了意外的内部错误

错误:SignerSign() 失败。” (-1073741275/0xc0000225)

这仅在签署 sha256 时发生(对我们而言)。sha1 工作正常。

@Max 的回答(注册表项中的错字是正确的。这是 SafeNet 身份验证客户端 8.2 版安装程序中的一个错误。我更改了注册表项,重新启动,一切都开始工作了。

它已从 9.0 版本(适用于 Win8+)开始修复。

于 2016-03-25T16:07:38.807 回答