26.01.2007 8:48:17Шифрование файла Ответов: 2
Волков
Требуется сделать следующее. Организовать обмен шифрование файлов между пользователями. Я вижу это так. Пользователи получают сертификаты с закрытыми ключами, далее обмениваются сертификатами и шифруют и расшифровывают файлы с помощью моей программы. Нет ли у кого работающего примера на с++? Смотрел в sdk взятом с этого сайта, там прежде чем шифровать файл требуется в файл public.bin записать открытый ключ получателя, согласно тому примеру нужно знать контейнер из которого брать сертификат, а какое имя контейнера в котором находится сертификат получателя?
 
Ответы:
26.01.2007 14:29:23Юрий Маслов
А может проще воспользоваться готовыми решениями? :-)
Предлагается следующее решение.
Каждое рабочее место участников обмена документами оборудуется следующим ПО:
1. СКЗИ "КриптоПро CSP" версии 3.0 (клиент) - 1200 рублей за лицензию на 1 рабочее место. http://www.cryptopro.ru/cryptopro/products/csp/default.htm
2. Приложение "КриптоАРМ " - 600 рублей за лицензию на 1 рабочее место. http://www.cryptopro.ru/cryptopro/products/crypto-arm/default.htm

С помощью этого ПО подписываются/шифруете файлы, дальше передаете эти файлы по любым каналам связи.

Для формирования ЭЦП необходимы еще ключи и сертификаты открытых ключей. Если у Вас юридически значимый документооборот (может возникнуть ситуация о представлении документов в суд в качестве письменных доказательств) то тогда нужно еще получить услугу удостоверяющего центра (УЦ) http://www.cryptopro.ru/cryptopro/services/ca-service.htm
Рекомендуемая в Вашем случае схема: "Распределенная С Оператором". Подробнее посмотрите на сайте по указанной выше ссылке.

Если не юридически значимый то можете выделить компьютер с Windows 2003 Server, поставить на него СКЗИ "КриптоПро CSP" (еще 1200 рублей) и поднять службу сертификации из состава ОС. С ее помощью изготовить ключи и сертификаты и раздать участникам документооборота.
26.01.2007 14:37:13Kirill Sobolev
+1
По шифрованию - в шифрованном сообщении указываются данные сертификата получателя. Подразумевается, что его сертификат с секретным ключем установлен в каком-то заранее оговоренном месте, где программа его ищет. Обычно это хранилище "Личные"