1
SSLContextの作成の一環として、このJavaスニペットを参照しました。 keyPass
が指定されているinit
コールが不思議です。 KeyStoreに別名とパスワードが異なる複数の証明書が含まれている場合はどうなりますか?Javas KeyManagerFactory.initは複数のキーでどのように動作するのですか
val keyStore = KeyStore.getInstance("jks")
keyStore.load(inputStream, "storePass")
val keyManagerFactory = KeyManagerFactory.getInstance("SunX509")
keyManagerFactory.init(keyStore, keyPass?)
val keyManagers = keyManagerFactory.getKeyManagers
val sslContext = SSLContext.getInstance("TLS")
sslContext.init(keyManagers, null, new SecureRandom)
keyStore
がCERT1含まれている場合はどのようにコードを書き換えるでしょう(別名:1、PWD:FOO)とcert2(別名:2、PWD:バー)?たぶん私は何か2つのことを誤解したでしょう:)
これについてはわかりません。[javadoc](https://docs.oracle.com/javase/7/docs/api/javax/net/ssl/KeyManagerFactory.html#init(java.security.KeyStore、 %20char [])):password - KeyStoreのキーを回復するためのパスワード – GPI
これは2つの異なるパスワードです。 – reikje
私は正しかった、あなたは正しい、私は私の方法をここで交差させた。キーストア#ロードメソッドはストアパスワードを取得し、KMF#initはキーパスワードを取得します。 – JustDanyul