jarファイルの署名

備忘録。

JavaAppletやJavaWebStartなどでローカルファイルなどへのアクセスが必要な場合はjarファイルに署名する必要があります。
その方法について。ちなみにオレオレ証明書でやります。

証明書作成
コマンドプロンプトで下記を実行します。

keytool -genkey -keystore myKeyStore -alias myAlias

キーストアのパスワード、姓名、組織などを聞かれるので適当なものを入力します。

キーストアのパスワードを入力してください:
新規パスワードを再入力してください:
姓名を入力してください。
  [Unknown]:  Okahiro
組織単位名を入力してください。
  [Unknown]:
組織名を入力してください。
  [Unknown]:  Milt.jp
都市名または地域名を入力してください。
  [Unknown]:  Oota
州名または地方名を入力してください。
  [Unknown]:  Tokyo
この単位に該当する 2 文字の国番号を入力してください。
  [Unknown]:  JP
CN=Okahiro, OU=Unknown, O=Milt.jp, L=Oota, ST=Tokyo, C=JP でよろしいですか?
  [no]:  yes

<myAlias> の鍵パスワードを入力してください。
        (キーストアのパスワードと同じ場合は RETURN を押してください):

Jarの署名
繰り返し行う可能性があるので、Antでjarパッケージングと同時に署名を行うように設定します。

<jar jarfile="sample.jar" basedir="classes/" update="true"/>
<signjar keypass="password" storepass="password" jar="sample.jar" keystore="myKeyStore" alias="myAlias"/>


これで終わりです。
あとはjarファイルを適切な場所に配備するだけ。