Перейти к контенту

Сбой ntdll.dll при добавлении подписи


Рекомендуемые сообщения

Здравствуйте!

Реализую подпись файлов программно в своем приложении (приложение, разработанное на языке C#, .NET Framework 4.5).

Проблема такая. Формирую подпись файлов в формате PKCS7/CMS (открепленная подпись). На компьютере, на котором установлено ПО VipNET CSP 4.2 при подписании файла с нуля (файл еще не был подписан) все проходит нормально. Если же файл уже был кем то другим подписан, то при добавлении подписи происходит сбой приложения (даже блок перехватки ошибок не помогает, идет сбой на уровне ядра). В отчете об ошибке указывается, что произошел сбой модуля ntdll.dll. На компьютере, на котором установлено ПО КриптоПРО CSP таких ситуаций не возникает.

При подписи учитываю, чтобы сертификаты были с одними и теми же алгоритмами подписи (ГОСТЫ). Сертификаты получил в тестовых УЦ как КриптоПРО так и Инфотекс.

Подскажите, в чем может быть проблема???

Кстати, если уже подписанный файл подписать с помощью VipNet CryptoFile, то никаких проблем не возникает...

Ссылка на комментарий
Поделиться на других сайтах

Вы пробовали другие сборки CSP и на других ОС? Думаю вы понимаете, что CSP очень "нежные" к любым обновлениям ОС, потому часто вроде одна и та же версия, но другой билд в "третьем звене" - и уже всё работает.

Для примера, совсем недавно требовалось подписание.... было постоянно ошибки.. подпись была на Якарте... установили новый ЕК - крипто после этого совсем потерял все стороние контейнеры и также в ЕК не видно, что там записано (показывал данные карты, но данные нет)... В ИТОГЕ обновили КриптоПро 4 до по последней серт. версии и О ЧУДО - всё стало видеться, и в крипто и в самом ЕК.

Т.е. то что вы сейчас даже добьётесь положительного результата, совсем не означает, что на другой ОС где есть некие драйвера ключей и др. обновление - будет работать.

Ссылка на комментарий
Поделиться на других сайтах

Здравствуйте!

До CryptoAPI я не дошел, использую стандартные классы C# для работы с PKCS7 CMS: SignedCms, CmsSigner, ContentInfo. Подписание осуществляется при помощи SignedCms.ComputeSignature. Если покопать (что я и сделал), то можно увидеть, что этот класс использует Low Message функции CryptoAPI.

Ссылка на комментарий
Поделиться на других сайтах

Здравствуйте!

Извините, что долго не отвечал... Реализовал подписание с помощью CryptoAPI (Low Message / Simplified ) и все стало работать!

Ссылка на комментарий
Поделиться на других сайтах

Хорошо, но если вышлите кусок кода, будем благодарны.

Посмотрим у нас падает (и действительно есть ошибка при вызове через .Net), или ошибка при вызове.

Ссылка на комментарий
Поделиться на других сайтах

Я сейчас пытаюсь побороть проблему соподписи при использовании сертификатов с разными алгоритмами (например ГОСТ и sha1rsa). Как только справлюсь, поделюсь без проблем!

Ссылка на комментарий
Поделиться на других сайтах

В 15.09.2016в09:15, cav сказал:

Хорошо, но если вышлите кусок кода, будем благодарны.

Посмотрим у нас падает (и действительно есть ошибка при вызове через .Net), или ошибка при вызове.

Добрый день! Извините, что так долго... Не смог пока я побороть случай подписания файла несколькими сертификатами с разными алгоритмами (случай отсоединенной подписи)... Да и на работе запарка, некогда этим заниматься. Подойдет пока и такой вариант. В общем все работает хорошо, подписывается любым криптопровайдером (КриптоПРО CSP и VipNet CSP), но в случае отсоединенной подписи подписывать можно только сертификатами с одинаковыми алгоритмами. Если нужно посмотреть исходный код, напишите свой адрес электронной почты, я скину проект.

Ссылка на комментарий
Поделиться на других сайтах

Спасибо, пока этого достаточно попытаемся сами проэмулировать.

На всякий случай свой адрес скинул в личку.

Ссылка на комментарий
Поделиться на других сайтах

Присоединиться к обсуждению

Вы можете ответить сейчас, а зарегистрироваться позже. Если у вас уже есть аккаунт, войдите, чтобы ответить от своего имени.

Гость
Ответить в этой теме...

×   Вы вставили отформатированный текст.   Удалить форматирование

  Допустимо не более 75 смайлов.

×   Ваша ссылка была автоматически заменена на медиа-контент.   Отображать как ссылку

×   Ваши публикации восстановлены.   Очистить редактор

×   Вы не можете вставить изображения напрямую. Загрузите или вставьте изображения по ссылке.

×
×
  • Создать...

Важная информация

Продолжая пользоваться сайтом вы принимаете Условия использования.