首页>最新数字证书问答>使用JAR签名进行代码签名

使用JAR签名进行代码签名

JavaArchive(JAR)包格式可用于打包Java应用程序和库。

签名的JAR文件可以选择包含来自TSA时间戳响应,使用RFC#3161格式。

添加JAR签名者添加JAR签名者的链接,SignServer中的JAR签名器称为JArchiveSigner。

要配置JArchiveSigner,请按照以下步骤操作并使用名为jarchive_signer.properties的模板:

1、转到SignServerAdminWebWorkers页面并单击添加以添加新的工作人员。

2、在AddWorker/LoadConfiguration页面上,选择方法FromTemplate。

3、在LoadFromTemplate列表菜单中,选择jarchive_signer.properties并单击Next。

4、单击Apply并选择工作人员名称JArchiveSigner。

5、单击“配置”选项卡并对以下项进行适当的调整:

名称:指定一个名称。

CRYPTOTOKEN:如果使用SignServerEnterprise,这应该与在SignServer软件安装部分中配置的加密令牌的名称相匹配。如果您在设备上,则此加密令牌是为您创建的,名称为HSMCryptoToken10。如果使用SignServerCloud,实例会提供CryptoTokenP12,其中包含您需要的所有示例密钥和证书,您可以继续最后一步并确保您的签名者处于ACTIVE状态。

6、通过单击StatusSummary选项卡,然后单击RenewKey为签名者生成新的密钥对。

7、选择一个密钥算法,例如RSA和一个密钥规范,例如2048,然后单击Generate。

8、通过单击生成CSR为新密钥对创建证书签名请求(CSR)。

9、选择SHA256withRSA等签名算法,并为新证书指定主题DN(名称),例如CN=MSAuthCodeSignerTest,O=MyCompany,C=SE,然后单击Generate。

10、单击下载并保存CSR文件。

11、将CSR文件带到您的证书颁发机构以获取证书和CA证书作为回报。在生产系统中安装证书之前,请确保检查签名者的授权,因为一旦安装了证书,签名者将完全正常运行并准备好接收请求。

12、单击安装证书并浏览证书文件。首先提供签署者证书,然后依次颁发CA证书。单击添加以列出链中的证书。

13、按正确顺序添加所有证书后,单击安装。

14、安装证书后,签名者应处于ACTIVE状态。如果不是,请检查其“状态摘要”页面的顶部是否有任何错误。

使用JArchive签名器

要提交要签名的JAR文件,请使用以下可用接口之一:

客户端 Web 表单上传:使用Web 浏览器中的 SignServer 客户端 Web 表单使用 JArchive 签名者提交并签署 JAR,请参阅使用客户端 Web 提交和签名文件

使用客户端 CLI 提交文件:使用 SignServer 客户端 CLI SignClient 使用 JArchive 签名者提交并签署 JAR,请参阅使用客户端 CLI 提交文件并签名

Web 服务:使用 SignServer 客户端 Web 服务 (WS) 接口集成到自定义应用程序中。有关详细信息,请参阅使用普通签名进行代码签名

使用 cURL 或 wget 编写脚本:使用 HTTP 客户端,例如 cURL 或 wget。有关详细信息,请参阅使用普通签名进行代码签名

使用客户端Web提交和签名文件

下面描述了如何使用Web浏览器中的SignServer客户端Web表单使用JArchive签名器提交和签署JAR。

要下载示例JAR,然后使用客户端网页提交文件并对其进行签名,请执行以下操作:

下载helloworld.jar测试 JAR 签名。

转到 SignServer客户端 Web通用页面。

在页面上向下滚动到文件上传的通用签名或验证部分,并在工作人员姓名字段中指定 JArchiveSigner 。

单击选择文件,选择helloworld.jar,然后单击提交。

使用JAR签名进行代码签名 第1张

系统将提示您保存已签名的JAR文件helloworld.jar。

使用客户端CLI提交和签名文件

要使用SignServerClientCLISignClient提交JAR文件进行签名,请使用以下命令向工作人员发送请求:

bin/signclientsigndocument-workernameJArchiveSigner-infilehelloworld.jar-outfilehelloworldsigned.jar

workernameSignServer服务器中工作人员的名称在哪里,要infile签名的未签名输入文件的路径,以及outfile签名版本将写入的文件名。

验证签名的JAR文件验证签名JAR文件的链接

Javajarsigner工具可用于验证JAR文件的签名和证书。该工具在Java开发工具包(JDK)中可用。

安装JDK后,打开命令提示符,并使用签名文件的路径执行命令(作为User):

Jarsigner验证示例

jarsigner-verify-strictMyJAR-signed.jar

要获取其他信息以及证书,还请指定选项-verbose和-certs.

JArchive 签名者选项

为 JArchive Signer 配置的最相关的属性是:

使用JAR签名进行代码签名 第2张

对于所有可用的属性,请参阅 SignServer 文档JArchive Signer部分。

最新资讯

为什么要停止使用RSA密钥交换?

什么是DNS-over-HTTPS.是如何工作的?

Apple macOS操作系统中存在三个致命漏洞

"此网站提供的安全证书不安全"的解决方法

Chrome浏览器中出现“安全连接”错误,该如何解决?

标签推荐:数字证书申请 | ssl证书验证失败 | https证书申请| 数字签名技术| 电子签名软件| ssl证书更新| 小程序证书| ca认证电子签名| 个人代码签名| 微软代码签名| 泛域名证书| java代码签名| 代码签名证书| https证书配置| PKI技术知识| SQL注入| openssl漏洞| 识别钓鱼网站