JWS,Java Web Start,应用程序的JAR签名

时间:2018-12-10 17:16:22

标签: jar java-web-start jnlp jarsigner jar-signing

我有一个使用自签名JAR的Java Web Start应用程序。该应用程序仅供内部用户使用。我正在尝试使用证书签署JAR。  我使用java keytool创建了证书请求,并将该请求提交给公司中的另一个团队(Active Directory服务器证书请求)。他们将证书链作为.p7b文件提供。

我从.p7b文件中提取了三个.cer文件,并将这三个文件都导入了密钥库并签名了JAR。

但是在那之后,当我部署新的签名JAR文件时,我仍然面临着作为自签名应用程序的问题。我已经清除了笔记本电脑上的临时Internet文件,以清除是否有任何缓存的jar文件。

我遵循的步骤是

  1. 生成密钥库

    keytool -keysize 2048 -keystore keystore -genkey -alias测试

  2. 生成CSR

    keytool -certreq -alias test -file csr.csr -keystore密钥库

    • 警告: JKS密钥库使用专有格式。推荐 迁移到行业标准格式PKCS12 使用“ keytool -importkeystore -srckeystore ictkeystore- destkeystore ictkeystore -deststoretype pkcs12“。

      我收到此警告,然后执行并运行命令以 迁移到PKCS12

  3. 我收到的证书链为.p7b文件。 我单击了Windows上的.p7b文件,并从.p7b文件中导出了三个.cer文件

  4. 我将三个.cer文件一个一个地导入了密钥库。

    keytool -import -alias root -keystore keystore -trustcacerts -file ATLPRDCA01.cer

    keytool-导入-alias intermed -keystore密钥库-trustcacerts-文件uss-ATLPRDCA01-CA.cer

    keytool -import -alias incomm -keystore keystore -trustcacerts -file ibomdmict.incomm.com.cer

它说证书被添加到以上三个中的每一个上的密钥库中。

**当用户运行JNLP文件(它将使用JAR)时,用户(客户端)计算机上的Java如何知道JAR文件由受信任的证书签名?     如果通过使用用户计算机JDK上的cacerts文件并通过与cacerts列表进行比较来检查我的证书是否有效,那么用户计算机上的cacerts如何知道我从我公司使用的证书?

要使其正常工作,我是否必须使用VeriSign之类的公司的公共证书或其他证书颁发机构

0 个答案:

没有答案