#java #security #certificate
#java #Безопасность #сертификат
Вопрос:
Я новичок в сертификатах. Я пытался импортировать сертификаты в течение последних нескольких часов, и чем больше я углубляюсь в вопросы безопасности, тем больше кажется, что это невозможно понять.
Вот чего я пытаюсь достичь в java:
- пользователь может загружать любой форматированный сертификат с необязательной парольной фразой
- Мне нужно преобразовать сертификат в недвоичный формат PEM
- Извлеките закрытый и открытый ключи для хранения в базе данных, выдайте ошибку, если отсутствует один из двух
До сих пор мне удавалось анализировать некоторые сертификаты, используя X509Certificate от java security, но я не могу получить закрытый ключ. Я также пробовал bouncy castle, но и там безуспешно.
Спасибо за вашу помощь
Ответ №1:
Содержит X509Certificate
только открытый ключ.
Закрытые ключи обычно кодируются с использованием PKCS # 8. Попробуйте KeyFactory
с PKCS8EncodedKeySpec
помощью .
Комбинированные сертификаты открытого ключа с закрытыми ключами обычно кодируются с использованием PKCS # 12 (.pfx, .p12). Попробуйте KeyStore
использовать тип «PKCS12» (с Bouncy Castle в качестве поставщика).