Ключевое слово в защите информации
КЛЮЧЕВОЕ СЛОВО
в защите информации
Получить ГОСТ TLS-сертификат для домена (SSL-сертификат)
Добро пожаловать, Гость! Чтобы использовать все возможности Вход или Регистрация.

Уведомление

Icon
Error

Опции
К последнему сообщению К первому непрочитанному
Offline drevlyanin  
#1 Оставлено : 20 января 2017 г. 18:30:01(UTC)
drevlyanin

Статус: Новичок

Группы: Участники
Зарегистрирован: 04.02.2013(UTC)
Сообщений: 3
Российская Федерация
Откуда: Санкт-Петербург

Сгенерировал сертификат, подписал им данные с отсоединённой подписью.

Код:
cryptcp.exe -creatrqst -dn "INN=7700000011, E=test@mailinator.com.com, C=RU, CN=Фамилия015 Имя015 Отчество015, O=Тестовый ЮЛ ПР 2" -both -ku -provname "Crypto-Pro GOST R 34.10-2001 Cryptographic Service Provider" -provtype 75 -certusage "1.3.6.1.5.5.7.3.2" cert-request.req


Читаю сертификат из отсоединённой подписи:

Код:
final X509Certificate certificate = (X509Certificate) certificateFactory.generateCertificate(encodeBuffer.getInputStream());


Затем достаю различные атрибуты подписи, в частности SubjectDN:

Код:
certificate.getSubjectDN().getName()


Он в свою очередь возвращает следующую строку:

Код:
"OID.1.2.643.3.131.1.1=#120A37373030303030303131, EMAILADDRESS=test@mailinator.com.com, C=RU, CN=Фамилия015 Имя015 Отчество015, O=Тестовый ЮЛ ПР 2"


Ожидалось, что вместо поля-значения "OID.1.2.643.3.131.1.1=#120A37373030303030303131" будет во возвращена запись вида "INN=7700000011".

Вопросы:

1. Возможно ли как-то получить строку вида?

Код:
"INN=7700000011, EMAILADDRESS=test@mailinator.com.com, C=RU, CN=Фамилия015 Имя015 Отчество015, O=Тестовый ЮЛ ПР 2"


2. Можно ли как-то из сертификата извлечь ИНН подписчика отдельно?

P.S. Смотрел примеры в "jcp_plus_jtls_1.0.54" подходящего ничего не смог найти.
Offline Евгений Афанасьев  
#2 Оставлено : 22 января 2017 г. 18:04:11(UTC)
Евгений Афанасьев

Статус: Сотрудник

Группы: Участники
Зарегистрирован: 06.12.2008(UTC)
Сообщений: 3,910
Российская Федерация
Откуда: Крипто-Про

Сказал(а) «Спасибо»: 20 раз
Поблагодарили: 685 раз в 646 постах
Стандартный X.509 не знает об ИНН. Попробуйте использовать альтернативную реализацию X509CertImpl из ru.CryptoPro.reprov.x509, примерно так:
Certificate cert = new ru.CryptoPro.reprov.x509.X509CertImpl(<cert>);

Отредактировано пользователем 22 января 2017 г. 18:05:44(UTC)  | Причина: Не указана

Offline drevlyanin  
#3 Оставлено : 23 января 2017 г. 12:57:48(UTC)
drevlyanin

Статус: Новичок

Группы: Участники
Зарегистрирован: 04.02.2013(UTC)
Сообщений: 3
Российская Федерация
Откуда: Санкт-Петербург

Благодарю. То что надо. Можно закрывать тему.
Offline drevlyanin  
#4 Оставлено : 23 января 2017 г. 19:30:54(UTC)
drevlyanin

Статус: Новичок

Группы: Участники
Зарегистрирован: 04.02.2013(UTC)
Сообщений: 3
Российская Федерация
Откуда: Санкт-Петербург

Погорячился. К сожалению в версии 1.0.54 ru.CryptoPro.reprov.x509.X509CertImpl ещё не знает ИНН.
RSS Лента  Atom Лента
Пользователи, просматривающие эту тему
Быстрый переход  
Вы не можете создавать новые темы в этом форуме.
Вы не можете отвечать в этом форуме.
Вы не можете удалять Ваши сообщения в этом форуме.
Вы не можете редактировать Ваши сообщения в этом форуме.
Вы не можете создавать опросы в этом форуме.
Вы не можете голосовать в этом форуме.