Если имеется сертификат КриптоПро, но отсутствует программа КриптоАрм и необходимо расшифровать файл enc, то можно сделать это при помощи утилиты командной строки cryptcp.
Утилита бесплатна, входит в состав дистрибутивов или скачивается отдельно с сайта на странице загрузки КриптоПро.
Скачиваем файл нужной битности.
Если запустить файл в командной строке, то будет выведен состав команд:
Список допустимых команд:
-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.
Если Вам понравилась статья, пожалуйста, поставьте лайк, сделайте репост или оставьте комментарий. Если у Вас есть какие-либо замечания, также пишите комментарии.
Спасибо, очень полезно!
ОтветитьУдалитьОгромная благодарность за информацию!
ОтветитьУдалитьПодскажите, есть возможность использовать несколько файлов (массив архивов из файлов file.zip.enc) за одну операцию?
ОтветитьУдалитьПробовал следующие варианты:
1. В строке где используется путь к файлу который необходимо расшифровать следующий путь: "E:\temp\*.enc" ; "E:\temp\*.enc".
2. Так же пробовал сохранить все необходимые данные в один архив и из него уже попытался вытащить файлы
У меня каждый день почти по 30+ файлов приходит, хочется батник написать для удобной работы.
я сделал так: батник со строкой -
Удалить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
В качестве идентификатора лучше использовать цифры, кириллица иногда использует не ту кодовую таблицу.