1

証明書で署名されているjarファイルの有効期限を30日に変更する必要があります。したがって、順番に実行します(最初のコマンドに関連する入力を提供します)。ただし、-validityオプションが30日として指定されているにもかかわらず、jarsignerコマンドは、証明書が6か月(デフォルト)後に期限切れになることを示しています。どうすればこれを変更できますか?以下は私が使用するコマンドのリストです

keytool -genkey -keystore test -alias testAlias -validity 30 <br>
keytool -selfcert -alias testAlias -keystore test <br>
jarsigner -keystore "C:\test" "C:\some.jar" testAlias
4

1 に答える 1

8

キーの有効期間は 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

12/31/11 は現在のテストから 30 日後、もう 1 つの日付はキーストアを作成してから 90 日後です。これは で確認できますkeytool -v -list -keystore myKeystore-TEST。のマニュアル ページにkeytoolは、90 日がキーのデフォルトであると書かれています。

于 2011-12-01T18:36:32.483 に答える