Форум КриптоПро
»
Средства криптографической защиты информации
»
Встраивание
»
Контекст сертификата CERT_CONTEXT WinCryptoApi в объект CAPICOM.ICertificate
Статус: Эксперт
Группы: Участники
Зарегистрирован: 05.03.2015(UTC) Сообщений: 1,602  Откуда: Иркутская область Сказал(а) «Спасибо»: 110 раз Поблагодарили: 395 раз в 366 постах
|
Вообще в NET не особо углубляюсь, но насколько понимаю, возможно смешивание библиотек.
Суть в том, что для своих библиотек NET использует управляемую память - автоматически выделяет/освобождает, а вот с внешними библиотеками надо использовать неуправляемую память и вручную выделять/освобождать. Мне где-то попадался пример как создавать запросы на сертификат подобным образом, обращаясь к CryptoApi прямо из NET (без классов криптографии), найду - отпишу. Для самой простой подписи этого и хватит. С усовершенствованной посложнее. Далее для COM библиотек нужно еще и инициализировать систему COM.
|
|
|
|
Статус: Активный участник
Группы: Участники
Зарегистрирован: 05.04.2020(UTC) Сообщений: 45  Откуда: Москва Сказал(а) «Спасибо»: 24 раз
|
Автор: two_oceans  Вообще в NET не особо углубляюсь, но насколько понимаю, возможно смешивание библиотек.
Суть в том, что для своих библиотек NET использует управляемую память - автоматически выделяет/освобождает, а вот с внешними библиотеками надо использовать неуправляемую память и вручную выделять/освобождать. Мне где-то попадался пример как создавать запросы на сертификат подобным образом, обращаясь к CryptoApi прямо из NET (без классов криптографии), найду - отпишу. Для самой простой подписи этого и хватит. С усовершенствованной посложнее. Далее для COM библиотек нужно еще и инициализировать систему COM.
С обращением из Net к неуправляемой памяти и прочей маршализации структур - проблем нет особо. Благодаря форуму из NET научился работать с CryptoApi. Другое дело, что плаваю вообще в понятии "усовершенствованная подпись", то есть понятно, что это заверенное время и проверка действительности всех сертификатов в цепочке. Но не понятно, как этим пользоваться из WinCryptoApi применительно к ГОСТ. Как я понимаю, решение КриптоПро ЭЦП и реализовано, чтобы помочь встраиванию в прикладные системы усовершенствованную подпись. И реализовано это как COM (CadesCom) для подключения как плагином, так и различным языкам (хоть VBA, VBS, ...Net). А также есть реализация в виде библиотек для языка С/С++. И в этом примере (выше) для С я (как я понял) используется для подписания как раз контекст сертификата WinCryptoApi и казалось бы проблема решена. Но...мне не хватает знаний понять: 1) вообще прав ли я в своих рассуждениях; 2) можно ли подключить эту неуправляемую dll к С# и как объявлять вызовы и структуру... Так как использование COM требует и контекста сертификата в типах Capi/Cades COM, а в примере языка С мне показалось, что контекст родной WinCryptoApi. PS: Нашел, что почитать умное.Отредактировано пользователем 2 апреля 2021 г. 14:32:20(UTC)
| Причина: Не указана
|
|
|
|
Форум КриптоПро
»
Средства криптографической защиты информации
»
Встраивание
»
Контекст сертификата CERT_CONTEXT WinCryptoApi в объект CAPICOM.ICertificate
Быстрый переход
Вы не можете создавать новые темы в этом форуме.
Вы не можете отвечать в этом форуме.
Вы не можете удалять Ваши сообщения в этом форуме.
Вы не можете редактировать Ваши сообщения в этом форуме.
Вы не можете создавать опросы в этом форуме.
Вы не можете голосовать в этом форуме.
Important Information:
The Форум КриптоПро uses cookies. By continuing to browse this site, you are agreeing to our use of cookies.
More Details
Close