Я хочу сохранить закрытый ключ в Android KeyStore, но у меня есть проблема с KeyStore.getInstance ("JKS"): ошибка вроде этой: java.security.KeyStoreException: JKS не найден.
Пожалуйста, помогите мнепочему это не известно для этого экземпляра?
- У меня есть файл загрузки моего хранилища ключей: mykeystore.jks
Мой код, как показано ниже:
try {
KeyPairGenerator keyPairGenerator = KeyPairGenerator.getInstance("RSA");
keyPairGenerator.initialize(2048);
KeyPair keyPair = keyPairGenerator.genKeyPair();
X509Certificate certificate = generateCertificate(keyPair);
KeyStore ks = KeyStore.getInstance("JKS");
char[] password = "xxxxxx".toCharArray();
try (FileInputStream fis = new FileInputStream("path\\mykeystore.jks")) {
ks.load(fis, password);
}
Certificate[] certChain = new Certificate[1];
certChain[0] = certificate;
ks.setKeyEntry("key1", keyPair.getPrivate(), password, certChain);
} catch(Exception e) {
e.printStackTrace();
}
- Ошибка результата: java.security.KeyStoreException: JKS не найден