使用EV证书在Install4J中签署可执行文件

3

我们公司从GlobalSign订购了一个EV证书。

以前,我们拥有一个普通的代码签名证书,是一个p12文件,可以在Install4J中使用。

现在,有了新证书,我们没有证书文件,而是有一个USB令牌。

是否有内置的方法可以使用USB令牌来签署可执行文件/jar文件?或者我需要像这里提到的那样使用媒体向导的“可执行处理”步骤?

也许有一种方法可以从一台机器(如macos)签署所有安装程序(win、mac、linux)?

2个回答

5

根据Ingo的回答,无法使用EV代码签名证书。希望未来可以实现。

正如我在问题中所说,您必须在媒体向导中使用“可执行文件处理”(仅适用于Windows)。

您可以在Windows上使用Microsoft的codesign,也可以使用一个名为jsign的小工具,在所有平台上使用EV代码签名证书对Windows可执行文件进行签名。

这是我们对jsign的调用:

java -jar jsign-2.0.jar --keystore ./eToken.cfg --alias %GetAliasOfYourToken% --storetype PKCS11 --tsaurl http://timestamp.comodoca.com/authenticode --storepass %WriteTokenPasswordHere% $EXECUTABLE

eToken.cfg是一个简单的文本文件,有两行:

name=eToken

library=/usr/local/lib/libeTPkcs11.dylib(因为我在MacOS上)

对于 Windows,应该是:

library=c:\WINDOWS\system32\eTPKCS11.dll


1
Windows的等效版本已经为我解决了这个问题,谢谢! - PatricNox

2

还是需要像这里提到的那样使用媒体向导的“可执行处理”步骤吗?

是的,那是唯一的方法。

也许有一种方法可以从一台机器(例如macOS)签署所有安装程序(win、mac、linux)吗?

不幸的是,这是不可能的。


更新于2019年10月22日

自从install4j 8.0版本以来,支持硬件安全模块(PKCS#11)用于Windows代码签名,并且可以在常规设置->代码签名步骤中进行配置。


谢谢回答。是否有计划使用硬件令牌实现安装程序签名功能? - dominic.e
1
不,我认为将其作为多平台功能实现并不可行。 - Ingo Kegel
Install4J用于签名可执行文件/ dmg。它是完全自己的实现还是使用第三方实现? - dominic.e
1
它是使用Java代码从头开始实现的,没有使用任何外部工具。 - Ingo Kegel

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