web-dev-qa-db-ja.com

キーストアのパスワードをパスワードなしから空でないパスワードに変更します

パスワードのないjksキーストアがあります。コマンドを実行すると

keytool -list -keystore mykeystore.jks

そして、キーストアのパスワードの入力を求められ、単に「Enter」を押します。

キーストアのパスワードISではなく、デフォルトJava 'changeit'のパスワード。空白です。

走ろうとすると

keytool -storepasswd -keystore mykeystore.jks

パスワードを空でない文字列に変更します。最初に現在のパスワードの入力を求められます。空白なのでEnterキーを押すだけ

keytool -storepasswd -keystore mykeystore.jks
Enter keystore password:
Keystore password is too short - must be at least 6 characters 

パスワードが「changeit」ではないことを全員に確認するためだけに

keytool -storepasswd -keystore mykeystore.jks
Enter keystore password:  changeit
keytool error: Java.io.IOException: Keystore was tampered with, or password was incorrect

既存のパスワードが空白の場合、キーストアのパスワードを変更する方法はありますか?

38
Matthew Kirkley

Keystore引数に-storepassを追加します。

keytool -storepasswd -storepass '' -keystore mykeystore.jks

ただし、-listコマンドでは常にパスワードが必要とは限らないことにも注意してください。私は両方の場合でフォローコマンドを実行できました:パスワードなしまたは有効なパスワードあり

$Java_HOME/bin/keytool -list -keystore $Java_HOME/jre/lib/security/cacerts
28
ijrandom

Javaデフォルトのシステムキーストア(cacerts)]を使用して処理しようとしている場合、デフォルトのパスワードはchangeitです。

パスワードを要求することなく、パスワードを要求せずにキーをリストすることができますので、それが空白であることを示すものとして受け取らないでください。

(ちなみに、Javaの履歴で、デフォルトのキーストアパスワードを変更したことがある人はいますか?空白のままにしておく必要があります。)

59
Timmmm