Криптоарм командная строка

Криптоарм командная строка

Есть вопрос по технической поддержке? Для начала перейдите на вкладку «Часто задаваемые вопросы», возможно готовый ответ окажется там. Это сэкономит вам ваше время.

Не нашли готового ответа во вкладке «Часто задаваемые вопросы»?

Оглавление:

Напишите нам на или воспользуйтесь специальной формой.

Техническая поддержка по телефону не оказывается. Полную информацию об условиях ее предоставления смотрите в разделе «Регламент технической поддержки»

Номер сборки 5.4.2.280 от 17.12.2018, x64/x86. Список изменений.

Номер сборки 4.7.1.8578 от 17.01.2014, x64/x86.

Номер сборки 5.3.0.8941 от 06.07.2015., x86/x64.

Скрипт автоматизации обновления CRL

Содержит описание и примеры консольных команд

Описание доступа к программному интерфейсу

Полное руководство пользователя программы

Полное руководство пользователя программы

О том какие версии программы и кому продавать

Short guide how to sign & encrypt files with CryptoARM

Как установить и как пользоваться программой

Источник: http://trusted.ru/support/downloads/

КриптоПро

Приложение cryptcp

Приложение командной строки для создания запросов на сертификаты, шифрования и расшифрования файлов, создания и проверки электронной подписи файлов с использованием сертификатов открытых ключей, хэширования файлов. Результатом работы приложения в большинстве случаев является файл с CMS-сообщением (PKCS#7) в кодировке DER или BASE64.

Алгоритмы

Приложение поддерживает все современные криптографические алгоритмы, в том числе подпись по ГОСТ Р 34.и по ГОСТ Р 34.(256 бит и 512 бит), хэш по ГОСТ Р 34.11-94 и по ГОСТ Р 34.(256 бит и 512 бит), а также подпись RSA, ECDSA, хэш SHA-1, SHA-2 и т.п.

Системные требования

Приложение cryptcp требует установленного СКЗИ КриптоПро CSP и работает на тех же ОС, на которых работает это СКЗИ.

Лицензирование

Для ОС семейства Windows приложение командной строки cryptcp имеет отдельную лицензию, отличную от лицензии на КриптоПро CSP для Windows. Для приобретения лицензии на приложение командной строки cryptcp для Windows обращайтесь на страницу приобретение.

Для ОС семейства Unix приложение командной строки не требует отдельной лицензии.

Загрузка

Начиная с КриптоПро CSP 3.9 приложение cryptcp входит в состав дистрибутивного диска СКЗИ (как на *nix, так и на Windows) и доступно для скачивания на странице загрузки СКЗИ. Наиболее актуальная версия приложения доступна по ссылкам ниже.

Источник: http://www.cryptopro.ru/products/other/cryptcp

Технические требования и рекомендации по встраиванию средств электронной подписи во внешние информационные системы

Формат электронного сообщения, подписанного ЭЦП

ЭЦП подписывается не почтовое сообщение, а непосредственно сам электронный документ (edi или xml файл, содержащий данные документа).

Результатом при этом является файл в PKCS#7 формате, включающий:

  • исходный документ;
  • цифровую подпись;
  • сертификат лица, подписавшего документ.

Укрупненный алгоритм получения подписанного документа:

Пример (zip, 3 КБ, в состав архива входят неподписанный документ, подписанный документ и тестовый сертификат, использованный для подписи)

Базовое программное обеспечение для подписи электронных документов

В качестве базового ядра, обеспечивающего реализацию криптографических алгоритмов для подписания и проверки подписанных документов, используется программное обеспечение компании КРИПТО-ПРО.

Независимо от выбранного Вами сценария получения подписанного документа Вам необходимо приобрести Криптопровайдер КриптоПро CSP 3.6 и установить его на все компьютеры (рабочие станции или серверы), где будет производится непосредственное подписание документов.

Скачать тестовую версию КриптоПро CSP (действительна в течение 90 дней) с сайта КРИПТО-ПРО.

Получение сертификатов ЭЦП

При необходимости возможна также генерация временных сертификатов ЭЦП для проведения тестирования разрабатываемого Вами механизма создания ЭЦП для Ваших информационных систем.

Внешние приложения для подписи электронных документов

Ниже описаны те программные решения, которые были найдены и опробованы нами в рамках разработки приемной части электронного обмена с использованием ЭЦП.

Мы не настаиваем на использовании именно этого программного обеспечения, если вы сможете найти более дешевые(или бесплатные)/удобные/доступные альтернативы – можно попробовать использовать их.

Интерактивная утилита

Для создания и проверки подписанных ЭЦП документов в интерактивном режиме (при участии пользователя) можно воспользоваться программой КриптоАРМ, демонстрационную версию которой можно скачать здесь.

Консольная утилита (приложение командной строки)

Краткое описание использования:

Примеры программной реализации

Visual Basic

Одним из вариантов является создание подписи с использованием COM технологии, например из Visual Basic.

Для реализации этого подхода потребуется библиотека CAPICOM (распространяется компанией Microsoft бесплатно)

Вместе с данной библиотекой поставляется достаточно обширный набор примеров. Основная проблема при работе с CAPICOM связа с тем, что он не может корректно обработать бинарные данные (не Unicode строки) нечетной длины. Про данную проблему и методы ее решения можно детально почитать тут:

В случае отправки сообщений (EDIFACT и XML) для нашей системы это проблема может быть просто решена путем добавления пробела в конец файла для получения документа четной длины.

Вот пример подписи на Visual Basic:

Проект полностью можно скачать здесь (zip, 109 КБ).

198035, Санкт-Петербург, Межевой канал, д. 5, 3-й район

Источник: http://www.fct.ru/edi/IntegrationReq.php

Утилита Csptest.exe¶

Утилита сsptest.exe , входит в состав программы КриптоПро и позволяет выполнять операции через командную строку. Это дает возможность автоматизировать выполняемые действия с помощью скриптов.

Далее будут рассмотрены основные команды утилиты сsptest.exe и скрипты, позволяющие выполнить массовое копирование контейнеров закрытых ключей и установку сертификатов.

Для удобства, перед выполнением команд перейдите в папку C:\Program Files\Crypto Pro\CSP , выполнив в командной строке команду: cd «C:\Program Files\Crypto Pro\CSP»

Справка по csptest.exe¶

Посмотреть все параметры утилиты сsptest.exe :

Основные команды csptest.exe¶

Просмотр списка контейнеров закрытых ключей¶

Список контейнеров выводится с помощью параметра -keyset :

Для просмотра списка контейнеров на съемных носителях используется параметр -machinekeys . В данном случае не будут показаны ключи, установленные в реестр:

Пример вывода команды:

Флешки и дискеты обозначаются как FAT12_x , где и x буква, присвоенная съемному носителю.

Носитель будет отображен данной командной только в том случае, если на нем есть контейнеры.

Копирование контейнера¶

Копирование контейнера осуществляется с помощью параметра -keycopy :

  • -src — имя контейнера. Имена контейнеров уникальны, поэтому можно не указывать путь к носителю, КриптоПро сама найдет путь к контейнеру.
  • -dest — имя скопированного контейнера, оно должно отличаться от исходного имени. Так же можно указать путь к контейнеру, например, если указать -dest «\\.\FAT12_H\2015ZAO_3» , то контейнер будет скопирован на флэшку. Если не указать путь к носителю, а просто задать название контейнеру, то крипто про выведет графический диалог выбора носителя для копирования.
  • -pinsrc — пароль от исходного контейнера, если пинкода нет, то данный параметр можно не указывать.
  • -pindest — пароль на скопированный контейнер. Чтобы подавить графический диалог установки пароля при автоматическом копировании контейнеров, можно указать пустой пароль, выполнив -pindest=»»

Например, рассмотрим копирование контейнера с рутокена в реестр:

Аналогичная ситуация с рутокенами, в данном случае программа не различает понятия пароль и пин-код. Т.е. чтобы скопировать контейнер с рутокена на носитель можно команде -pinsrc присвоить стандарнтный пин-код от Рутокена. В таком случае не будет выводиться запрос на ввод пин-кода Рутокена.

Копирование на Рутокен¶

К сожалению, копирование контейнера на Рутокен работает не совсем гладко. Если параметру -dest указать значение \\.\Aktiv Co. ruToken 0\Имя_контейнера , то будет выведено пустое окно КриптоПро для выбора ключевого носителя.

В данном случае лучше передать параметру -dest просто название контейнера, без указания пути к носителю, но тогда при копировании каждого контейнера будет появляться уже не пустое окно КриптоПро для выбора ключевого носителя, в котором надо будет вручную выбирать нужный Рутокен.

С другой стороны, такое поведения достаточно удобно при копировании большого числа контейнеров на разные Рутокены. Можно контролировать заполненность носителя.

Установка сертификатов¶

Установка сертификатов производится параметром -cinstall :

Источник: http://cmd.readthedocs.io/csptest.html

КриптоПРО: Bat файл создания ЭЦП

Сегодняшнюю небольшую запись я решил посветить теме создания электронной цифровой подписи средствами криптопровайдера «КриптоПРО». Речь пойдет о Bat файле, который можно будет использовать для автоматизации подписи электронных документов.

Для того что бы автоматизировать процесс подписывания электронных документов нам понадобится: 1) Крипто-ПРО CSP; 2) USB Ключ (например рутокен), вставленный в USB порт; 3) Блокнот (Notepad.exe); 4) Установленные сертификаты для Вашего ключа;

Камнем преткновения во всей этой истории является файл csptest.exe который находится в директории КриптоПро (по умолчанию C:\Program Files\Crypto Pro\CSP\csptest.exe).

Откроем командную строку и выполним команду:

Мы увидим все возможные параметры данного exe файла.

Для того, что бы увидеть параметры той или иной глобальной опции, достаточно вызвать данный файл с этой опцией, например

Таким образом, чтобы подписать файл через cmd средствами csptest.exe нужно вызвать команду:

где: -my — Указывает владельца ключа; -in — Указывает какой файл нужно подписывать. Если файл находится не в папке с csptest то нужно указывать полный путь.; -out — Указывает имя файла подписи;

Проверить подпись можно на сайте Госулсуг по данной ссылке .

Скорей всего. Если сейчас загрузить данный файл на сайте госуслуги, то появится ошибка. Вызвано это тем, что необходима информация об удостоверяющем центре. Так же не будет лишней дата и время подписи документов. Для этого к нашей команде нужно добавить два параметра:

Если же нам нужна подпись в осоединенном формате, то добавим еще один параметр:

Примечание:Если подпись документа выполняется с ошибкой Unable to open file An error occurred in running the program. .\signtsf.c:321:Cannot open input file. Error number 0x2 (2). Не удается найти указанный файл. при вызове, как в последнем примере, и Вы уверены в правильности путей в параметре -in и -out, попробуйте создать подпись по первому примеру, а после выполнить команду с полным набором параметров.

Основную команду для подписи мы получили. Теперь немного упростим процедуру. Сделаем bat файл, при запуске которого будет подписывать файл Secret.txt, находящийся в тойже папке что и bat файл. Откроем блокнот и запишем слудующий код:

Нажимаем «Файл» -> «Сохранить как» -> ЗадаемИмя с .bat -> «Сохранить» Собсвенно и все. Для справки: chcp 1251 — Задает кодировку для CMD. Необходимо для валидной обработки русских букв в коде; set CurPath=%cd% — Сохраняет путь текущей директории CMD в переменную CurPath; cd — Задает текущий путь CMD; call — Запускает программу;

Источник: http://blog.foolsoft.ru/kriptopro-bat-fajl-sozdaniya-ecp/

КРИПТО-ПРО. Приложение командной строки (версия 3.3x)

Транскрипт

1 , Москва, ул. Сущёвский вал, д. 16 строение 5 Для писем: , г. Москва, а/я «КРИПТО-ПРО» (б/н) Телефон/факс: +7 (495) , +7 (495) КРИПТО-ПРО Приложение командной строки (версия 3.3x) Москва 2009

2 OOO «Крипто-Про», Все права защищены. Авторские права на средство криптографической защиты информации КриптоПро CSP и эксплуатационную документацию зарегистрированы в Российском агентстве по патентам и товарным знакам (Роспатент). Свидетельство об официальной регистрации программ для ЭВМ от 14 марта 2001 года. 1

3 Содержание Содержание. 2 Аннотация. 3 Общие сведения. 3 Системные требования. 3 Использование программы. 3 Запуск приложения. 3 Критерий поиска сертификатов. 3 Команды шифрования/расшифрования. 4 Работа с пакетами файлов. 5 Работы с подписями. 6 Работа с сертификатами. 8 Работа с запросами на сертификат Команда для работы с серийным номером лицензии Криптопровайдеры «КриптоПро» Возвращаемые коды ошибок

4 Аннотация Данный документ содержит общую информацию о программном продукте компании Крипто-Про Приложение командной строки : требования к системе, руководство по использованию приложения. Общие сведения Данный программный продукт представляет собой приложение командной строки для работы с сертификатами, шифрования/расшифрования данных, создания/проверки цифровых подписей и хеширования данных с использованием инфраструктуры открытых ключей. Системные требования Приложение работает в операционных системах: Microsoft Windows 98 (с установленным Microsoft Internet Explorer 5.0 и выше); Microsoft Windows Millennium Edition; Microsoft Windows 2000 SP4; Microsoft Windows XP SP2; Microsoft Windows 2003 SP1; Solaris 9; FreeBSD 5; Red Hat Linux 7, 9. Для использования команд -creatcert и -pendcert (см. раздел Работа с запросами на сертификат ) с адресом ЦС вида \\сервер\имяцс необходимо запускать приложение в операционной системе Microsoft Windows 2000/2003 Server. Опции для работы со штампами времени (-sd и -ss) доступны только в Windows-версии приложения и, в случае работы на Windows 98/ME, требуют наличия в системе «winhttp.dll» и «unicows.dll». Кроме этого, для работы приложения необходим криптопровайдер КриптоПро CSP. Использование программы Запуск приложения Программа реализована в виде исполняемого файла cryptcp.exe. Для ее запуска необходимо выполнить следующую команду: [путь]cryptcp [ [ ]] путь путь к месторасположению программы (например, c:\utils\ ); cryptcp имя исполняемого файла приложения; команда одна из допустимых команд (см. ниже); опции параметры команды (свои для каждой команды), начинающиеся с — ; файлы имена одного или двух файлов, в зависимости от команды. Порядок файлов в командной строке относительно друг друга должен быть такой, как указано в описании команды. Примечание: К понятию файл также относятся маски файлов. Если не указать команду, то на экран выводится список всех доступных команд с их кратким описанием. Для получения более детального описания определенной команды, необходимо указать опцию -help. При описании опций звездочкой (*) помечена опция по умолчанию (для нескольких взаимоисключающих опций). Критерий поиска сертификатов Критерий поиска сертификатов (далее КПС) используется для задания сведений о субъектах, чьи сертификаты будут использоваться при выполнении команды (например, шифрование или подпись данных). Если в команда такова, что КПС должен удовлетворять только один сер- 3

5 тификат, то такой КПС будет обозначаться КПС1. КПС задается в форме опций командной строки, которые имеют следующий синтаксис: [-dn ]n раз [-[ ] -f ]k раз [-all -1 -q[n]] [] -dn указание строк для поиска в RDN (иначе поиск не зависит от RDN); RDN список строк (через запятую), используемых для поиска сертификатов. Будут найдены сертификаты, в RDN субъекта которых присутствуют все эти строки. -m поиск осуществляется в хранилищах компьютера (LOCAL_MACHINE); -u* поиск осуществляется в хранилищах пользователя (CURRENT_USER); имя название хранилища (по умолчанию My для создания подписи или расшифровки и My+Addressbook для остальных случаев); -f в качестве хранилища используется сообщение или файл сертификата; файл имя файла; -all* использовать все найденные сертификаты (* для КПС); -1* будет найден только один сертификат, иначе ошибка (* для КПС1); -q[n] если найдено менее N сертификатов, то вывести запрос для выбора нужного (по умолчанию N=10); -nochain не проверять цепочки найденных сертификатов; -norev не проверять сертификаты в цепочке на предмет отозванности; -errchain завершать выполнение с ошибкой, если хотя бы один сертификат не прошел проверку. Примеры использования КПС можно найти в описаниях команд, использующих его. Примечание: Если внутри опции имя или RDN присутствуют пробелы, то ее необходимо заключить в кавычки. То же относится к именам файлов и папок. Иван неверно; Иван верно; верно. Команды шифрования/расшифрования -encr [-der] Зашифровать данные и создать сообщение. КПС КПС получателей; -der использовать формат DER вместо BASE64; входной файл файл, содержащий входные данные; сообщение файл, который будет содержать созданное сообщение. Примечание: Для того чтобы зашифровать данные на себя, необходимо указать КПС своего сертификата. Примеры : cryptcp -encr -dn «Иванов -umy -der test.txt test1.msg Зашифровать содержимое файла «test.txt» в «test1.msg» (бинарный формат), используя ВСЕ сертификаты хранилища «Личные» («My») текущего пользователя (а не локального компьютера), содержащие в поле «Субъект» («Subject») подстроки «Иванов Петр» и cryptcp -encr -f «a:\petr s cert.p7b» test.txt test1.msg Зашифровать содержимое файла «test.txt» в «test1.msg» (формат BASE64), используя сертификат из файла «a:\petr s cert.p7b». 4

6 -decr [-start] [-pin -askpin] Расшифровать данные из сообщения. КПС1 КПС получателя; -start открыть (запустить) полученный файл; -askpin запросить пароль ключевого контейнера с консоли; -pin задать пароль ключевого контейнера; пароль пароль к ключевому контейнеру; сообщение файл, содержащий сообщение; выходной файл файл, в который будут записаны данные из сообщения. cryptcp -decr -dn «Иванов -start test.msg test2.txt Расшифровать сообщение из файла «test.msg в файл «test2.txt», используя закрытый ключ, связанный с сертификатом хранилища «Личные» («My») текущего пользователя, содержащим в поле «Субъект» («Subject») подстроки «Иванов Петр» и а затем открыть полученный файл. Работа с пакетами файлов [-dir ] -hash [-provtype ] [-provname ] Получить хеши файлов и записать их в файлы имя_исходного_файла.hsh. -dir указать папку для файлов с хешами, иначе текущая; -provtype указать тип криптопровайдера (N) (по умолчанию 75); -provname указать имя криптопровайдера (CSP); маска файлов стандартная маска хешируемых файлов. Примечание: Если опция -provname не указана, то будет использован провайдер по умолчанию указанного типа (-provtype). Если указанная папка не существует, то она будет создана. cryptcp -hash -dir hashes -provtype 75 *.exe Создать для всех файлов с расширением «exe» текущей папки хеши и записать их в папку «hashes». При хешировании использовать криптопровайдер по умолчанию для типа 75. [-dir ] -vhash [-provtype ] [-provname ] Проверить хеши файлов, созданные с помощью предыдущей команды. -dir указать папку с файлами, содержащими хеши, иначе текущая; -provtype указать тип криптопровайдера (N) (по умолчанию 75); -provname указать имя криптопровайдера ( ); маска файлов стандартная маска проверяемых файлов. Примечание: Если опция -provname не указана, то будет использован провайдер по умолчанию указанного типа (-provtype). cryptcp -vhash -dir c:\hashes -provtype 75 *.exe Проверить для всех файлов с расширением «exe» текущей папки хеши, используя хеши, хранящиеся в папке «c:\hashes». При хешировании использовать криптопровайдер по умолчанию для типа 75. 5

7 [-dir ] -signf [-cert] [-crl] [-der] [-sd[ ]] [-ss[ ]] [-nostampcert] [-pin -askpin] Создать подписи файлов и записать их в файлы имя_исходного_файла.sgn. -dir указать папку для файлов с подписями, иначе текущая; КПС1 КПС автора подписи; -cert добавлять в подписи сертификат отправителя; -crl добавлять в подписи список отозванных сертификатов; -der использовать формат DER вместо BASE64; -sd добавить в подпись штамп времени на подписываемые данные (подписанный атрибут); -ss добавить в подпись штамп времени на подпись (неподписанный атрибут); URL адрес службы штампов в виде » (можно задать разные для опций -ss и -sd, но, если задан для одной из них, то используется и для второй); -nostampcert не требовать включения в штамп сертификата службы штампов времени (используется вместе с -sd и/или -ss); -askpin запросить пароль ключевого контейнера с консоли; -pin задать пароль ключевого контейнера; пароль пароль к ключевому контейнеру; маска файлов стандартная маска подписываемых файлов. Примечание: Если указанная папка не существует, то она будет создана. cryptcp -signf -dir \signs -umycerts -dn «Иванов d:\*.doc -sdhttp://cryptopro.ru/tsp/tsp.srf Подписать все файлы с расширением «doc» из корневой папки диска «d:», используя закрытый ключ, связанный с сертификатом хранилища «MyCerts» текущего пользователя, содержащим в поле «Субъект» («Subject») подстроки «Иванов Петр» и полученные подписи сохранить в папке signs в корне текущего диска. Кроме этого, получить штампы времени на каждый подписываемый файл и вложить их в соответствующие подписи. [-dir ] -vsignf [-sd[ ]] [-ss[ ]] Проверить подписи файлов, созданные с помощью предыдущей команды. -dir указать папку с файлами, содержащими подписи, иначе текущая; КПС КПС автора подписи; маска файлов стандартная маска проверяемых файлов. -sd проверить штамп времени на подписанные данные (подписанный атрибут); -ss время проверить штамп времени на подпись (неподписанный атрибут); указывается в часах; если указано, то проверяет, чтобы штамп был сделан не ранее указанного количества часов назад от текущего момента; cryptcp -vsignf -dir \signs -umycerts d:\*.doc -sd24 Проверить все файлы с расширением «doc» из корневой папки диска «d:», используя созданные ранее подписи из папки signs в корне текущего диска. Поиск сертификата для проверки подписей искать в хранилище «MyCerts» текущего пользователя. Кроме этого, проверить штамп времени на подпись (неподписанный атрибут) и проверить, чтобы этот штамп был выдан не ранее, чем сутки назад. Работа с подписями 6

8 -sign [-nocert] [-crl] [-der] [-authattr ]n раз [-attr ]k раз [-sd[ ]] [-ss[ ]] [-pin -askpin] Подписать данные и создать сообщение. КПС1 КПС автора подписи; -nocert не добавлять в сообщение сертификат отправителя; -crl добавление списка отозванных сертификатов; -der использовать формат DER вместо BASE64; -authattr добавить подписанный атрибут в подпись; -attr добавить неподписанный атрибут в подпись; атрибут » , » (пример: «1.2.3,attr.bin»); -sd добавить в подпись штамп времени на подписываемые данные (подписанный атрибут); -ss добавить в подпись штамп времени на подпись (неподписанный атрибут); URL адрес службы штампов в виде » (можно задать разные для опций -ss и -sd, но, если задан для одной из них, то используется и для второй); -nostampcert не требовать включения в штамп сертификата службы штампов времени (используется вместе с -sd и/или -ss); -askpin запросить пароль ключевого контейнера с консоли; -pin задать пароль ключевого контейнера; пароль пароль к ключевому контейнеру; входной файл файл, содержащий входные данные; сообщение файл, который будет содержать созданное сообщение. cryptcp -sign -mmy -dn Седов -q5 -nocert -crl -der test.txt test2.msg -sshttp://cryptopro.ru/tsp/tsp.srf Подписать содержимое файла «test.txt» и создать подписанное сообщение «test2.msg» (в бинарном виде), не включающее в себя используемый сертификат, но включающее список отозванных сертификатов центра сертификации, выдавшего используемый сертификат. Кроме этого, получить штамп времени на созданную подпись и вложить ее в сообщение. Поиск используемого сертификата происходит следующим образом: 1. Находятся все сертификаты хранилища «Личные» текущего пользователя и локального компьютера. 2. Если их нашлось более пяти, то — ошибка, иначе пользователю будет предложено выбрать один из найденных сертификатов. -addsign [-nocert] [-crl] [-sd[ ]] [-ss[ ]] [-pin -askpin] [-authattr ]n раз [-attr ]k раз Добавить цифровую подпись в сообщение. КПС1 КПС автора подписи; -nocert не добавлять в сообщение сертификат отправителя; -crl добавление списка отозванных сертификатов; -authattr добавить подписанный атрибут в подпись; -attr добавить неподписанный атрибут в подпись; атрибут » , » (пример: «1.2.3,attr.bin»); -sd добавить в подпись штамп времени на подписываемые данные (подписанный атрибут); 7

9 -ss добавить в подпись штамп времени на подпись (неподписанный атрибут); -askpin запросить пароль ключевого контейнера с консоли; -pin задать пароль ключевого контейнера; пароль пароль к ключевому контейнеру; URL адрес службы штампов в виде » (можно задать разные для опций -ss и -sd, но, если задан для одной из них, то используется и для второй); -nostampcert не требовать включения в штамп сертификата службы штампов времени (используется вместе с -sd и/или -ss); сообщение файл, содержащий сообщение. Примечание: Используется исключительно для добавления подписи в подписанные сообщения. Для текстовых или других файлов не работает. Пример : cryptcp -addsign -m -dn «Иванов test.msg Добавить в подписанное сообщение «test.msg» подпись, используя закрытый ключ, связанный с сертификатом хранилища «Личные» («My») локального компьютера, содержащим в поле «Субъект» («Subject») подстроки «Иванов Петр» и В добавленную подпись будет включен сертификат открытого ключа автора подписи. -delsign Удалить цифровую подпись из сообщения. КПС1 КПС автора подписи; сообщение файл, содержащий сообщение. -verify [ [-verall]] [-start] [-sd[ ]] [-ss[ ]] [ ] Проверка цифровых подписей. КПС КПС авторов подписей; -verall проверять все подписи (иначе только подписи авторов из КПС); -start открыть (запустить) полученный файл; -sd проверить штамп времени на подписанные данные (подписанный атрибут); -ss проверить штамп времени на подпись (неподписанный атрибут); время указывается в часах; если указано, то проверяет, чтобы штамп был сделан не ранее указанного количества часов назад от текущего момента; сообщение файл, содержащий сообщение; выходной файл файл, в который будут записаны данные из сообщения. Примечание: Если в сообщении содержится сертификат кого-то из авторов подписей, то используется именно этот сертификат. Примеры : cryptcp -verify -dn -verall test2.msg test2.txt Проверить подпись сообщения «test2.msg», используя один из найденных сертификатов в хранилищах «Личные» («My») и «Другие пользователи» («AddressBook») текущего пользователя, содержащих в поле «Субъект» («Subject») подстроку и записать содержимое подписанного сообщения в файл «test2.txt». cryptcp -verify -sd3 test2.msg Проверить все подписи сообщения «test2.msg», используя сертификаты, содержащиеся в сообщении. Если для какой-либо подписи в сообщении сертификат не удалось найти, то подпись проверена не будет. Кроме этого, проверить штамп времени на подписанные данные (подписанный атрибут) и проверить, чтобы этот штамп был выдан не ранее, чем три часа назад. 8

10 -addattr [-attr ]n раз Добавить неподписанный атрибут подпись сообщения. КПС1 КПС автора подписи; -attr добавить неподписанный атрибут в подпись; атрибут » , » (пример: «1.2.3,attr.bin»); сообщение файл, содержащий сообщение. Примечание: Используется исключительно для добавления подписи в подписанные сообщения. Для текстовых или других файлов не работает. Работа с сертификатами -copycert [-[ ] -df [-der]] Копировать сертификаты в заданное хранилище. КПС КПС, которые надо скопировать; -dm копирование в хранилище компьютера (LOCAL_MACHINE); -du* копирование в хранилище пользователя (CURRENT_USER); имя название конечного хранилища (по умолчанию My ); -df в качестве хранилища используется файл сертификата; файл имя файла; -der использовать формат DER вместо BASE64 (только с ключом -df). Примечание: Если указан ключ -df, то, в случае, если найден только один сертификат, создается файл типа.cer, иначе.p7b. cryptcp -copycert -u -df a:\mycerts.p7b Копирует все сертификаты хранилища «Личные» («My») текущего пользователя в файл «a:\mycerts.p7b» (в кодировке BASE64). -CSPcert [-provtype ] [-provname ] [-cont ] [-ku -km] [-ex -sg] [-[ ] -df [-der]] Скопировать сертификат из ключевого контейнера в заданное хранилище. -provtype указать тип криптопровайдера (N) (по умолчанию 75); -provname указать имя криптопровайдера (CSP); -cont задать имя ключевого контейнера (по умолчанию выбор из списка); -ku* использовать контейнер пользователя (CURRENT_USER); -km использовать контейнер компьютера (LOCAL_MACHINE); -ex* использовать ключ для обмена зашифрованными данными; -sg использовать ключ для работы с подписями; -dm копирование в хранилище компьютера (LOCAL_MACHINE); -du* копирование в хранилище пользователя (CURRENT_USER); имя название конечного хранилища (по умолчанию My ); -df в качестве хранилища используется сообщение или файл сертификата; файл имя файла; -der использовать формат DER вместо BASE64. Примечание: Если опция -provname не указана, то будет использован провайдер по умолчанию указанного типа (-provtype). Для операционных систем семейства UNIX в качестве параметра опции -cont необходимо указывать имя контейнера вместе со считывателем в формате \\.\имя_считывателя\имя_контейнера (например \\.\HDIMAGE\cont_name ). cryptcp -CSPcert -km -cont WebServer -df a:\webserver.cer -der Копирует сертификат из ключевого контейнера «WebServer» криптопровайдера по умолчанию для типа 75 локального компьютера в файл «a:\webserver.cer» (в кодировке DER). 9

11 -delcert [-yes] Удаление сертификатов из хранилища. КПС КПС удаляемых сертификатов; -yes автоматически отвечать на все вопросы Да. cryptcp -delcert -m -dn OldServer Удаляет все сертификаты хранилища «Личные» («My») локального компьютера, содержащие в поле «Subject» подстроку «OldServer». Работа с запросами на сертификат -creatrqst -dn [-provtype ] [-provname ] [-SMIME] [-nokeygen -exprt] [-ex -sg -both] [-ku -km] [-cont ] [-silent] [-pin -askpin] [-certusage ] [-der] [-ext ]n раз Создание запроса сертификата и сохранение его в файле PKCS #10. RDN список имен полей RDN (например: CN, O, E, L) и их значений вида: = [, = . ] -provtype указать тип криптопровайдера (N) (по умолчанию 75); -provname указать имя криптопровайдера (CSP); -nokeygen использовать существующие ключи из указанного контейнера; -SMIME включить возможности SMIME (по умолчанию нет; только Windows); -exprt пометить ключи как экспортируемые; -ex создать/использовать ключи для обмена зашифрованными данными; -sg создать/использовать ключи только для работы с подписями; -both* создать/использовать оба типа ключей; -ku* использовать контейнер пользователя (CURRENT_USER); -km использовать контейнер компьютера (LOCAL_MACHINE); -cont задать имя ключевого контейнера (по умолчанию выбор из списка); -silent генерация ключа без пользовательского интерфейса криптопровайдера; -askpin запрашивать пароль при создании ключевого контейнера с консоли (только UNIX); -pin установить пароль при создании ключевого контейнера (только UNIX); пароль пароль к ключевому контейнеру (только UNIX); -certusage задать назначения сертификата (OIDs). Если назначений несколько, то их необходимо указать через запятую (например, , ); -der использовать формат DER вместо BASE64; -ext добавить расширение к запросу (Windows XP и выше, UNIX); расширение имя файла с закодированным расширением (BASE64 или DER); имя файла имя файла, в котором следует сохранить запрос. Примечание: Если опция -provname не указана, то будет использован провайдер по умолчанию указанного типа (-provtype). Далее, если не указаны опции -nokeygen и -cont, то имя контейнера сгенерирует криптопровайдер. Для операционных систем семейства UNIX в качестве параметра опции -cont необходимо указывать имя контейнера вместе со считывателем в формате \\.\имя_считывателя\имя_контейнера (например \\.\HDIMAGE\cont_name ). cryptcp -creatrqst c:\request.der -provtype 75 -cont Ivanov -dn Петр» -both -ku -provname «Crypto-Pro GOST R Cryptographic Service Provider» 10

12 Создать запрос на субъект Петр», используя открытый ключ, сгенерированный в контейнере «Ivanov» текущего пользователя криптопровайдером «Crypto-Pro GOST R Cryptographic Service Provider» (тип — 75) и сохранить его в файл c:\request.der в кодировке Base64. Назначения ключа — подпись и шифрование. -instcert [-provtype ] [-provname ] [-cont ] [-ku -km] [-[ ]] [-nocsp] [-pin -askpin] Установка сертификата из файла PKCS #7 или файла сертификата. -provtype указать тип криптопровайдера (N) (по умолчанию 75); -provname указать имя криптопровайдера (CSP); -cont задать имя ключевого контейнера (по умолчанию выбор из списка); -ku* использовать контейнер пользователя (CURRENT_USER); -km использовать контейнер компьютера (LOCAL_MACHINE); -dm установка в хранилище компьютера (LOCAL_MACHINE); -du* установка в хранилище пользователя (CURRENT_USER); имя название конечного хранилища для установки (по умолчанию My ); -nocsp не сохранять сертификат в контейнере криптопровайдера; -askpin запросить пароль ключевого контейнера с консоли (только UNIX); -pin задать пароль ключевого контейнера (только UNIX); пароль пароль к ключевому контейнеру (только UNIX); -enable-install-root не запрашивать разрешение на установку корневого сертификата в хранилище Доверенные корневые центры (Root) (только UNIX); имя файла имя файла, содержащего сертификат. Примечание: Если указана опция nocsp, то опции provname, provtype, cont, km, ku игнорируются. Если опция -provname не указана, то будет использован провайдер по умолчанию указанного типа (-provtype). Для операционных систем семейства UNIX в качестве параметра опции -cont необходимо указывать имя контейнера вместе со считывателем в формате \\.\имя_считывателя\имя_контейнера (например \\.\HDIMAGE\cont_name ). -creatcert -dn [-provtype ] [-provname ] [-SMIME] [-nokeygen -exprt] [-] [-cont ] [-ku -km] [-certusage ] [-CA ] [-[ ]] [-nocsp] [-silent] [-pin -askpin] [-FileID ] [-ext ]n раз Создать запрос на сертификат, отправить его в центр сертификации, получить выписанный сертификат и установить его. RDN список имен полей RDN (например: CN, O, E, L) и их значений вида: = [, = . ] -provtype указать тип криптопровайдера (N) (по умолчанию 75); -provname указать имя криптопровайдера (CSP); -SMIME включить возможности SMIME (по умолчанию нет; только Windows); -nokeygen использовать существующие ключи из указанного контейнера; -exprt пометить ключи как экспортируемые; -ex создать/использовать ключи для обмена зашифрованными данными; -sg создать/использовать ключи только для работы с подписями; -both* создать/использовать оба типа ключей; -ku* использовать контейнер пользователя (CURRENT_USER); -km использовать контейнер компьютера (LOCAL_MACHINE); -cont задать имя ключевого контейнера (по умолчанию выбор из списка); -certusage задать назначения сертификата (OIDs). Если назначений несколько, то их нужно указать через запятую (например, , ); 11

13 -CA указать адрес центра сертификации, иначе это адрес CP CSP Test CA ; адрес ЦС вида или \\сервер\имяцс (см. Системные требования ); -dm установка в хранилище компьютера (LOCAL_MACHINE); -du* установка в хранилище пользователя (CURRENT_USER); имя название конечного хранилища для установки (по умолчанию My ); -nocsp не сохранять сертификат в контейнере криптопровайдера; -silent генерация ключа без пользовательского интерфейса криптопровайдера; -askpin запрашивать пароль при создании ключевого контейнера с консоли (только UNIX); -pin установить пароль при создании ключевого контейнера (только UNIX); пароль пароль к ключевому контейнеру (только UNIX); -FileID имя файла, используемого для записи идентификатора запроса в случае отложенной выдачи сертификата (см. -pendcert). Если файл не указан, то идентификатор будет выведен на экран. -enable-install-root не запрашивать разрешение на установку корневого сертификата в хранилище Доверенные корневые центры (Root) (только UNIX); -ext добавить расширение к запросу (Windows XP и выше, UNIX); расширение имя файла с закодированным расширением (BASE64 или DER); Примечание: Если опция -provname не указана, то будет использован провайдер по умолчанию указанного типа (-provtype). Далее, если не указаны опции -nokeygen и -cont, то имя контейнера сгенерирует криптопровайдер. Для операционных систем семейства UNIX в качестве параметра опции -cont необходимо указывать имя контейнера вместе со считывателем в формате \\.\имя_считывателя\имя_контейнера (например \\.\HDIMAGE\cont_name ). -pendcert [-provtype ] [-provname ] [-cont ] [-ku -km] [-CA ] [-[ ]] [-nocsp] [-FileID ] [-pin -askpin] Проверить, не выпущен ли сертификат, запрос на который был отправлен ранее, получить выписанный сертификат и установить его. -provtype указать тип криптопровайдера (N) (по умолчанию 75); -provname указать имя криптопровайдера (CSP); -cont задать имя ключевого контейнера (по умолчанию выбор из списка); -ku* использовать контейнер пользователя (CURRENT_USER); -km использовать контейнер компьютера (LOCAL_MACHINE); -CA указать адрес центра сертификации, иначе это адрес CP CSP Test CA ; адрес ЦС вида или \\сервер\имяцс (см. Системные требования ); -dm установка в хранилище компьютера (LOCAL_MACHINE); -du* установка в хранилище пользователя (CURRENT_USER); имя название конечного хранилища для установки (по умолчанию My ); -nocsp не сохранять сертификат в контейнере криптопровайдера; -FileID имя файла, содержащего идентификатор запроса. Если не файл не указан, то идентификатор нужно будет ввести вручную. -askpin запросить пароль ключевого контейнера с консоли (только UNIX); -pin задать пароль ключевого контейнера (только UNIX); пароль пароль к ключевому контейнеру (только UNIX); -enable-install-root не запрашивать разрешение на установку корневого сертификата в хранилище Доверенные корневые центры (Root) (только UNIX); Примечание: Если указана опция nocsp, то опции provname, provtype, cont, km, ku игнорируются. Если опция -provname не указана, то будет использован провайдер по умолчанию указанного типа (-provtype). Для операционных систем семейства UNIX в качестве пара- 12

14 метра опции -cont необходимо указывать имя контейнера вместе со считывателем в формате \\.\имя_считывателя\имя_контейнера (например \\.\HDIMAGE\cont_name ). Команда для работы с серийным номером лицензии (только для Windows) -sn [ ] Сохранить/показать серийный номер лицензии. серийный номер серийный номер, который необходимо сохранить (можно указывать как с разделителями, так и без них). Примечание: Для того чтобы посмотреть сохраненный серийный номер, достаточно указать команду -sn без параметра. В операционных системах семейства UNIX используется серийный номер лицензии криптипровайдера. cryptcp -sn P020G-Q0010-A UXA-XUFFD Сохраняет указанный серийный номер лицензии на компьютере. Криптопровайдеры «КриптоПро» CryptoPro CSP 1.1 Имя Crypto-Pro Cryptographic Service Provider Тип 2 CryptoPro CSP 2.0 Имя Crypto-Pro GOST R Crypto-Pro GOST R Cryptographic Service Provider Cryptographic Service Provider Тип CryptoPro CSP 3.0 (kc1) Имя Crypto-Pro GOST R KC1 CSP Crypto-Pro GOST R KC1 CSP Тип CryptoPro CSP 3.0 (kc2) Имя Crypto-Pro GOST R KC2 CSP Crypto-Pro GOST R KC2 CSP Тип Возвращаемые коды ошибок Код ошибки (DEC) Код ошибки (HEX) Описание ошибки Мало памяти Не удалось открыть файл Операция отменена пользователем Некорректное преобразование BASE Если указан параметр ‘-help’, то других быть не должно C8 Указан лишний файл C9 Указан неизвестный ключ CA Указана лишняя команда 13

15 CB Для ключа не указан параметр CC Не указана команда CD Не указан необходимый ключ: CE Указан неверный ключ: CF Параметром ключа ‘-q’ должно быть натуральное число D0 Не указан входной файл D1 Не указан выходной файл D2 Команда не использует параметр с именем файла D3 Не указан файл сообщения C Не удалось открыть хранилище сертификатов: D Сертификаты не найдены E Найдено более одного сертификата (ключ ‘-1’) F Команда подразумевает использование только одного сертификата Неверно указан номер Нет используемых сертификатов Данный сертификат не может применяться для этой операции Цепочка сертификатов не проверена Криптопровайдер, поддерживающий необходимый алгоритм не найден Неудачный ввод пароля ключевого контейнера Не указана маска файлов Указаны несколько масок файлов Файлы не найдены Задана неверная маска Неверный хеш F4 Ключ ‘-start’ указан, а выходной файл нет F5 Содержимое файла — не подписанное сообщение F6 Неизвестный алгоритм подписи F7 Сертификат автора подписи не найден F8 Подпись не найдена F9 Подпись не верна Штамп времени не верен Содержимое файла — не зашифрованное сообщение Неизвестный алгоритм шифрования A Не найден сертификат с соответствующим секретным ключом BC Не удалось инициализировать COM BD Контейнеры не найдены BE Не удалось получить ответ от сервера BF Сертификат не найден в ответе сервера C0 Файл не содержит идентификатор запроса: C1 Некорректный адрес ЦС C2 Получен неверный Cookie Серийный номер содержит недопустимое количество символов Неверный код продукта Не удалось проверить серийный номер Не удалось сохранить серийный номер Не удалось загрузить серийный номер Лицензия просрочена Примечание: Кроме кодов, приведенных в таблице, приложение может возвращать код любой системной ошибки Windows. 14

Источник: http://docplayer.ru/Kripto-pro-prilozhenie-komandnoy-stroki-versiya-3-3x.html

Работа с КриптоПро на linux сервере

Ссылки

Лицензия

Для установки другой лицензии (под root):

Корневые сертификаты

Просмотр корневых сертификатов

Добавление корневых сертификатов (под root) из файла cacer.p7b

Необходимо последовательно добавить сертификаты 1-7

Сертификаты

Список установленных сертификатов

certmgr -list , например:

Добавление реального сертификата

Добавить только сертификат (только проверка ЭЦП):

Добавление реального сертификата с привязкой к закрытому ключу и возможностью подписывать документы

Закрытый ключ состоит из шести key-файлов:

Способ с дискетой или флешкой

Скопировать в корень дискеты или флэшки сертификат и приватный ключ (из каталога.000 ,название (alias) контейнера):

Выполнить команду по копированию ключа с флэшки на диск, ключ попадет в пользовательское хранилище My .

— то, что прописано в поле E сертификата (можно посмотреть командой keytool —printcert -file /path/to/cert/client.cer ):

С жесткого диска

Скопировать приватный ключ в хранилище (контейнер), где — имя пользователя linux:

Поставить «минимальные» права:

Узнать реальное название контейнера:

Ассоциировать сертификат с контейнером, сертификат попадет в пользовательское хранилище My :

Если следующая ошибка, нужно узнать реальное название контейнера (см. выше):

Установить сертификат УЦ из-под пользователя root командой:

Проверка успешности установки закрытого ключа

Добавление тестового сертификата

Ввести пароль на контейнер test123 .

Ввести пароль на контейнер. По-умолчанию:

Удаление сертификата

Проверка сертификата

Просмотр всех атрибутов сертификата

В cryptcp нет необходимых инструментов для получения всех атрибутов сертификата. Поэтому следует использовать openssl , но настроив его.

Получаем SHA 1 хеши:

В цикле извлекаем сертификаты:

Настройка openssl для поддержки ГОСТ:

В файл /etc/ssl/openssl.cnf

Экспорт сертификатов на другую машину

Закрытые ключи к сертификатам находятся тут: /var/opt/cprocsp/keys . Поэтому эти ключи переносятся просто: создаем архив и переносим на нужную машину в тот же каталог.

Экспорт самих сертификатов (если их 14):

Переносим эти файлы на машину и смотрим, какие контейнеры есть:

И как обычно, связываем сертификат и закрытый ключ:

Если закрытый ключ и сертификат не подходят друг к другу, будет выведена ошибка:

Если все успешно:

Если нет закрытого ключа, то просто ставим сертификат:

Подписание документа ЭЦП

Пример создания ЭЦП (по SHA1 Hash):

Проверка подписи ЭЦП

Для верифицирования сертификатов нужен сертификат удостоверяющего центра и актуальный список отзыва сертификатов, либо настроенный для этого revocation provider.

Корневой сертификат УЦ, список отзыва сертификата является одним из реквизитов самого сертификата.

Контрагенты когда открывают подписи в КриптоАРМ используют revocation provider, он делает проверки отзыва сертификата онлайн. Как реализована проверка в Шарепоинте не знаю. Знаю только что используется библиотека Крипто.Net

Проверка конкретной подписи из локального хранилища по его хешу:

Проверить, взяв сертификат из file1.sig , подпись файла file2.sig . Практически, надо использовать один и тот же файл:

Источник: http://pushorigin.ru/cryptopro/cryptcp

Часть 11. Работа с утилитой командной строки КриптоПро.

Подробное описание работы утилиты командной строки КриптоПро содержится в документе «ЖТЯИ.1. Приложение командной строки для подписи и шифрования файлов.pdf».

Часть 12. Задание для защиты лабораторной работы

Задание выполняется каждым студентом индивидуально.

Для защиты лабораторной работы необходимо отправить в адрес

(Сертификат Царев Роман Александрович) электронное письмо со следующими характеристиками:

1. Тема письма: NN_ ФИО студента.

2. Письмо должно быть подписано электронной подписью с использованием сертификата/ключа полученного у преподавателя (Иванов, либо Сумкин, либо Гвоздев, либо Культяпкин, либо Сладиков). Проверка действительности электронной подписи должна быть возможна даже при отсутствии сертификата отправителя на компьютере получателя.

3. Письмо должно быть зашифровано для абонента Царев Роман Александрович (). Расшифровка должна быть возможна только с помощью закрытого ключа Царёва, либо отправителя.

4. [Задание по простановке электронной подписи средствами MS Word] К письму должен быть прикреплён файл MS Word, в котором содержится текст «Привет от ФИО». В поле «Цель подписания документа» указать «ФИО умеет подписывать документы». Имя файла – ФИО.

5. [Задание по работе с командной строкой КриптоПро] К письму должен быть прикреплён текстовый документ (*.txt), зашифрованный таким образом, что расшифровать его возможно только при наличии закрытого ключа соответствующего сертификату Царев Роман Александрович. Также этот файл должен быть подписан электронной подписью с использованием сертификата/ключа полученного у преподавателя.

NN – номер студента по списку группы.

ФИО – фамилия имя отчество студента.

Пояснение: проверить возможность простановки/проверки ЭП и шифрования/расшифрования писем можно используя пять сертификатов/ключей, полученных у преподавателя.

194.48.155.252 © studopedia.ru Не является автором материалов, которые размещены. Но предоставляет возможность бесплатного использования. Есть нарушение авторского права? Напишите нам | Обратная связь.

Отключите adBlock! и обновите страницу (F5)очень нужно

Источник: http://studopedia.ru/19_319763_chast—rabota-s-utilitoy-komandnoy-stroki-kriptopro.html

Обсуждения

Техническая поддержка

866 сообщений

При попытке подписать файл:Не найден используемый криптопровайдер !!Криптопро 3.9 стоит и настроен.Подскажите как решить.

Криптопровайдеры разрешенные пусто так и должно быть?

Добрый день.При попытке подписания на сетевом файловом ресурсе выдает следующую ошибку:Статус завершения операции: Неудача. Длительность выполнения операции: 0:00:01.83 Входной файл: Z:\Documents\08 Отдел информационных технологий\Документ Microsoft Word.docx Выходной файл: Z:\Documents\08 Отдел информационных технологий\Документ Microsoft Word.docx.sig Описание ошибки: Ошибка сохранения сообщения (0x) Ошибка сохранения сообщения (0x) Произошла ошибка при сохранении данных Ошибка загрузки данных Произошла ошибка при добавлении данных в сообщение (0xc)

Подписание документов локально на рабочей станции проходит успешно.

КриптоАРМ, Здравствуйте, у меня тоже возникла подобная ошибка:

«Недавно одна из наших организаций стала приносить нам шифрованные файлы, которые невозможно расшифровать: При попытке подписать выскакивает ошибка:================================================================Описание ошибки:Ошибка сохранения сообщения (0x)Произошла ошибка при расшифровании сообщения. (0x)Произошла ошибка при расшифровке сообщенияНеправильное значение индекса. (0x)================================================================Что только я не пробовала. и сертификаты переустанавливала (личные, уц, др. пользователей) и версию КриптоАрм поменял на последнюю. сертификаты все установлены корректно (КриптоАрм всю цепочку метит зелёным), с кодировкой тоже проблем быть не должно (сам у клиента ставил DER на шифрование и подпись). При этом на проблемном компе шифрованные файлы из других организация расшифровываются без ошибок.Вообщем подскажите, пожалуйста, в какую сторону копать, из за чего может возникать данная ошибка?

» Проверила видит ли он ЭЦП. видит.

Статус завершения операции: Неудача. Длительность выполнения операции: 0:00:00.32 Входной файл: C:\Users\user\Desktop\Шаблон импорта сведений о ценах.xlsx Выходной файл: C:\Users\user\Desktop\Шаблон импорта сведений о ценах.xlsx.sig Описание ошибки: Ошибка сохранения сообщения (0x)

Ошибка сохранения сообщения (0x)

Произошла ошибка при создании подписи

Произошла ошибка при определении размера закодированного сообщения

Виталий, Добрый день! Попробуйте переустановить Ваш сертификат используя КриптоПро CSP. Откройте КриптоПро CSP / вкладка Сервис / Просмотреть сертификаты в контейнере / выберите там ваш сертификат и нажмите кнопку Установить.

А также можно попробовать удалить запомненные пароли на контейнеры сертификатов, для этого воспользуйтесь соответствующей кнопкой в окне КриптоПро CSP на вкладке «Сервис» (в самом низу вкладки). После сброса ПИН-код понадобится ввести и запомнить повторно.

Если ошибка повторится, воспользуйтесь утилитой CSPTest, входящей в состав КриптоПро CSP. Для этого создайте в блокноте текстовый файл, скопируйте в него командную строку: «c:\Program Files\Crypto Pro\CSP\csptest.exe» -sfsign -sign -in sign.bat -out sign.bat.sig -my «» pause

и сохраните его с именем «sign.bat». После этого запустите этот командный файл. Он попытается подписать сам себя. В процессе создания подписи он предложит выбрать сертификат подписи. Для этого нужно будет ввести номер сертификата из списка предложенных (например «1») и нажать Enter.

Если попробуете воспользоваться этой утилитой, сообщите пожалуйста, создастся ли подпись и если нет, то какой будет код ошибки.

Источник: http://vk.com/topic_?post=476