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

Уведомление

Icon
Error

Опции
К последнему сообщению К первому непрочитанному
Offline ekimezzopasl  
#1 Оставлено : 10 апреля 2015 г. 13:16:13(UTC)
ekimezzopasl

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

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

Сказал(а) «Спасибо»: 2 раз
Ситуация: есть два сертификата, в certmgr.msc у одного видим

№1
Идентификатор ключа субъекта равный
"9e 71 0e 0f da b4 01 28 5f 3f e2 cb 8f 65 15 97 02 47 8c ab",


у другого видим
№2
Идентификатор ключа центра сертификатов, равный

Идентификатор ключа=9e 71 0e 0f da b4 01 28 5f 3f e2 cb 8f 65 15 97 02 47 8c ab
Поставщик сертификата:
Адрес каталога:
CN=УЦ Федерального казначейства
O=Федеральное казначейство
C=RU
L=Москва
STREET="улица Ильинка, дом 7"
ОГРН=1047797019830
ИНН=007710568760
S=77 г. Москва
E=uc_fk@roskazna.ru
OID.1.2.840.113549.1.9.2=Server CA
Серийный номер сертификата=01

Мы пытаемся методами CryptoPro JCP получить из Идентификатора ключа субъекта и Идентификатора ключа центра сертификатов вот эту строку "9e 71 0e 0f da b4 01 28 5f 3f e2 cb 8f 65 15 97 02 47 8c ab" используя AuthorityKeyIdentifier и SubjectKeyIdentifier, но получаем избыточную информацию. Как получить именно "9e 71 0e 0f da b4 01 28 5f 3f e2 cb 8f 65 15 97 02 47 8c ab" или его однозначную замену для сравнения?
Offline Евгений Афанасьев  
#2 Оставлено : 10 апреля 2015 г. 14:34:32(UTC)
Евгений Афанасьев

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

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

Сказал(а) «Спасибо»: 21 раз
Поблагодарили: 714 раз в 674 постах
Здравствуйте.
Попробуйте как-то так:
Код:

X509Certificate certificate = ...
Asn1DerDecodeBuffer buffer = new Asn1DerDecodeBuffer(certificate.getExtensionValue("2.5.29.35"));
Asn1OctetString asnString = new Asn1OctetString();
AuthorityKeyIdentifier aki = new AuthorityKeyIdentifier();
asnString.decode(buffer);
buffer = new Asn1DerDecodeBuffer(asnString.value);
aki.decode(buffer);
...


Внутри aki будут раскодированные данные.

Отредактировано пользователем 10 апреля 2015 г. 15:23:56(UTC)  | Причина: Не указана

thanks 1 пользователь поблагодарил Евгений Афанасьев за этот пост.
ekimezzopasl оставлено 10.04.2015(UTC)
Offline ekimezzopasl  
#3 Оставлено : 10 апреля 2015 г. 15:35:54(UTC)
ekimezzopasl

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

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

Сказал(а) «Спасибо»: 2 раз
Извините за тупой вопрос - а "внутри" aki - это как\где?
Существует какой-то метод у объекта AuthorityKeyIdentifier, который позволяет получить из него keyIdentifier в виде строки\хеша?
Offline Евгений Афанасьев  
#4 Оставлено : 10 апреля 2015 г. 15:46:58(UTC)
Евгений Афанасьев

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

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

Сказал(а) «Спасибо»: 21 раз
Поблагодарили: 714 раз в 674 постах
В классе AuthorityKeyIdentifier (из ASN1P.jar) есть несколько полей, в том числе:
Код:

public KeyIdentifier keyIdentifier;
thanks 1 пользователь поблагодарил Евгений Афанасьев за этот пост.
ekimezzopasl оставлено 10.04.2015(UTC)
Offline ekimezzopasl  
#5 Оставлено : 10 апреля 2015 г. 16:06:48(UTC)
ekimezzopasl

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

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

Сказал(а) «Спасибо»: 2 раз
Спасибо!
RSS Лента  Atom Лента
Пользователи, просматривающие эту тему
Guest
Быстрый переход  
Вы не можете создавать новые темы в этом форуме.
Вы не можете отвечать в этом форуме.
Вы не можете удалять Ваши сообщения в этом форуме.
Вы не можете редактировать Ваши сообщения в этом форуме.
Вы не можете создавать опросы в этом форуме.
Вы не можете голосовать в этом форуме.