我实际上用这个命令来jarsign一个java applet:
jarsigner -storetype pkcs12 -keystore my_real_certificate.pfx my_applet.jar my_alias_certificate -storepass my_password
当我启动applet时,出现以下错误:
您的安全设置已阻止自签名应用程序运行
当我想验证jar时,结果显示如下:
jar验证。
警告:此jar包含签名者证书的条目 ExtendedKeyUsage扩展名不允许代码签名。这个罐子 包含未验证证书链的条目。这个罐子 包含不包含时间戳的签名。没有 时间戳,用户可能无法在此之后验证此jar 签署人证书的到期日(2017-05-22)或任何未来之后 撤销日期。
对于此警告:
此jar包含签名者证书的条目 ExtendedKeyUsage扩展程序不允许代码签名
我猜我的证书不适用于jarsigning代码。你能否告诉我这种警告是否会让我在客户端出现这种错误?或者我还可以使用此证书吗?
对于此警告:
此jar包含未验证证书链的条目。
我不明白,因为我的证书确实是由CA(Thawte)验证的。我应该向Java或我的Windows证书管理器指示完整的证书链(使用CA Root和中间人)吗?如果是这样,这个小程序的用户会发生什么?他们也应该这样做吗?
提前感谢您的回答。
答案 0 :(得分:1)
我想我的证书不适用于jarsigning代码。
正确。
你能否告诉我这种警告是否会让我在客户端出现这种错误?
是
或者我还可以使用此证书吗?
不用于代码签名。 (但它可能有效用于其他目的。)
我不明白,因为我的证书确实是由CA(Thawte)验证的。
这似乎不是问题所在。
我应该向Java或我的Windows证书管理器指明完整的证书链(使用CA Root和中间人)吗?
我认为这不会起作用。即使它确实......
如果是这样,这个小程序的用户会发生什么?
他们仍然会发现那些赢得&不运行>>的JAR<<<。
他们也应该这样做吗?
糟糕的主意。您实际上是在告诉他们为了运行您的软件而损害他们的安全性......因为您还没有使用有效的JAR签名密钥。