Статус: Активный участник
Группы: Участники
Зарегистрирован: 07.12.2009(UTC) Сообщений: 119 Откуда: Moscow
|
Добрый день. Пытаюсь с помощью Крипто Про Sharpei зашифровать большой файл, однако в примерах этого нет. для зашифровки используется класс EnvelopedCms, из которого вызывается метод Ecnrypt. Короче говоря не вижу каких-либо намёков на повторный вызов функции шифрования и мне не понятно как это сделать. Может ыть кто-нибудь знает как зашифровать и сделать другие операции над файлами больших размеров?
|
|
|
|
Статус: Сотрудник
Группы: Администраторы
Зарегистрирован: 12.12.2007(UTC) Сообщений: 6,393 Откуда: КРИПТО-ПРО Сказал «Спасибо»: 37 раз Поблагодарили: 717 раз в 621 постах
|
Стандартные классы это не позволяют - придется писать обертки над поточными функциями CryptMsg. |
|
|
|
|
Статус: Активный участник
Группы: Участники
Зарегистрирован: 07.12.2009(UTC) Сообщений: 119 Откуда: Moscow
|
стойте, использование CryptMsg и других функций типа ( Control, Update, OpenToEncode) это конечно же круто, но это на C++ , кроме того у них есть одна проблема, ( в CALLBACK функцию приходят зашифрованные данные размеров по 1024 байт) это C++ , а хотелось бы на .Net используя Sharpei. Но какбы там нибыло неужели в .Net нету класса в котором потоковое шифрование будет предусмотренно? Отредактировано пользователем 25 января 2010 г. 20:44:24(UTC)
| Причина: Не указана
|
|
|
|
Статус: Сотрудник
Группы: Администраторы
Зарегистрирован: 12.12.2007(UTC) Сообщений: 6,393 Откуда: КРИПТО-ПРО Сказал «Спасибо»: 37 раз Поблагодарили: 717 раз в 621 постах
|
Существуют успешные реализации этих колбэков на .net :) |
|
|
|
|
Статус: Активный участник
Группы: Участники
Зарегистрирован: 07.12.2009(UTC) Сообщений: 119 Откуда: Moscow
|
а можете привести пример или хотябы ссылочку дать, как это делается на.net
|
|
|
|
Статус: Сотрудник
Группы: Администраторы
Зарегистрирован: 12.12.2007(UTC) Сообщений: 6,393 Откуда: КРИПТО-ПРО Сказал «Спасибо»: 37 раз Поблагодарили: 717 раз в 621 постах
|
|
|
|
|
|
Статус: Активный участник
Группы: Участники
Зарегистрирован: 07.12.2009(UTC) Сообщений: 119 Откуда: Moscow
|
т.е. предлагает использовать типа DLLImport или что-то другое чтобы вызвать функции из C, просто зачем мне C когда я на C# ))) если переходить на С . то там я как раз и использую CryptMsgControl и другие для расшифровки зашифровки. Просто на C++ много косяков чтобы сделать расшифровку, много времени уходит на это. Можт быть у кого-нибудь есть примерчик расшифровки на C++ хотябы, а то на форуме эта тема поднималась но помоему не была законченна...
|
|
|
|
Статус: Сотрудник
Группы: Администраторы
Зарегистрирован: 12.12.2007(UTC) Сообщений: 6,393 Откуда: КРИПТО-ПРО Сказал «Спасибо»: 37 раз Поблагодарили: 717 раз в 621 постах
|
|
|
|
|
|
Статус: Активный участник
Группы: Участники
Зарегистрирован: 24.12.2007(UTC) Сообщений: 390 Откуда: КриптоПро Поблагодарили: 2 раз в 2 постах
|
Пример, по ссылке выше, не совсем корректный: 1) не работоспособен с ГОСТ; 2) исходный файл читается полностью, поэтому пример не совсем поточный; 3) пример не работает на больших объемах исходных файлов (не поддерживает BER, ошибки в int-long...) Поэтому выкладываю исправленный. Кроме того, добавлена обработка флага detached. Пример войдет в обновленный КриптоПро SDK, а пока доступен тут. StreamSign.cs - поточная подпись StreamVerify.cs - поточная проверка StreamHelper.cs - прослойка на Win32 для CMS. Нужен как для подписи так и для шифрования. Вложение(я): StreamHelper.cs (9kb) загружен 79 раз(а). StreamSign.cs (18kb) загружен 93 раз(а). StreamVerify.cs (15kb) загружен 72 раз(а).У Вас нет прав для просмотра или загрузки вложений. Попробуйте зарегистрироваться. |
С уважением, Александр. |
|
|
|
Быстрый переход
Вы не можете создавать новые темы в этом форуме.
Вы не можете отвечать в этом форуме.
Вы не можете удалять Ваши сообщения в этом форуме.
Вы не можете редактировать Ваши сообщения в этом форуме.
Вы не можете создавать опросы в этом форуме.
Вы не можете голосовать в этом форуме.
Important Information:
The Форум КриптоПро uses cookies. By continuing to browse this site, you are agreeing to our use of cookies.
More Details
Close