2013-08-06 6 views
0

Я создал пару открытых частных ключей, используя класс KeyPairGenerator в Java. Из этой пары ключей я сгенерировал запрос CSR, используя класс PKCS10, который был отправлен в CA для проверки. Вопрос в том, как загрузить эту парку открытого частного ключа в хранилище ключей? Я не могу использовать KeyStore.SetKeyEntry, поскольку для этого требуется параметр сертификата вместе с закрытым ключом.Импорт открытых частных ключей в Keystore

Я думал, что мне придется подождать, пока ЦС вернет сертификат, который затем должен быть использован для загрузки пары ключей. Но если я создаю хранилище ключей с помощью команды Keytool -

Keytool -genkey -keyalg RSA -keysize 2048 -sigalg sha1withRSA -alias AliasName -validity 365 -keystore keystorename

, а затем загрузить этот хранилищу в классе Java хранилища ключей , объект keystore содержит privatekeyentry и CertificateEntry. Как это возможно без получения сертификата из ЦС.

+0

Keytool создал сертификат, который уже импортирован в него при создании. – MayurB

ответ

0

Приведенная вами команда keytool создает самозаверяющий сертификат. Когда вы получите новый сертификат, подписанный ЦС, вы можете импортировать этот сертификат в хранилище ключей, после чего замените самозаверяющий сертификат.

О вашем Java-вопросе вам нужно будет создать самозаверяющий сертификат на основе открытого ключа, который вы создали (и подписанным секретным ключом), или вам нужно будет дождаться, когда CA вернет подписанный вами сертификат и использовать его с закрытым ключом в SetKeyEntry.

Смежные вопросы