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

В данном разделе описана инструкция по выполнению криптографических операций с помощью командной строки (для 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 &lt;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 &lt;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 &lt;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 - включить логирование