У меня есть закрытый ключ, хранящийся в файле в формате PKCS8 DER и защищенный паролем. Какой самый простой способ прочитать его?
Вот код, который я использую для загрузки незашифрованного кода:
InputStream in = new FileInputStream(privateKeyFilename);
byte[] privateKeydata = new byte[in.available()];
in.read(privateKeydata);
in.close();
KeyFactory privateKeyFactory = KeyFactory.getInstance("RSA");
PKCS8EncodedKeySpec encodedKeySpec = new PKCS8EncodedKeySpec(privateKeydata);
PrivateKey privateKey = privateKeyFactory.generatePrivate(encodedKeySpec);
Он отлично работает для незашифрованных ключей с той же спецификацией. Кстати, я использую BouncyCastle.
Я могу просмотреть этот закрытый ключ, используя следующую команду openssl
openssl pkcs8 -in ./privatekey.key -inform DER -passin pass:thisismypass
Пожалуйста, помогите!!!
Я, я опубликовал некоторые решения в своем собственном ответе на эту тему. Но я оставляю вопрос без ответа на тот случай, если кто-нибудь сможет помочь ему работать без дополнительной библиотеки, просто BouncyCastle.