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

Уведомление

Icon
Error

Опции
К последнему сообщению К первому непрочитанному
Offline aleksey.gallyamov  
#1 Оставлено : 10 февраля 2014 г. 12:33:57(UTC)
aleksey.gallyamov

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

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

Сказал(а) «Спасибо»: 1 раз
Крипто АРМ легко вытаскивает содержимое документа из присоединённой подписи, даже если подпись невалидна по каким-либо причинам.

Тоже самое через Crypto API сделать не получается. Пожалуйста, подскажите, куда копать?

П.С. Крипто Про вер. CSP 3.6
Offline Андрей Писарев  
#2 Оставлено : 10 февраля 2014 г. 12:54:46(UTC)
Андрей *

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

Группы: Участники
Зарегистрирован: 26.07.2011(UTC)
Сообщений: 14,190
Мужчина
Российская Федерация

Сказал «Спасибо»: 621 раз
Поблагодарили: 2397 раз в 1886 постах
Автор: aleksey.gallyamov Перейти к цитате
Крипто АРМ легко вытаскивает содержимое документа из присоединённой подписи, даже если подпись невалидна по каким-либо причинам.

Тоже самое через Crypto API сделать не получается. Пожалуйста, подскажите, куда копать?

П.С. Крипто Про вер. CSP 3.6


КриптоАРМ использует CryptoAPI.

P.s. Где код, в котором "не получается"?

Техническую поддержку оказываем тут
Наша база знаний
Offline aleksey.gallyamov  
#3 Оставлено : 10 февраля 2014 г. 13:09:46(UTC)
aleksey.gallyamov

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

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

Сказал(а) «Спасибо»: 1 раз
Автор: Андрей * Перейти к цитате

КриптоАРМ использует CryptoAPI.

P.s. Где код, в котором "не получается"?



Код:
 
    // получить объём данных и проверить только формат подписи
    var verificationResult = Win32.CryptVerifyMessageSignature(ref verifyParams, 100, messageArray, messageSizeArray, null, ref cbDecodedMessageBlob, IntPtr.Zero);
    if (verificationResult == false)
    {
       ThrowError(error); // check (uint)Marshal.GetLastWin32Error(); and throw if errors
    }
    var pbDecodedMessageBlob = new Byte[cbDecodedMessageBlob];
    // получить данные
    verificationResult = Win32.CryptVerifyMessageSignature(ref verifyParams, 0, messageArray, messageSizeArray, pbDecodedMessageBlob, ref cbDecodedMessageBlob, IntPtr.Zero);
    if (verificationResult == false)
    {
       ThrowError(error); // check (uint)Marshal.GetLastWin32Error(); and throw if errors
    }

    // нужен вот этот документ, без проверки подписи:
    var document = pbDecodedMessageBlob;


CryptVerifyMessageSignature -- это 1:1 обёртка Crypto API. Если подпись валидна, то всё ок. Иначе не получить документ.
Offline Андрей Писарев  
#4 Оставлено : 10 февраля 2014 г. 13:12:06(UTC)
Андрей *

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

Группы: Участники
Зарегистрирован: 26.07.2011(UTC)
Сообщений: 14,190
Мужчина
Российская Федерация

Сказал «Спасибо»: 621 раз
Поблагодарили: 2397 раз в 1886 постах
А поточные функции обработки использовать можно?
Техническую поддержку оказываем тут
Наша база знаний
Offline aleksey.gallyamov  
#5 Оставлено : 10 февраля 2014 г. 13:14:01(UTC)
aleksey.gallyamov

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

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

Сказал(а) «Спасибо»: 1 раз
Автор: Андрей * Перейти к цитате
А поточные функции обработки использовать можно?


Если получится достичь результат, то можно :)
Offline Андрей Писарев  
#6 Оставлено : 10 февраля 2014 г. 13:24:26(UTC)
Андрей *

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

Группы: Участники
Зарегистрирован: 26.07.2011(UTC)
Сообщений: 14,190
Мужчина
Российская Федерация

Сказал «Спасибо»: 621 раз
Поблагодарили: 2397 раз в 1886 постах
Автор: aleksey.gallyamov Перейти к цитате
Автор: Андрей * Перейти к цитате
А поточные функции обработки использовать можно?


Если получится достичь результат, то можно :)


CryptMsgOpenToDecode
CryptMsgUpdate
Техническую поддержку оказываем тут
Наша база знаний
thanks 1 пользователь поблагодарил Андрей * за этот пост.
aleksey.gallyamov оставлено 10.02.2014(UTC)
Offline aleksey.gallyamov  
#7 Оставлено : 10 февраля 2014 г. 13:36:13(UTC)
aleksey.gallyamov

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

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

Сказал(а) «Спасибо»: 1 раз
Спасибо большое! Буду пробовать :)
Offline Новожилова Елена  
#8 Оставлено : 17 февраля 2014 г. 13:03:18(UTC)
Новожилова Елена

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

Группы: Администраторы, Участники
Зарегистрирован: 10.12.2008(UTC)
Сообщений: 945
Женщина
Откуда: Крипто-Про

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