Перейти к содержанию

Выполнение операций в командной строке или терминале

В данном разделе описана инструкция по выполнению криптографических операций с помощью командной строки (для Windows) и терминала (для Unix - подобных операционных систем).

ВАЖНО! Подпись документов возможна только с лицензией на ПО КриптоАРМ ГОСТ 3.

ВАЖНО! Для подписи документов на рабочем месте необходим установленный криптопровайдер КриптоПро CSP и лицензия на него.

Для выполнения команд в консоли, необходимо придерживаться определенного синтаксиса при написании команды. Описание:

-команда - команда пишется первой, после пути до исполняемого файла. Далее указываются значения переменных и параметры операции.

<текст> - Указываются значения переменной, такие как Серийный номер сертификата, Путь до исходного файла, OID алгоритма шифрования и т.п.

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

Все команды и параметры пишутся через пробел.

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

В ОС Windows путь до исполняемого файла будет выглядеть как "C:\Program Files\CryptoARM>cryptoarm.exe" В Unix - подобных ОС семейства Linux путь до исполняемого файла будет выглядеть как /opt/cryptoarm/cryptoarm На ОС MacOS путь до исполняемого файла будет выглядеть как /Applications/cryptoarm.app/Contents/MacOS/cryptoarm

Для получения справки по операциям необходимо выполнить команды:

cryptoarm.exe --h - выводится полная справка по всем командам

cryptoarm.exe enc -h - выводится справка по команде шифрования

cryptoarm.exe dec -h - выводится справка по команде расшифрования

cryptoarm.exe sig -h - выводится справка по команде подписи

cryptoarm.exe ver -h - выводится справка по команде проверки подписи

Операция Подпись

sign или sig

Команда позволяет выполнить операцию подписи файла или нескольких файлов. Если в исходном файле указать уже подписанный документ, то будет добавлена еще одна подпись к файлу.

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

cryptoarm.exe sign --cert <серийный номер сертификата> [--enc DER|BASE64] [-detached] [--save-copy] [--pin <PIN>] [-ext <sign file extension>] [--standard <CAdES-T|CAdES-A|CAdES-XLT1> --tsp <tsp-addr> [-ocsp <ocsp-addr>] [-proxy <proxy-address> [-proxy-port <port>] [-proxy-login <login>] [-proxy-password <password>]]] --source-file <путь к файлу>|--source-folder <путь к папке>

Описание команды: - –cert - команда для указания сертификата подписи - -detached - указать, что подпись должна быть отсоединенная. По умолчанию используется присоединенная подпись - --enc DER|BASE-64 - указать в какой кодировке будет сохранен подписанный файл. По умолчанию используется кодировка DER - –save-copy - копия результата будет сохранена в папку Архив - --pin <PIN> - указать пароль на контейнер сертификата - --ext <sign file extension> - указать расширение создаваемого файла подписи. Расширение по умолчанию "sig", можно указать расширения “sgn”, “sign”. “p7s”, “bin” - --sign-type <CadesT|CadesA|CadesXLT1> - указать стандарт подписи.. Если параметр не указан то создаётся подпись стандартом CAdES-BES. Если выбран CadesT, CadesXLT1 или CadesA, то обязательно требуется указать адрес службы TSP - –tsp <tsp-addr> - указать адрес службы TSP - –ocsp <ocsp-addr> - указать адрес службы OCSP - –proxy <proxy-address> - использовать прокси-сервер, при подписи стандартами CadesT/CadesXLT1/CadesA - –proxy-port <port> - указать порт для прокси-сервера - –proxy-login <login> - указать логин для прокси-сервера - –proxy-password <password> - указать пароль для логина прокси-сервера - --source-file <путь к файлу> - указать путь до исходного файла. Результат будет сохранен рядом с исходным файлом - --source-folder <путь к папке> - указать путь к папке, в которой подпишутся все файлы. Результат будет сохранен в этой же папке

Операция Шифрование

encrypt или enc

Команда позволяет выполнить шифрование одного или нескольких файлов в адрес одного или нескольких сертификатов

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

cryptoarm.exe encrypt --cert <серийный номер сертификата> [--enc DER|BASE64] [--alg <alg-oid>] [--delete-source] [--save-copy] [--ext <encrypted file extension>] --source-file <путь к файлу>|--source-folder <путь к папке> --encrypted-file-path <путь к файлу c новым именем для сохранения результата>|--folder-save-encrypted <путь к папке для сохранения результата>

Описание команды: - –cert - команда для указания сертификата шифрования. При шифровании в адрес нескольких получателей, необходимо указать несколько серийных номеров через запятую - --enc DER|BASE-64 - указать в какой кодировке будет сохранен зашифрованный файл. По умолчанию используется кодировка DER - --alg <alg-oid> - указать OID алгоритма шифрования. Значение по умолчанию 1.2.643.7.1.1.5.1 (ГОСТ Р 34.12-2015 Магма). Для алгоритма Кузнечик указывается OID 1.2.643.7.1.1.5.2.1 - –delete-source - удаление исходного файла после шифрования - --save-copy - копия результата будет сохранена в папку Архив - --source-file <путь к файлу> - указать путь до исходного файла. Результат будет сохранен рядом с исходным файлом - --source-folder <путь к папке> - указать путь к папке, в которой зашифруются все файлы. Результат будет сохранен в этой же папке - --encrypted-file-path <путь к файлу с новым именем> - указать путь к файлу, в который будет сохранен результат шифрования - --folder-save-encrypted <путь к папке для сохранения результата> - указать путь к папке, в которую будут сохранены результаты шифрования (имя создается автоматически с расширением .enc)

Операция Расшифрование

decrypt или dec

Команда позволяет выполнить расшифрование одного или нескольких зашифрованных файлов

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

cryptoarm.exe decrypt [--pin <PIN>] [--save-copy] --source-file <путь к зашифрованному файлу>|--source-folder <путь к папке> --encrypted-file-path <путь к файлу c новым именем для сохранения результата>|--folder-save-encrypted <путь к папке для сохранения результата>

Описание команды: - --pin <PIN> - указать пароль на контейнер сертификата расшифрования - --save-copy - копия результата будет сохранена в папку Архив - --source-file <путь к файлу> - указать путь до зашифрованного файла, который необходимо расшифровать - --source-folder <путь к папке> - указать путь к папке, в которой будут расшифрованы все файлы с расширением .enc - --encrypted-file-path <путь к файлу с новым именем> - указать путь к файлу, в который будет сохранен результат расшифрования - --folder-save-encrypted <путь к папке для сохранения результата> - указать путь к папке, в которую будут сохранены результаты расшифрования (имя создается автоматически без расширения .enc)

Операция Проверка подписи

verify или ver

Команда позволяет выполнить проверку подписи одного или нескольких файлов

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

cryptoarm.exe verify --source-file <путь к файлу>|--source-folder <путь к папке> --document <путь к исходному файлу отсоединенной подписи> --logcrypto

Описание команды: - --source-file <путь к файлу> - указать путь до подписанного файла с расширением .sig, .sign, .sgn, .p7s, .bin - --source-folder <путь к папке> - указать путь к папке, в которой будет проверена подпись всех файлов с расширениями .sig, .sign, .sgn, .p7s, .bin - --document - указать исходный файл для отсоединенной подписи - --logcrypto - включить логирование