У меня есть файл с цепочкой сертификатов - Certificate.cer:Как добавить цепочку сертификатов в хранилище ключей?
subject=/C...
issuer=/C=US/O=VeriSign, Inc...
-----BEGIN CERTIFICATE-----
...
-----END CERTIFICATE-----
subject=/C=US/O=VeriSign, Inc...
issuer=/C=US/O=VeriSign, Inc...
-----BEGIN CERTIFICATE-----
...
-----END CERTIFICATE-----
subject=/C=US/O=VeriSign, Inc...
issuer=/C=US/O=VeriSign, Inc...
-----BEGIN CERTIFICATE-----
...
-----END CERTIFICATE-----
мне нужно добавить эту цепочку сертификатов ключей.
Что я делаю:
openssl x509 -outform der -in certificate.cer -out cert.der
keytool -v -importcert -alias mykey -file cert.der -keypass <passwd> -keystore keystore -storepass <passwd> -alias <myalias>
В результате у меня есть только один сертификат в хранилище ключей.
Но должен иметь 3.
Что может быть неправильным?
РЕШЕНИЕ:
CA прислал мне сертификаты в формате PKCS # 7 формате.
Я хранил их в certificate.p7b файл, а затем успешно добавили их в KeyStore по следующей команды:
keytool -import -trustcacerts -file certificate.p7b -keystore keystore -storepass <mypasswd> -alias "myalias"
Какая версия KeyTool использовалась? Версия '6-b14' не может импортировать цепочки сертификатов, потому что: // мы можем хранить только один сертификат пользователя для каждого идентификатора. Посмотрите на исходный код:' http://grepcode.com/file/repository.grepcode.com/java/root/jdk/openjdk/6-b14/sun/security/tools/KeyTool.java # KeyTool.doImportIdentityDatabase% 28java.io.InputStream% 29' –