繁体   English   中英

签名罐子作者未知

[英]Author is unknown for signed jar

用Java签名jar,我已经按照以下三个步骤进行签名

  1. keytool -genkey -keystore myKeyStore -alias me
  2. keytool -selfcert -keystore myKeyStore -alias me
  3. jarsigner -keystore myKeyStore jarfile.jar me

我的问题如下:

  1. 之后,我运行了我的小程序,为什么它显示作者不明?
  2. 我能够给-validity无天对我的罐子,什么是最大的日子里,我可以给?
  1. 您创建的证书是自签名证书。 只有在Java设置中标记为受信任的信任中心之一签名的证书才显示为“已验证作者”。

  2. 有效性与您的JAR文件可以使用多长时间无关。 有效期仅标记您可以使用证书(或更好的是属于证书的私钥)进行签名的时间

  1. 除非数字证书由返回到CA(证书颁发机构)的密钥链进行认证(例如Verisign),否则它将显示为“未知作者”。 “自签名”证书的问题在于,尽管您可以创建声称自己是您的证书, 其他人也可以制作声称自己您的证书
    由于一个“自签名”证书和另一个可以肯定您身份的证书(IE毫无价值)一样,因此JRE声明“作者未知”。
  2. 我不确定,虽然我记得以前的证书使用了5000天。 也许真正的问题是,在JRE永远不会足够信任甚至不能显示身份的证书上,值得声明您是谁有多长时间? 如果这是用于商业产品,我强烈建议您完成验证(这可能会很昂贵)。 即使对于广泛分发的免费产品,也不会造成伤害。

keytool 有效期所述

每个证书仅在有限的时间内有效。 该时间段由开始日期和时间以及结束日期和时间描述,可以短至几秒钟,或几乎长达一个世纪。

正如@Andrew和@Robert都指出的那样,专业软件需要经过专业签名的证书。 对于临时使用,可以在共享另一个信任通道的人员之间使用自签名证书。 它还可以帮助拒绝虚假的错误指控。

  • A编写一个开源程序,签名为A。
  • B添加恶意软件,并且无法签名A,因此签名B。
  • C错误地获得B的版本并指控A犯罪。
  • 可以验证是否发生了篡改。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM