当前位置: 首页 > 面试题库 >

使用受信任的证书签名jar文件以进行JWS部署

贺亦
2023-03-14
问题内容

我已经开发了一个开源程序WPCleaner,该程序通过Java Web
Start分发。当前版本可从http://site4145.mutu.sivit.org/WikiCleaner/WikiCleaner.jnlp获得。

随着Java的最新更新,当您需要该应用程序具有一些权限(编写首选项,访问其他网站等)时,通过Java Web Start部署Java应用程序变得越来越困难。

我的应用程序是自签名的,以前是可以的,但是新的更新要求用户每次运行它时都接受该应用程序,而不是一劳永逸。因此,我决定使用受信任的证书来签名我的应用程序

在进行以下讨论之后,我从Certum获得了一个(显然,它们对开源开发人员是免费的):开源项目的代码签名证书?

我已经生成了一个新的jar文件,并使用此证书进行了签名(jar文件位于http://site4145.mutu.sivit.org/WikiCleaner/WikipediaCleanerTest.jar),但是仍然存在问题:通过JWS启动应用程序时,Java仍然显示警告窗口,不允许我一劳永逸地信任该应用程序。编辑器仍然显示为UNKNOWN,但是当我查看消息的详细信息时,正在使用的是我来自Centrum的新证书。

有人知道我在做什么错吗?我认为从受信任的CA获得证书(Centrum似乎在Java cacerts中)将允许用户一劳永逸地接受证书。

谢谢

PS:运行时jarsigner -verify,收到以下警告:“此jar包含未验证其证书链的条目。”


问题答案:

我想我终于按照以下程序做到了:

  • 通过其网站界面在Chrome中安装了Certum提供的证书
  • 从Chrome将私钥导出为.pfx(设置,管理证书,导出,导出私钥,PKCS#12等)。
  • 使用KeyTool GUI(keytools的Java前端GUI)来创建完整的p12:导入Certum根证书作为受信任的证书,导入中间证书作为受信任的证书,导入我的.pfx作为密钥对
  • 与此p12签署了罐子

似乎对我有用,我正在等待其他用户的反馈,以确保它也对他们有用。

编辑:我再次尝试从Chrome导出证书,并且看到有一个选项可以在导出中包括证书链。这样做时,以后甚至不需要使用KeyTool
GUI。我已经重新部署了与此新p12签署的测试版本:

  • 通过其网站界面在Chrome中安装了Certum提供的证书
  • 从Chrome将私钥导出为.pfx(设置,管理证书,导出,导出私钥,PKCS#12 +包括证书链,…)
  • 与此p12签署了罐子


 类似资料:
  • 问题内容: 我试图使用(java)密钥工具创建一个自签名证书,但是当我尝试使用它时,出现以下异常(有关完整异常,请参见底部)。 我知道我可以使用以下代码绕过此代码: (资源) 但是我对此解决方案不感兴趣,因为我认为这会造成安全漏洞。(如果我错了,请纠正我)。 谁能指出我正确的方向?我目前正在本地进行测试,因此很容易进行更改。我可以访问服务器代码,客户端代码和.keystore文件。 更新资料 我试

  • 我想在客户端设备上使用通过Ed25519生成的私钥对JWS(json web签名)进行签名。然后将这个签名发送到我的后端,并用公钥验证它。为了熟悉这个过程,我想尝试在node js中对JWS进行签名和验证 我的私钥和公钥都已生成,可以在base58中使用。这是我目前使用Ed25519私钥签署JWT的尝试: 密钥必须是KeyObject或CryptoKey类型之一。收到一个Uint8Array的实例

  • 我尝试使用自签名证书在HTTPS连接上向SonarQube实例启动maven sonar:sonar。Maven给我这个错误: [错误]无法执行目标org.sonarsource.scanner.maven:sonar-maven-plugin:3.4.0.905:项目data.model上的sonar(default-cli):无法执行SonarQube:无法从服务器获取引导索引:sun.sec

  • 我正试图将我的计算机配置为信任用于测试网站的自签名证书。然而,我在Firefox上遇到了一些问题。Chrome和IE都没问题。 我做了以下几点。 使用OpenSSL创建2048位pem rsa密钥和crt 从密钥和crt文件创建pfx文件 使用MMC将pfx导入到服务器上的个人证书存储中 将IIS配置为使用站点的证书 在客户端PC上 null 我还尝试将证书直接添加到Firefox的权限列表中。它

  • > 。 有些帖子说x509是用来生成自签名证书的。 但使用时出错: 请告诉我哪条路是正确的。如果是正确的,如何解决错误?非常感激!

  • 我有个小问题。我正在用selenium以特定的配置文件打开firefox浏览器,一个flash应用程序出现了。在这个应用程序中,我需要单击一些东西,所以我使用sikuli。问题是,当使用sikuli单击按钮时,我的应用程序会在匿名配置文件中打开浏览器,从而显示“不受信任的SSL证书”。 有没有办法为火狐的匿名配置文件设置AcceptUnTrust d证书? 我想提到的是,我的java代码中已经有s