每个 .exe 代码签名操作都需要 Digicert USB 令牌吗? (EV代码签名证书)

Posted

技术标签:

【中文标题】每个 .exe 代码签名操作都需要 Digicert USB 令牌吗? (EV代码签名证书)【英文标题】:Is the Digicert USB token needed for every single .exe code-signing operation? (EV code-signing certificate) 【发布时间】:2021-07-20 13:45:59 【问题描述】:

我有一个 Digicert SafeNet USB 令牌(EV 代码签名证书),每次我需要对 .exe 文件进行签名时,我都会将其与 digicertutil.exe 一起使用。

问题:我不想一直随身携带这个敏感的 USB 令牌。但是,即使硬件令牌不在我身边,我仍然希望能够对 .exe 进行代码签名(我更愿意将 USB 令牌放在安全的地方,一劳永逸,而不是随身携带)。

有没有办法使用digicertutil.exe 或其他工具将证书保存到文件中,这样我就可以在没有硬件令牌的情况下对未来的 .exe 进行代码签名?

或者有没有办法让“在接下来的 15 天内不要要求硬件令牌,而只要求密码”

【问题讨论】:

硬件令牌的主要目的不是不允许在没有令牌的情况下签署任何东西吗?我不知道具体的硬件,但通常它们包含无法提取的私钥。 谢谢@Arvo。这似乎表明我每次需要签名代码时都必须随身携带USB令牌,这不是很方便(获得新的硬件令牌是一个不平凡的过程,需要时间和金钱,所以我更喜欢不要一直随身携带token,以免丢失风险)。 【参考方案1】:

我从来没有用过代码签名证书,对证书的一般认识也只是初步了解,但是我在网上搜索了一下,找到了以下资源:

This website uses something called "OpenToken". 它似乎完全符合您的要求。不过,它是在 2018 年 12 月发布的。我不知道是否对 USB 进行了任何更改以使此代码无用。

This superuser answer also seems to do what you want.

It's also possible that Digicert will duplicate it for you.

所有 DigiCert 证书都附带无限免费重复问题。

请注意,任何复制 USB 的尝试都可能导致 USB 重置,as this Quora answer mentions.

另外,请注意duplicating a certificate USB may be a very, very, very bad idea.

编辑: This Information Security Stack Exchange注意到USB证书可以直接复制,这种情况下,也许你就不用费心使用第三方软件来复制你的证书了。

【讨论】:

以上是关于每个 .exe 代码签名操作都需要 Digicert USB 令牌吗? (EV代码签名证书)的主要内容,如果未能解决你的问题,请参考以下文章

如何使用来自 GoDaddy(使用 Ubuntu)的 .SPC 或 .PEM 文件对代码(.EXE 文件)进行签名? [关闭]

验证可执行文件是不是已签名(用于签署该 exe 的signtool)

使用 signtool.exe 自动进行代码签名,但不存储证书或密码

我可以在没有代码签名 EKU 的情况下使用证书签署自解压 exe 吗?

Windows 代码签名过程和 MS signtool.exe 的替代方案? [关闭]

服务器签名密钥操作及管理