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

Уведомление

Icon
Error

Опции
К последнему сообщению К первому непрочитанному
Offline Jin  
#1 Оставлено : 12 февраля 2010 г. 17:36:05(UTC)
Jin

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

Группы: Участники
Зарегистрирован: 07.12.2009(UTC)
Сообщений: 119
Откуда: Moscow

Добрый день всем.

Хотелось бы получить какие-нибудь советы по поводу добавления присоединённой подписи к сообщению уже содержащему одну или несколько подписей. Знаю что многие скажут что смотри в сторону CryptMsgControl, Update, OpenTodecode и т.д. ... Посмотрел, .... сделал добавление подписи но отсоединённой ( Detached ) работает круто.
1. Идея такая открыть сообщение при помощи OpnTo Decode ( с параметром Stream)
2. Вызывать MsgUpdate для кусков и для последнего с параметром TRUE
В результате уже вызывается callback функция указанная в параметре структуры stream, в неё приходит исходник сообщения который содержался в совмещённом файле ( Сообщение + Подпись)
3.Если вызвать CryptmsgControl ( добавление подписи) то подпись добавляется но хранится она в объекте HCRYPTMSG её конечно же можно ивзлечь однако, только её, и получается что в итоге отдельно выгрузилось сообщение , отдельно выгрузилась подпись ( две подписи)
ТОгда встаёт вопрос как совместить заголовок ASN1.0 с двумя подписями и исходное сообщение.

Пробовал одновременно создавать криптографическое соощение CryptMsgOpenToEncode
через update добавлять исходное сообщение а потом добавлять подпись при помощи CryptMsgControl( ADD_SIGN_INFO) но это вызвло ощибку якобы неправильного параметра, т.е. наскокько я понимаю так нельзя .

вообщем если кто что знает намекните хотябы как делать....
Offline Седов Роман  
#2 Оставлено : 15 февраля 2010 г. 0:32:08(UTC)
Седов Роман

Статус: Мегазвезда

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

Поблагодарили: 1 раз в 1 постах
К сожалению, средствами CryptoAPI добавить подпись в подписанное сообщение в "потоковом" режиме не получится.
Необходимо использовать дрцгие средства работы с ASN1.
Что именно это могло бы быть - честно говоря не знаю.
Может кто-то отпишется по этому поводу.
Offline Jin  
#3 Оставлено : 15 февраля 2010 г. 15:28:56(UTC)
Jin

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

Группы: Участники
Зарегистрирован: 07.12.2009(UTC)
Сообщений: 119
Откуда: Moscow

Роман, вы уверенны? Это ваше предположение , просто имеет ли смысл пробовать решать задачу на Crypto API дальше? , или где-то написанно что это невозможно? Если это так, то не хочется тратить своё время ).

Отредактировано пользователем 15 февраля 2010 г. 15:38:35(UTC)  | Причина: Не указана

Offline Седов Роман  
#4 Оставлено : 15 февраля 2010 г. 15:39:08(UTC)
Седов Роман

Статус: Мегазвезда

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

Поблагодарили: 1 раз в 1 постах
Ну как вам сказать...
Когда-то я очень много пробовал - не получилось.
Точно не помню, но, кажется, я даже в Microsoft уточнял по этому поводу.
В общем, 100% гарантии не дам, но 99% - могу! :)
Так что средствами CryptoAPI получится менять (добавлять подписи и прочее) только подписанные "detached"-сообщения.
Offline Jin  
#5 Оставлено : 15 февраля 2010 г. 17:42:54(UTC)
Jin

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

Группы: Участники
Зарегистрирован: 07.12.2009(UTC)
Сообщений: 119
Откуда: Moscow

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