String keyStorePath = "2keystore.jks";
String keyStoreType = "JKS";
String keyStorePassword = "mypass";
KeyStore keyStore = KeyStore.getInstance(keyStoreType);
InputStream ksis = ClassLoader.getSystemResourceAsStream(keyStorePath);
keyStore.load(ksis, keyStorePassword.toCharArray());
ksis.close();
// Above seems to work fine
KeyManagerFactory kmf =
KeyManagerFactory.getInstance(KeyManagerFactory.getDefaultAlgorithm());
kmf.init(keyStore, keyStorePassword.toCharArray());
// Above throws exception:
// UnrecoverableKeyException: Cannot recover key
それでも、keytool を使用すると、次の2keystore.jks
ようなコンテンツを表示できます。
keytool -list -v -keystore 2keystore.jks | more
Enter keystore password: mypass
Keystore type: JKS
Keystore provider: SUN
Your keystore contains 3 entries
Alias name:
...
このキーストアをにロードしようとしたときに何が問題になる可能性がありますKeyManagerFactory
か?
ありがとう