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

Уведомление

Icon
Error

Опции
К последнему сообщению К первому непрочитанному
Offline Leshiy  
#1 Оставлено : 21 декабря 2007 г. 17:14:30(UTC)
Leshiy

Статус: Участник

Группы: Участники
Зарегистрирован: 21.12.2007(UTC)
Сообщений: 14

Здравствуйте!
Подскажите, пожалуйста, какой флаг нужно выставить для CryptEncodeObject/CryptEncodeObjectEx, чтобы закодировать последовательность SET OF. Заранее благодарен за ответы.
Offline Павел Смирнов  
#2 Оставлено : 24 декабря 2007 г. 18:12:01(UTC)
Павел Смирнов

Статус: Вам и не снилось

Группы: Администраторы
Зарегистрирован: 24.12.2007(UTC)
Сообщений: 831
Откуда: Крипто-Про

Сказал(а) «Спасибо»: 1 раз
Поблагодарили: 48 раз в 44 постах
Напрямую одним вызовом SET OF закодировать не удастся. Есть путь из двух шагов:
1. Кодируем PKCS_ATTRIBUTE, задавая произвольный, но нормальный (с точки зрения ASN.1) OID, и нужные блобы в множество значений атрибута.
2. Декодируем созданный на первом шаге атрибут как X509_SEQUENCE_OF_ANY. На выходе будет два блоба, первый из которых является закодированным ОИДом, второй - требуемый SET OF.
Техническую поддержку оказываем тут.
Наша база знаний.
Offline Юрий  
#3 Оставлено : 22 января 2008 г. 17:14:57(UTC)
Юрий

Статус: Активный участник

Группы: Участники
Зарегистрирован: 22.01.2008(UTC)
Сообщений: 671
Мужчина
Российская Федерация
Откуда: Йошкар-Ола

Сказал «Спасибо»: 3 раз
Поблагодарили: 93 раз в 67 постах
ASN.1 по-сути своей очень простая штука: любая последовательность байт кодируется в трех полях (TLV, Tag + Length + Value). Значение "Tag" и определяет что именно содержится в "Value" и имеет в длину всего 8 бит. Для кодирования любой последовательности атрибутов в "SET OF" достаточно создать массив, в котором первый байт имеет значение 0x31. Про то как правильно устанавливать длину смотрите в X.680 и X.690.

Но и, безусловно, способ предложеный Смирновым тоже может иметь место. Но вот только на мой взгляд он избыточен и затратен. Ведь по сути необходимо просто правильно поставить один байт в массиве.
С уважением,
Юрий Строжевский
RSS Лента  Atom Лента
Пользователи, просматривающие эту тему
Быстрый переход  
Вы не можете создавать новые темы в этом форуме.
Вы не можете отвечать в этом форуме.
Вы не можете удалять Ваши сообщения в этом форуме.
Вы не можете редактировать Ваши сообщения в этом форуме.
Вы не можете создавать опросы в этом форуме.
Вы не можете голосовать в этом форуме.