keytool は、鍵と証明書を管理するための Java SDK に付属するユーティリティーです.keytool を使うことにより,公開鍵と秘密鍵のペアの生成や関連する証明書を管理できます.また,共通鍵暗号で使用される秘密鍵の管理,ディジタル署名を使った自己認証,および証明書に関するサービスなどが利用可能になります(詳細は,keytool 参照).
keytool command [ options ]
以下のコマンド形式において,省略可能な一般オプションは除いてある.
オプションを囲む中括弧は,一般にそのオプションをコマンド行で指定しなかった場合に,デフォルト値が使われることを意味する.また,オプションを囲む角括弧は,そのオプションをコマンド行で指定しなかった場合に値の入力を求められることを意味する.
-genkeypair {-alias alias} {-keyalg keyalg} {-keysize keysize} {-sigalg sigalg} [-dname dname] [-keypass keypass] {-validity valDays} [-storepass storepass]鍵ペア (公開鍵と秘密鍵) を生成する.公開鍵は X.509 v3 自己署名証明書でラップされる.証明書は,単一の要素を持つ証明書チェーンとして格納される.この証明書チェーンと秘密鍵は,alias で特定される新しいキーストアエントリに格納される.
-genseckey {-alias alias} {-keyalg keyalg} {-keysize keysize} [-keypass keypass] [-storepass storepass]秘密鍵を生成し,alias で指定される新しいキーストア内に格納する.
-importcert {-alias alias} {-file cert_file} [-keypass keypass] {-noprompt} {-trustcacerts} [-storepass storepass]ファイル cert_file から証明書または証明書チェーン (証明書チェーンの場合は,PKCS#7 形式の応答で提供されるもの) を読み込み,alias によって指定されるキーストアに格納する.ファイルが指定されていない場合は,標準入力から証明書または PKCS#7 応答を読み込む.
-importkeystore -srckeystore srckeystore -destkeystore destkeystore {-srcstoretype srcstoretype} {-deststoretype deststoretype} [-srcstorepass srcstorepass] [-deststorepass deststorepass] {-srcprotected} {-destprotected} {-srcalias srcalias {-destalias destalias} [-srckeypass srckeypass] [-destkeypass destkeypass] } {-noprompt} {-srcProviderName src_provider_name} {-destProviderName dest_provider_name}ソースキーストアからターゲットキーストアへ単一のエントリまたはすべてのエントリをインポートする.インポート時には,ターゲットキーストア内の新しいエントリはすべて元と同じ別名およびパスワードを持つ.
-certreq {-alias alias} {-sigalg sigalg} {-file certreq_file} [-keypass keypass] [-storepass storepass]PKCS#10 形式を使って証明書署名要求 (CSR) を生成する.
-exportcert {-alias alias} {-file cert_file} [-storepass storepass] {-rfc}alias に関連付けられた証明書をキーストアから読み込み,ファイル cert_file に格納する.
-list {-alias alias} [-storepass storepass] {-v | -rfc}alias で特定されるキーストアエントリの内容を標準出力に出力する.別名が指定されていない場合は,キーストア全体の内容が表示される.
-printcert {-file cert_file}ファイル cert_file から証明書を読み込み,可読形式で証明書の内容を表示する.ファイルが指定されていない場合は,標準入力から証明書を読み込む.
-storepasswd [-new new_storepass] {-storetype storetype} [-storepass storepass]キーストアの内容を保護するためのパスワードを変更する.new_storepass には,新しいパスワードを指定する.new_storepass は,6 文字以上でなければならない.
-keypasswd {-alias alias} [-keypass old_keypass] [-new new_keypass] [-storepass storepass]alias によって特定される秘密鍵を保護するためのパスワードを old_keypass から new_keypass に変更する.new_keypass は,6 文字以上でなければならない.
-delete [-alias alias] [-storepass storepass]alias によって指定されるエントリをキーストアから削除する.
-changealias {-alias alias} [-destalias destalias] [-keypass keypass] [-storepass storepass]指定された alias から新しい別名 destalias へ,既存のキーストアエントリを移動する.ターゲット別名が指定されなかった場合,その入力が求められる.元のエントリがエントリパスワードで保護されていた場合,「-keypass」オプションでそのパスワードを指定する.
keytool -genkeypair -dname "cn=Mark Jones, ou=JavaSoft, o=Sun, c=US" -alias business -keypass kpi135 -keystore C:\working\mykeystore -storepass ab987c -validity 180
keytool -certreq -file MarkJ.csr
keytool -importcert -alias abc -file ABCCA.cer
keytool -importcert -trustcacerts -file VSMarkJ.cer
keytool -exportcert -alias mykey -file MJ.cer
keytool -importkeystore -srckeystore key.jks -destkeystore NONE -srcstoretype JKS -deststoretype PKCS11 -srcstorepass changeit -deststorepass topsecret