Как расшифровать файл enc (без КриптоАрм) при помощи командной строки (утилита cryptcp)

Если имеется сертификат КриптоПро, но отсутствует программа КриптоАрм и необходимо расшифровать файл enc, то можно сделать это при помощи утилиты командной строки cryptcp.
Утилита бесплатна, входит в состав дистрибутивов или скачивается отдельно с сайта на странице загрузки КриптоПро.
Скачиваем файл нужной битности.


Установки не требуется. Обязательно наличие установленного КриптоПро CSP.
Если запустить файл в командной строке, то будет выведен состав команд:


CryptCP 5.0 "КРИПТО-ПРО". Утилита командной строки для подписи и шифрования файлов.
Список допустимых команд:
-encr создать зашифрованное сообщение
-decr расшифровать сообщение
-sign создать подписанное сообщение
-verify проверить подпись сообщения, получить исходный файл
-addsign добавить подпись в сообщение
-delsign удалить подпись из сообщения
-addattr добавить в подпись неподписанный атрибут
-signf создать подписи файлов в 'исходный_файл.sgn'
-vsignf проверить подписи файлов, созданные с помощью команды '-signf'
-addsignf добавить подпись файла в 'исходный_файл.sgn'
-hash посчитать хэши файлов в 'исходный_файл.hsh'
-vhash проверить хэши файлов, созданные с помощью команды '-hash'
-copycert скопировать сертификаты в заданное хранилище
-cspcert скопировать сертификат из ключевого контейнера в хранилище
-delcert удалить сертификат из хранилища
-listdn вывести на экран политику имен КриптоПро УЦ
-createuser зарегистрировать пользователя на КриптоПро УЦ
-checkreg проверить состояние регистрации пользователя на КриптоПро УЦ
-listtmpl вывести на экран шаблоны, доступные пользователю КриптоПро УЦ
-createrqst создать запрос на сертификат и сохранить его в файле PKCS #10
-instcert установить сертификат из файла PKCS #7 или файла сертификата
-createcert создать запрос на сертификат, отправить его в ЦС
-pendcert проверить, не выпущен ли сертификат
-sn сохранить/показать серийный номер лицензии
-help вывести справку по командам
Список допустимых опций:
-showstat вывести статистику работы программы
[ErrorCode: 0x00000001]

Пример команды для расшифровки файла enc:

"E:\Downloads\cryptcp.x64.exe" -decr -dn "УНИВЕРСИТЕТ" "E:\temp\file.zip.enc" "E:\temp\file.zip"

Разбор команды:
"E:\Downloads\cryptcp.x64.exe" - путь к файлу утилиты.
-decr - указание, что необходимо сделать расшифровку.
-dn "УНИВЕРСИТЕТ" - пример отбора нужного сертификата - при помощи какого сертификата делать расшифровку (в данном случае - указание, что нужно использовать сертификат, у которого в поле Subject есть слово УНИВЕРСИТЕТ.
"E:\temp\file.zip.enc" - путь к зашифрованному файлу
"E:\temp\file.zip.enc" - путь к файлу, куда будет сохранен расшифрованный файл.

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



(с) Ella S.
Если Вам понравилась статья, пожалуйста, поставьте лайк, сделайте репост или оставьте комментарий. Если у Вас есть какие-либо замечания, также пишите комментарии.

4 комментария:

  1. Огромная благодарность за информацию!

    ОтветитьУдалить
  2. Подскажите, есть возможность использовать несколько файлов (массив архивов из файлов file.zip.enc) за одну операцию?
    Пробовал следующие варианты:
    1. В строке где используется путь к файлу который необходимо расшифровать следующий путь: "E:\temp\*.enc" ; "E:\temp\*.enc".
    2. Так же пробовал сохранить все необходимые данные в один архив и из него уже попытался вытащить файлы

    У меня каждый день почти по 30+ файлов приходит, хочется батник написать для удобной работы.

    ОтветитьУдалить
    Ответы
    1. я сделал так: батник со строкой -
      cryptcp.x64.exe -decrf -dn "" "%1"
      настроил ассоциации файлов на компе. Двойной клик на файле с расширением .enc запускает этот батник, утилита cryptcp лежит в папке Windows. В результате работы рядом с file.zip.enc появляется file.zip.
      Если надо подписывать разными ключами, то изменяем строку в батнике на
      cryptcp.x64.exe -decrf -dn "%2" "%1"
      сам батник называем, скажем, decrypt.cmd, копируем в папку из PATH (можно в Windows, рядом с утилитой cryptcp), и в командной строке пишем:
      decrypt file.zip.enc
      В качестве идентификатора лучше использовать цифры, кириллица иногда использует не ту кодовую таблицу.

      Удалить