您的密钥有效期为 30 天;未指定您使用该密钥生成和签名的证书,因此默认为 180 天。这里重要的是命令中-validity
指定的标志值。-selfcert
我刚刚测试了这个:
cp myKeystore myKeystore-TEST
keytool -selfcert -validity 30 -alias myAlias -keystore myKeystore-TEST
jarsigner -keystore myKeystore-TEST myApplet.jar myAlias
当浏览器弹出对话框时,我可以验证到期日期是否列为今天+30 天。 jarsigner -verbose -certs -verify myApplet.jar
更详细,还列出了证书和密钥的摘要:
sm 697 Thu Dec 01 04:02:34 EST 2011 applet/Main.class
X.509, CN=Todd Kaufmann, OU=Unknown, O=..., L=Pittsburgh, ST=PA, C=US
[certificate will expire on 12/31/11 12:48 PM]
X.509, CN=Todd Kaufmann, OU=Unknown, O=..., L=Pittsburgh, ST=PA, C=US
[certificate will expire on 1/23/12 4:08 AM]
...
s = signature was verified
m = entry is listed in manifest
2011 年 12 月 31 日是我现在测试的 30 天,另一个日期是我创建密钥库后的 90 天,我可以使用keytool -v -list -keystore myKeystore-TEST
. 手册页keytool
说 90 天是键的默认值。