     [file defs.ru.inc not included]

Вызов GPG
*********

gpg.ru.1

ВЫЗОВ

ОПИСАНИЕ
 — часть GnuPG (охраны приватности GNU), реализующая OpenPGP. Это средство обеспечивает цифровую подпись и шифрование по стандарту OpenPGP. В входит полное управление ключами, а также все рюшечки с бантиками, каких вы ожидали бы от полной реализации OpenPGP.

Есть две основных версии GnuPG: GnuPG 1.x и GnuPG 2.x. GnuPG 2.x поддерживает современные алгоритмы шифрования, таким образом, ей следует отдавать предпочтение. GnuPG 1.x нужно применять, только если ваша платформа не поддерживает GnuPG 2.x или если вам нужны некоторые особенности, которые в GnuPG больше не поддерживаются, например, расшифровка данных, созданых ключами PGP-2.

Если вам нужна версия 1 GnuPG, она может быть установлена под именем gpg1.

Указатель параметров содержит список команд и параметров .

КОМАНДЫ

Команды
=======

Команды отличаются от параметров только тем, что в вызове допустима только одна команда (если в описании команды не указано иное). Вообще говоря, не относящиеся к делу параметры игнорируются и могут не проверяться на корректность.

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

Команды, не связанные с конкретными функциями
---------------------------------------------

--version
     Вывести версию программы и лицензионные сведения. Эту команду нельзя сокращать (напр., как --versio).

--help
-h
     Вывести подсказку по наиболее полезным параметрам командной строки. Эту команду нельзя произвольно сокращать (напр., как --hel), хотя можно пользоваться краткой формой -h.

--warranty
     Вывести сведения о гарантиях.

--dump-options
     Вывести список всех имеющихся параметров и команд. Эту команду нельзя сокращать (напр., как --dump-option).

Команды выбора типа операции
----------------------------

--sign
-s
     Подписать сообщение. Эту команду можно сочетать с --encrypt (чтобы подписать и зашифровать сообщение) или одновременно с  --encrypt и --symmetric (чтобы подписать и зашифровать сообщение, которое можно расшифровать секретным ключом или по фразе-паролю). Для подписи берется основной ключ или ключ, явно указанный параметрами --local-user и --default-key.

--clear-sign
--clearsign
     Сделать текстовую подпись. Текст с такой подписью можно читать без специальных программ. Программа, реализующая OpenPGP, нужна только для проверки подписи. В подписанных данных, которые выводятся вместе с подписью, могут изменяться символы перевода строки для независимости от платформы; эта нормализация может быть необратима. Для подписи берется основной ключ или ключ, явно указанный параметрами --local-user и --default-key.

--detach-sign
-b
     Создать отделенную подпись. В отличие от простой подписи, подписанные данные в отделенной подписи не присутствуют.

--encrypt
-e
     Зашифровать данные. Эту команду можно сочетать с --sign (чтобы подписать и зашифровать сообщение), --symmetric (чтобы зашифровать сообщение, которое можно расшифровать секретным ключом или по фразе-паролю) или --sign и --symmetric одновременно (для подписанных сообщений, которые можно расшифровать с помощью секретного ключа по фразе-паролю).

--symmetric
-c
     Зашифровать симметричным шифром с помощью пароля. По умолчанию применяется алгоритм шифрования GPGSYMENCALGO, но его можно выбрать параметром --cipher-algo. Эту команду можно сочетать с --sign (для подписанных сообщений, зашифрованных симметричным шифром), --encrypt (для сообщений, которые можно расшифровать секретным ключом или по фразе-паролю) или --sign и --encrypt одновременно (для подписанных сообщений, которые можно расшифровать секретным ключом или по фразе-паролю).

--store
     Только сохранить (записать простой пакет с данными).

--decrypt
-d
     Расшифровать файл, данный в командной строке (или стандартном потоке ввода, если файл не указан) и записать в стандартный поток вывода (или файл, если он указан параметром --output). Если расшифровываемый файл подписан, подпись проверяется. Эта команда отличается от действия по умолчанию тем, что игнорирует файлы, которые не начинаются с зашифрованного сообщения, и не пишет в файл с именем, указанным в сообщении.

--verify
     Считать, что первый аргумент — подписанный файл, и проверить подпись, не создавая выходного файла. Без аргументов пакет с подписью читается из стандартного потока ввода. Если дан только один аргумент, в указанном файле ожидается полная (не отделенная) подпись.

     Если аргументов больше одного, первый должен указывать файл с отделенной подписью, а остальные файлы должны содержать подписанные данные. Чтобы читать подписанные данные из стандартного потока ввода, в качестве имени второго файла введите -. По соображениям безопасности отделенная подпись не применяется к стандартному потоку ввода, если это явно не обозначено вышеуказанным образом.

     Замечание: Если параметр --batch не используется, может считать, что единственный аргумент представляет файл с отделенной подписью, и попытаться найти соответствующий файл данных, отбрасывая определенные суффиксы в имени. Пользоваться этой исторической особенностью категорически не рекомендуется; всегда указывайте файл данных явно.

     Замечание: Когда проверяется текстовая подпись, проверяет только ту часть, которая составляет подписанные данные, но не какие-либо дополнительные данные, не заключенные между строками-ограничителями. Параметр --output можно применять для вывода самих подписанных данных, но с этим форматом есть и другие загвоздки. Рекомендуется вместо текстовых подписей пользоваться отделенными.

     Замечание: Иногда легче воспользоваться gpgv, чем полной командой gpg с этим параметром. gpgv сравнивает подписанные данные по списку доверенных ключей и возвращает признак успешного выполнения только для действительной подписи. У команды есть своя страница man.

--multifile
     Указание для определенных команд принимать в командной строке несколько файлов для обработки или считывать имена файлов из стандартного потока ввода по одному на строку. Это позволяет обработать несколько файлов за раз. В настоящее время --multifile можно применять с --verify, --encrypt и --decrypt. Обратите внимание, что --multifile --verify нельзя применять с отделенными подписями.

--verify-files
     То же, что --multifile --verify.

--encrypt-files
     То же, что --multifile --encrypt.

--decrypt-files
     То же, что --multifile --decrypt.

--list-keys
-k
--list-public-keys
     Перечислить указанные ключи. Если ключи не указаны, перечисляются все ключи из настроенных таблиц открытых ключей.

     Никогда не пользуйтесь текстом, выведенным этой командой, в программах. Он предназначен только для человека, и его формат часто меняется. Данные в стабильном формате для машинной обработки выдаются по --with-colons.

--list-secret-keys
-K
     Перечислить указанные секретные ключи. Если ключи не указаны, выводятся все известные секретные ключи. Символ # после начальных меток sec и ssb значит, что секретный ключ или подключ в настоящее время непригоден для использования. Можно сказать также, что этот ключ недоступен (например, секретный ключ можно экспортировать с помощью команды --export-secret-subkeys). Символ > после этих меток указывает, что ключ хранится на карте. См. также --list-keys.

--list-signatures
--list-sigs
     То же, что --list-keys, но приводятся и подписи. То же самое можно сделать, применяя --list-keys с --with-sig-list.

     Для каждой перечисленной подписи между меткой "sig" и идентификатором ключа выводится несколько символов. Эти символы дают дополнительные сведения о каждой подписи (слева направо): цифры 1-3 представляют уровень проверки сертификата (см. --ask-cert-level), "L" — локальная (неэкспортируемая) подпись (см. --lsign-key), "R" — неотзываемая подпись (см. команду "nrsign" --edit-key), "P" — подпись содержит URL правил (см. --cert-policy-url), "N" — подпись содержит замечание (см. --cert-notation), "X" — срок действия подписи истек (см. --ask-cert-expire), цифры 1-9 или "T" (что значит 10 и выше) указывают уровень доверия подписи (см. команду "tsign" --edit-key).

--check-signatures
--check-sigs
     То же, что --list-signatures, но подписи проверяются. Обратите внимание, что по соображениям быстродействия не определяется, отозван подписавший ключ или нет. Команда эквивалентна вызову --list-keys с --with-sig-check.

     Результат проверки указывается символом, непосредственно следующим за меткой "sig" (следовательно, перед вышеописанными символами --list-signatures). "!" указывает, что подпись прошла проверку успешно, "-" означает плохую подпись, а "%" выводится при ошибке во время проверки подписи (например, если не поддерживается алгоритм).

--locate-keys
     Найти заданные в качестве аргументов ключи. Эта команда находит ключи в основном по алгоритму, который применяется для поиска ключей при шифровке и подписи; таким образом, команду можно использовать для определения того, какие ключи будет использовать. В частности, внешние методы, определяемые --auto-key-locate, могут использоваться для поиска ключа. Выводятся только открытые ключи.

--fingerprint
     Перечислить все (или указанные) ключи с их отпечатками. То же, что --list-keys, но дополнительно выводится строка с отпечатком. Можно также сочетать с --list-signatures и --check-signatures. Если команда задана дважды, выводятся также отпечатки всех вторичных ключей. Эта команда также приводит к принудительному выводу отпечатков, если в качестве формата идентификаторов ключей указано «none».

--list-packets
     Перечислять только последовательности пакетов. Команда полезна только для отладки. Когда задан параметр --verbose, выводятся сами значения длинных чисел, а не только их длины. Обратите внимание, что вывод этой команды в новых выпусках может измениться.

--edit-card
--card-edit
     Представить меню для работы с электронной картой. Подкоманда "help" выводит обзор имеющихся команд. Подробное описание см. в «Памятке GnuPG по картам» на https://gnupg.org/documentation/howtos.html#GnuPG-cardHOWTO .

--card-status
     Показать содержимое электронной карты.

--change-pin
     Представить меню для изменения PIN электронной карты. Эта функция имеется также в виде подкоманды «passwd» в команде --edit-card.

--delete-keys имя
     Удалить ключ из таблицы открытых ключей. В пакетном режиме требуется либо --yes, либо указание ключа отпечатком; это предохраняет от удаления сразу нескольких ключей по случайности.

--delete-secret-keys имя
     Удалить ключ из таблицы секретных ключей В пакетном режиме ключ должен задаваться отпечатком. Параметр --yes можно использовать, чтобы указать программе gpg-agent не запрашивать подтверждения. Эта дополнительная предосторожность предпринимается, потому что не может быть уверен, что секретный ключ (контролируемый программой gpg-agent) используется только для данного открытого ключа OpenPGP.

--delete-secret-and-public-key имя
     То же, что --delete-key, но если есть секретный ключ, сначала будет удалятся он. В пакетном режиме ключ должен задаваться отпечатком. Параметром --yes можно указать программе gpg-agent не запрашивать подтверждения.

--export
     Экспортировать все ключи из всех таблиц (основных и зарегистрированных параметром --keyring) или (если дано хотя бы одно имя) ключи с заданным именем. Экспортируемые ключи выводятся в стандартный поток вывода или файл, заданный параметром --output. Для отправки по почте применять с параметром --armor.

--send-keys ID ключей
     Подобно команде --export, но отсылает ключи на сервер ключей. Вместо идентификаторов ключей можно применять отпечатки. Для задания имени сервера должен применяться параметр --keyserver. Не отсылайте свою таблицу ключей на сервер полностью — выбирайте только новые или измененные вами ключи. Если идентификаторов ключей не дано, ничего не делает.

--export-secret-keys
--export-secret-subkeys
     То же, что --export, но экспортирует секретные ключи. Экспортируемые ключи выводятся в стандартный поток вывода или в файл, указанный параметром --output. Эту команду часто применяют с параметром --armor, чтобы это можно было распечатать на бумаге; однако для сохранения резервных копий на бумаге лучше подходит внешняя программа paperkey. Обратите внимание, что экспорт секретного ключа может представлять опасность, если экспортированные ключи пересылаются по незащищенному каналу.

     Вторая форма команды отличается тем, что делает секретную часть первичного ключа непригодной к использованию; это расширение OpenPGP, специфичное для GNU, и нельзя ожидать, что другие реализации смогут успешно импортировать такой ключ. Расширение предназначено для того, чтобы создавать полный ключ с дополнительным подключом для подписи на выделенной для этого машине. Затем этой командой ключ экспортируется без первичного ключа на главную машину.

     GnuPG может запросить у вас фразу-пароль ключа. Это требуется, потому что внутренний метод защиты секретного ключа отличается от метода, предписанного в протоколе OpenPGP.

--export-ssh-key
     Эта команда применяется для экспорта ключа в формате открытого ключа OpenSSH. Это требует указания одного ключа обычным способом; последний действительный подключ, который можно использовать для проверки подлинности, экспортируется в стандартный поток вывода или файл, заданный параметром --output. Результат можно напрямую добавлять в файл authorized_key ssh.

     Указывая ключ с помощью идентификатора ключа или отпечатка, к которому приписан восклицательный знак (!), можно экспортировать конкретный подключ или первичный ключ. При этом не требуется даже, чтобы у ключа был установлен признак возможности проверки подлинности.

--import
--fast-import
     Импортировать или объединить ключи. Добавляет данные ключи в таблицу ключей. Вариант «fast» в настоящий момент просто синоним.

     Несколько других параметров управляют работой этой команды, прежде всего это параметр --import-options merge-only, который не вставляет новые ключи, а только дополняет их новыми подписями, идентификаторами пользователя и подключами.

--receive-keys идентификаторы ключей
--recv-keys идентификаторы ключей
     Импортировать ключи с данными идентификаторами с сервера ключей. Для указания имени этого сервера нужно пользоваться параметром --keyserver.

--refresh-keys
     Запросить на сервере ключей обновление тех ключей, которые уже записаны в локальную таблицу ключей. Это полезно для обновления ключа новыми подписями, идентификаторами пользователя и т.д. Для указания имени этого сервера нужно пользоваться параметром --keyserver для всех ключей, у которых не установлены предпочтительные серверы (см. --keyserver-options honor-keyserver-url).

--search-keys имена
     Искать на сервере ключей заданные имена. Заданные имена объединяются в строку для поиска на сервере. Для указания имени этого сервера нужно пользоваться параметром --keyserver. Серверы, которые поддерживают различные методы поиска, допускают использование выражений, описанных ниже в разделе «Как указать идентификатор пользователя». Обратите внимание, что разные типы серверов ключей поддерживают разные методы поиска. В настоящее время только поиск по LDAP поддерживает все методы.

--fetch-keys URI
     Извлечь ключи, расположенные по указанным URI. Обратите внимание, что разные варианты установки GnuPG могут поддерживать разные наборы протоколов (HTTP, FTP, LDAP и т.д.). При связи по HTTPS эта команда пользуется корневыми сертификатами, предоставляемыми системой.

--update-trustdb
     Провести регламентные работы в базе данных доверия. Команда проходит по всем ключам и строит сеть доверия. Это диалоговая команда, она может запрашивать значения «доверия владельцу» для разных ключей. Пользователь должен дать оценку того, насколько он верит, что владелец показанного ключа всегда правильно сертифицирует (подписывает) другие ключи. GnuPG запрашивает эти значения, только когда они ключу еще не присвоены. Присвоенное значение можно изменить в любой момент из меню команды --edit-key.

--check-trustdb
     Провести работы по поддержке базы данных доверия без участия пользователя. Время от времени база данных доверия должна обновляться, чтобы отследить просроченные ключи или подписи, влияющие на сеть доверия. Обычно GnuPG делает это автоматически по мере необходимости, если не задан параметр --no-auto-check-trustdb. Этой командой можно в любое время проводить принудительную проверку базы данных доверия. Обработка проводится та же, что по команде --update-trustdb, но ключи, у которых «доверие владельцу» не установлено, пропускаются.

     Для применения с заданиями cron эту команду можно вызывать с параметром --batch; в этом случае проверка проводится только тогда, когда она нужна. Для принудительной проверки в пакетном режиме добавьте параметр --yes.

--export-ownertrust
     Отправить величины доверия владельцам в стандартный поток вывода. Это полезно для задач резервного копирования, поскольку в случае порчи базы данных доверия нельзя восстановить только эти значения.

            gpgname --export-ownertrust > otrust.txt

--import-ownertrust
     Обновить базу данных доверия значениями, записанными в заданных файлах (или стандартном потоке ввода, если файлы не заданы); существующие значения будут заменяться на новые. В случае сильно поврежденной базы данных, если у вас есть свежая резервная копия величин доверия владельцам (напр., в файле otrust.txt), восстановить базу данных можно командами:

            cd ~/.gnupg
            rm trustdb.gpg
            gpgname --import-ownertrust < otrust.txt

--rebuild-keydb-caches
     При обновлении с версии 1.0.6 до версии 1.0.7 эту команду нужно применять для создания буферов подписей в таблице ключей. Она может оказаться удобной и в других ситуациях.

--print-md алг
--print-mds
     Распечатать хеш сообщения, найденный по алгоритму АЛГ, для всех заданных файлов или стандартного потока ввода. Во втором варианте команды (или в нерекомендованном случае «*» в качестве алгоритма) распечатываются хеши, найденные по всем доступным алгоритмам.

--gen-random 0|1|2 число
     Выдать указанное число случайных байт на заданном уровне качества (0, 1 или 2). Если ЧИСЛО не задано или равно нулю, выдается бесконечная последовательность случайных байт. Если задан параметр --armor, данные на выходе будут в кодировке base64. НЕ ПОЛЬЗУЙТЕСЬ этой командой, если вы не знаете, что делаете; она может вывести драгоценную энтропию из системы!

--gen-prime режим  биты
     См. исходники. Формат данных на выходе еще не устоялся.

--enarmor
--dearmor
     Запаковать произвольные данные на входе в формат ASCII OpenPGP или распаковать их. Это расширение OpenPGP, специфическое для GnuPG, в целом это не очень полезно.

--tofu-policy auto|good|unknown|bad|ask  ключ...
     Установить правило TOFU для всех привязок указанных ключей (see trust-model-tofu). Ключи можно задавать отпечатками (предпочтительно) или идентификаторами.

Как управлять своими ключами
----------------------------

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

--quick-generate-key ид. польз. [алг. [назначение [срок]]]
     Эта простая команда создает обычный ключ с одним идентификатором пользователя. В отличие от --generate-key, ключ создается сразу без кучи вопросов. Если не задан параметр --yes, создание ключа будет отменено, если данный идентификатор пользователя уже присутствует в таблице ключей.

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

     Если задан алг. или назначение, создается только первичный ключ, а запросы не проводятся. Чтобы указать срок действия, но вместе с тем создать первичный и вторичный ключ, укажите «default» или «future-default» в качестве алг. и «default» для параметра назначение. Описание этих необязательных параметров см. в команде --quick-add-key. В параметре назначение можно задавать также «cert» для создания первичного ключа только для сертификации; по умолчанию создается ключ для подписи и сертификации.

     Параметр срок можно применять для указания срока действия ключа. Поддерживается несколько форматов; обычно используются форматы ИСО ГГГГ-ММ-ДД или ГГГГММДДTччммсс. Чтобы срок истекал через N секунд, N суток, N недель, N месяцев или N лет, задавайте «seconds=N», «Nd», «Nw», «Nm» и «Ny» соответственно. Если значение не указано или указано «-», устанавливается разумный срок по умолчанию. Значения «never» и «none» указывают, что срок действия ключа не истекает.

     Если эта команда используется с --batch, а --pinentry-mode установлен в loopback и применяется один из параметров пароля (--passphrase, --passphrase-fd или passphrase-file), переданный пароль используется для нового ключа, а программа-агент его не запрашивает. Создать ключ безо всякой защиты можно с помощью --passphrase ''.

--quick-set-expire отп [срок]
     Напрямую задать установить срок действия первичного ключа. Для удаления срока действия можно задать 0.

--quick-add-key отп [алг [[назначение] [срок]]]
     Добавить подключ непосредственно к ключу, указанному отпечатком отп. Без необязательных аргументов добавляется подключ для шифрования. Если аргументы заданы, ключ добавляется в соответствии с ними.

     В качестве алг можно задавать любой из поддерживаемых алгоритмов или названий кривых в формате, применяемом в перечислениях ключей. Если задать «default» или «-», используется алгоритм по умолчанию. Поддерживаются алгоритмы: «rsa», «dsa», «elg», «ed25519», «cv25519» и другие кривые эллиптических алгоритмов. Например, строка «rsa» добавляет ключ RSA с исходной длиной ключа; строка «rsa4096» задает длину ключа, равную 4096 бит. Строка «future-default» представляет синоним алгоритма, который, скорее всего, будет применяться в качестве основного в будущих версиях gpg.

     В зависимости от параметра алг, ключ может быть предназначен либо для шифрования, либо для подписи. Если алгоритм обеспечивает подпись и шифрование и требуется такой подключ, нужно задать параметр назначение. Это либо «default» или «-» (исходные значения не меняются), либо разделенные запятой (или пробелом) ключевые слова: «sign» для подписи, «auth» для проверки подлинности, «encr» (или «encrypt») для шифрования. Допустимые комбинации зависят от алгоритма.

     Параметр срок можно применять для указания срока действия ключа. Поддерживается несколько форматов; обычно используются форматы ИСО ГГГГ-ММ-ДД или ГГГГММДДTччммсс. Чтобы срок истекал через N секунд, N суток, N недель, N месяцев или N лет, задавайте «seconds=N», «Nd», «Nw», «Nm» и «Ny» соответственно. Если значение не указано или указано «-», устанавливается разумный срок по умолчанию. Значения «never» и «none» указывают, что срок действия ключа не истекает.

--generate-key
--gen-key
     Создать новую пару ключей с текущими параметрами по умолчанию. Это обычная команда для создания нового ключа. В дополнение к ключу создается сертификат отзыва, который сохраняется в подкаталоге openpgp-revocs.d домашнего каталога GnuPG.

--full-genenerate-key
--full-gen-key
     Создать новую пару ключей, запрашивая все параметры. Это расширенная версия --generate-key.

     Есть также функция, позволяющая создавать ключи в пакетном режиме (see Автоматическое создание ключей GPG).

--generate-revokation имя
--gen-revoke имя
     Создать сертификат отзыва для всего ключа. Чтобы отозвать только подключ или только подпись на ключе, пользуйтесь командой --edit.

     Эта команда просто создает сертификат отзыва, которым можно воспользоваться для отзыва ключа, если это когда-нибудь понадобится. Чтобы по-настоящему отозвать ключ, созданный сертификат отзыва нужно вставить в отзываемый ключ. Это делается посредством импорта сертификата отзыва с помощью команды --import. Затем отозванный ключ нужно опубликовать, лучше всего отправкой на сервер ключей (команда --send-key) и экспортом (--export) в файл, который затем высылается активным корреспондентам.

--generate-designated-revokation имя
--desig-revoke имя
     Создать сертификат отзывающего для ключа. Это позволяет пользователю отзывать чужой ключ (после разрешения владельца).

--edit-key
     Представить меню для большей части операций, связанных с управлением ключами. Ключ указывается в командной строке.

     uid n
          Выделить или снять выделение с идентификатора или фотоидентификатора пользователя под номером n. * выделяет все, 0 снимает выделение со всех.

     key n
          Выделить или снять выделение с подключа под номером n или с идентификатором ключа n. * выделяет все, 0 снимает выделение со всех.

     sign
          Поставить подпись на заданном ключе. Если ключ еще не подписан основным пользователем (или пользователями, заданными параметром -u), программа снова показывает сведения о ключе вместе с его отпечатком и запрашивает подтверждение подписи. Этот запрос повторяется для всех пользователей, указанных параметром -u.

     lsign
          То же, что «sign», но подпись помечается как неэкспортируемая, т.е. она никогда не будет учитываться другими людьми. Это можно использовать, чтобы делать ключи достоверными только в локальной среде.

     nrsign
          То же, что «sign», но подпись помечается как неотзываемая, т.е. ее никогда нельзя будет отозвать.

     tsign
          Эта подпись сочетает представления о сертификации (как обычная подпись с доверием (как команда «trust»). В целом она полезна только в отдельных сообществах и группах. Подробнее см. разделы «Trust Signature» и «Regular Expression» в RFC-4880.

     Обратите внимание, что признаки «l» (локальная / неэкспортируемая), «nr» (неотзываемая) и «t» (подпись доверия) можно свободно сочетать и приставлять к «sign», чтобы получать подписи какого угодно типа.

     Если указан параметр --only-sign-text-ids, любые нетекстовые идентификаторы пользователя (напр., фотоидентификаторы) для подписи выбираться не будут.

     delsig
          Удалить подпись. Обратите внимание, что подпись, которая была опубликована (на сервере ключей), взять назад невозможно. В этом случае лучше воспользуйтесь командой revsig.

     revsig
          Отозвать подпись. Для каждой подписи, созданной с помощью одного из секретных ключей, GnuPG спрашивает, создавать ли сертификат отзыва.

     check
          Проверить подписи на всех выделенных идентификаторах пользователя. При дополнительном параметре selfsig показываются только самоподписи.

     adduid
          Создать дополнительный идентификатор пользователя.

     addphoto
          Создать фотографический идентификатор пользователя. Будет запрошен файл JPEG, который будет вставлен в идентификатор пользователя. Обратите внимание, что очень большие файлы JPEG сделают размер ключа очень большим. Также заметьте, что некоторые программы показывают ваш JPEG без изменений (GnuPG), а некоторые промасштабируют его, чтобы разместить в диалоговом окне (PGP).

     showphoto
          Показать выделенный фотографический идентификатор пользователя.

     deluid
          Удалить идентификатор или фотоидентификатор пользователя. Обратите внимание, что пользовательский идентификатор, который был опубликован (на сервере), взять назад невозможно. Для такого случая лучше подходит revuid.

     revuid
          Отозвать идентификатор или фотоидентификатор пользователя.

     primary
          Пометить текущий идентификатор пользователя как первичный. Со всех других идентификаторов этот признак снимается; метки времени всех задействованных самоподписей передвигаются на секунду вперед. Обратите внимание, что назначение первичным фотоидентификатора делает его первичным относительно других фотоидентификаторов, а назначение первичным обычного идентификатора делает его первичным относительно других обычных идентификаторов пользователя.

     keyserver
          Назначить предпочтительный сервер ключей для указанных идентификаторов пользователя. Это позволяет другим пользователям узнать, откуда вы предпочитаете распространять свой ключ. Подробнее см. --keyserver-options honor-keyserver-url. Установка значения «none» сбрасывает существующий предпочтительный сервер.

     notation
          Задать замечание «имя=значение» для указанных идентификаторов пользователя. Подробнее см. --cert-notation. Установка значения «none» сбрасывает все замечания, установка замечания с приписанным спереди знаком минус (-) сбрасывает это замечание, установка в виде «-имя» (без «=значение») удаляет все замечания с этим именем.

     pref
          Перечислить предпочтения у выделенного идентификатора пользователя. Показываются установленные предпочтения (без неявных).

     showpref
          Более подробное перечисление предпочтений для выделенного идентификатора пользователя. Показывает действующие предпочтения, в том числе неявные предпочтения 3DES (шифр), SHA-1 (хеш) и «не сжимать» (сжатие), когда они не включены в список предпочтений. Кроме того, показываются предпочтительный сервер ключей и замечания подписей (если есть).

     setpref
          Установить список предпочтений пользователя по строке для всех (или только для выделенных) идентификаторов пользователя. Вызов setpref без аргументов устанавливает исходный список (встроенный или заданный параметром --default-preference-list), а вызов setpref с аргументом «none» устанавливает пустой список предпочтений. Получить список доступных алгоритмов можно командой --version. Обратите внимание, что хотя вы можете изменять предпочтения на атрибутном идентификаторе пользователя (называемом также фотоидентификатором), GnuPG не выбирает ключи по атрибутным пользовательским идентификаторам, так что эти предпочтения действовать не будут.

          При установке предпочтений нужно перечислять алгоритмы в порядке, в котором вы хотели бы видеть их применяемыми человеком, который шифрует сообщение на ваш ключ. Если вы не укажете 3DES, он будет автоматически добавлен в конец. Обратите внимание, что есть много факторов, влияющих на выбор алгоритма (например, ваш ключ может быть не единственным получателем), так что приложение OpenPGP на другом конце, с помощью которого вам посылают сообщение, может соблюсти, а может и не соблюсти в точности заданный вами порядок для данного сообщения. Однако оно выберет только тот алгоритм, который представлен в списке предпочтений каждого из получателей. См. СОВМЕСТИМОСТЬ С ДРУГИМИ ПРОГРАММАМИ OPENPGP ниже.

     addkey
          Добавить подключ к данному ключу.

     addcardkey
          Создать подключ на карте и добавить его к этому ключу.

     keytocard
          Перенести выделенный секретный подключ (или первичный ключ, если ни одного подключа не выбрано) на электронную карту. Секретный ключ в таблице ключей будет заменен на заглушку, если ключ мог быть успешно перенесен на карту и вы отдали впоследствии команду save. На карту можно перенести только определенные типы ключей. Подменю позволяет выбрать, на какой карте сохранять ключ. Обратите внимание, что получить ключ с карты назад невозможно — если карта выйдет из строя, ваш секретный ключ будет утрачен, если только вы не сохранили где-нибудь резервной копии.

     bkuptocard файл
          Загрузить данный файл с резервной копией на карту. Этой командой можно пользоваться, чтобы заново загрузить резервную копию ключа (созданную во время инициализации карты) на новую карту. Почти во всех случаях это ключ для шифрования. Эту команду следует применять только с соответствующим открытым ключом, убедившись, что переданный в качестве аргумента файл действительно содержит резервную копию, которую нужно загрузить. Тогда нужно выбрать 2, чтобы загрузить ключ для шифрования. Сначала программа запросит фразу-пароль сохраненного ключа, затем — административный PIN электронной карты.

     delkey
          Удалить подключ (вторичный ключ). Обратите внимание, что подключ, который был опубликован (на сервере), взять назад невозможно. Для такого случая лучше подходит revkey. Обратите также внимание, что при этом удаляется только открытая часть ключа.

     revkey
          Отозвать подключ.

     expire
          Изменить срок действия ключа или подключа. Если выделен подключ, изменяется срок действия подключа. Если ничего не выделено, изменяется срок действия ключа.

     trust
          Изменить доверие владельцу ключа. База данных доверия обновляется немедленно, сохранение не требуется.

     disable
     enable
          Отключить или подключить весь ключ. Отключенный ключ обычно нельзя применять для шифрования.

     addrevoker
          Назначить отзывающего для ключа. Команда принимает необязательный аргумент: «sensitive» (особо важный). Если отзывающий отмечен как «sensitive», по умолчанию он экспортироваться не будет (see параметр --export-options).

     passwd
          Изменить фразу-пароль секретного ключа.

     toggle
          Пустая команда, существует только для обратной совместимости.

     clean
          Ужать (удаляя все подписи, кроме самоподписи) все идентификаторы пользователя, которые больше непригодны к применению (напр., отозваны или просрочены). Затем удалить все подписи, непригодные по подсчетам доверия. А именно: удалить все подписи, которые не проходят проверку, все подписи, замененные более поздней подписью, отозванные подписи и подписи, сделанные ключами, отсутствующими в таблице ключей.

     minimize
          Сделать ключ как можно меньше. Удаляет все подписи со всех идентификаторов пользователя, кроме самой последней самоподписи.

     cross-certify
          Добавить подписи перекрестной сертификации на подписывающие подключи, у которых их в настоящий момент может не быть. Подписи перекрестной сертификации защищают от тонкой уязвимости подписывающих подключей (see параметр --require-cross-certification). Все новые ключи создаются по умолчанию с этой подписью, так что эта команда полезна только для обновления старых ключей.

     save
          Сохранить все изменения в таблицах ключей и завершить работу.

     quit
          Завершить работу программы, не обновляя таблиц ключей.

     В списке показаны ключи с их вторичными ключами и всеми идентификаторами пользователя. Первичные идентификаторы пользователя помечены точкой, выбранные идентификаторы пользователя и ключи помечены звездочкой. Значение доверия отображается вместе с первичным ключом: первое — назначенная величина доверия владельцу, второе — вычисленная величина доверия. Символы величин:

     - Не назначено / еще не вычислено.

     e Сбой при вычислении доверия; вероятно, из-за просроченного ключа.

     q Для вычисления не хватает данных.

     n Никогда не доверять этому ключу.

     m Ограниченное доверие.

     f Полное доверие.

     u Абсолютное доверие.

--sign-key имя
     Подписать открытый ключ вашим секретным ключом. Это сокращенная версия подкоманды «sign» из --edit.

--lsign-key имя
     Подписать открытый ключ вашим секретным ключом, но пометить подпись как неэкспортируемую. Это сокращенная версия подкоманды «lsign» из --edit.

--quick-sign-key отп [имена]
--quick-lsign-key отп [имена]
     Непосредственно подписать ключ по фразе-паролю без всякого дальнейшего взаимодействия с пользователем. Аргумент отп должен быть проверенным первичным отпечатком ключа из локальной таблицы ключей. Если имена не заданы, подписываются все полезные идентификаторы пользователя; если имена даны, подписываются только соответствующие им полезные идентификаторы. По умолчанию или если перед именем стоит «*», проводится поис подстроки без учета регистра символов. Если перед именем стоит «=», ищется полное соответствие с учетом регистра.

     Команда --quick-lsign-key помечает подписи как неэкспортируемые. Если такая неэкспортируемая подпись уже существует, --quick-sign-key обращает ее в экспортируемую.

     Команда делает разумные предположения, поэтому не предоставляет всей гибкости подкоманды «sign» --edit-key. Команда предназначена для автоматической подписи ключей по списку проверенных отпечатков.

--quick-add-uid  ИДЕНТИФИКАТОР ПОЛЬЗОВАТЕЛЯ НОВЫЙ ИДЕНТИФИКАТОР ПОЛЬЗОВАТЕЛЯ
     Эта команда добавляет к существующему ключу новый идентификатор пользователя. В отличие от диалоговой подкоманды adduid --edit-key, НОВЫЙ ИДЕНТИФИКАТОР ПОЛЬЗОВАТЕЛЯ добавляется буквально, удаляются только пробелы из начала и конца строки, предполагается кодировка UTF-8, форма идентификатора не проверяется.

--quick-revoke-uid  ИДЕНТИФИКАТОР ПОЛЬЗОВАТЕЛЯ ОТЗЫВАЕМЫЙ ИДЕНТИФИКАТОР ПОЛЬЗОВАТЕЛЯ
     Эта команда отзывает идентификатор пользователя на существующем ключе с причиной отзыва «Идентификатор больше не действителен». Ее нельзя использовать для отзыва последнего идентификатора пользователя (какой-то идентификатор должен оставаться неотозванным). Если вы хотите указать другую причину отзыва или предоставить дополнительный текст отзыва, нужно воспользоваться интерактивной подкомандой revuid команды --edit-key.

--quick-set-primary-uid  ИДЕНТИФИКАТОР ПОЛЬЗОВАТЕЛЯ НОВЫЙ ИДЕНТИФИКАТОР
     Команда устанавливает или изменяет признак первичного идентификатора пользователя на существующем ключе. Первый аргумент указывает ключ, второй — идентификатор, который будет помечен как первичный. Признак первичного идентификатора удаляется со всех остальных идентификаторов, а метки времени всех самоподписей, которых это касается, сдвигаются на секунду вперед.

--change-passphase ИДЕНТИФИКАТОР ПОЛЬЗОВАТЕЛЯ
--passwd ИДЕНТИФИКАТОР ПОЛЬЗОВАТЕЛЯ
     Поменять фразу-пароль секретного ключа, принадлежащего сертификату, указанному как ИДЕНТИФИКАТОР ПОЛЬЗОВАТЕЛЯ. Это сокращение подкоманды passwd --edit-key.

ПАРАМЕТРЫ

Сводка параметров
=================

обладает множеством параметров для управления деталями поведения, а также изменения исходных настроек.

Развернутый вариант параметров можно записывать в файл параметров (по умолчанию "~/.gnupg/gpg.conf"). Краткие названия параметров не годятся — например, форма «armor» в файле параметров допустима, а «a» — нет. Пишите просто названия параметров без «--» перед ними. Строки, в которых первым символом-непробелом является знак «#», игнорируются. Команды в этот файл тоже можно записывать, но в этом обычно нет смысла, потому что такая команда будет выполняться автоматически при каждом запуске.

Помните, что распознавание параметров прекращается, как только встречается непараметр; явным образом прекратить распознавание можно с помощью специального параметра --.

Изменение настроек
------------------

Эти параметры применяются для изменения настроек и обычно находятся в файле параметров.

--default-key ИМЯ
     Использовать ИМЯ как основной ключ для подписи. Если этот параметр не используется, основным ключом является первый ключ, найденный в таблице секретных ключей. Обратите внимание, что этот параметр отменяется параметром -u или --local-user. Этот параметр можно задавать несколько раз. В этом случае будет использован последний из ключей, для которого имеется секретный ключ. Если секретного ключа нет ни для какого из данных ключей, GnuPG не выдаст ошибку, а продолжит, как если бы параметр не был задан.

--default-recipient ИМЯ
     Использовать ИМЯ в качестве получателя, если параметр --recipient не задан, и не спрашивать, правильно ли оно. Аргумент ИМЯ не должен быть пуст.

--default-recipient-self
     Использовать основной ключ в качестве получателя, если параметр --recipient не задан, и не спрашивать, правильно ли оно. Основной ключ — первый ключ из таблицы секретных ключей или ключ, заданный параметром --default-key.

--no-default-recipient
     Сбросить --default-recipient и --default-recipient-self.

-v, --verbose
     Выдавать больше информации при обработке. Если параметр задан дважды, подробно указываются данные, поступившие на вход.

--no-verbose
     Сбросить уровень подробности до 0.

-q, --quiet
     Стараться выводить на экран как можно меньше.

--batch
--no-batch
     Переход в пакетный режим. Ничего не спрашивать, не допускать диалогов. Это отменяется параметром --no-batch. Обратите внимание, что даже если имя файла задано в командной строке, gpg может потребоваться читать из стандартного потока ввода (в частности, если gpg поймет, что на вход поступила отделенная подпись, а файл данных не указан). Таким образом, если вы не хотите передавать данные через стандартный поток ввода, следует подключить его к /dev/null.

     Настоятельно рекомендуется пользоваться этим параметром с параметрами --status-fd и --with-colons при любом автоматическом применении gpg.

--no-tty
     Не использовать TTY (терминал) ни для какого вывода. Этот параметр в некоторых случаях нужен, потому что GnuPG иногда выводит сообщения в терминал, даже если задан параметр --batch.

--yes
     Считать, что ответ на большинство вопросов положителен.

--no
     Считать, что ответ на большинство вопросов отрицателен.

--list-options аргументы
     Строка с пробелами или запятыми в качестве разделителей, в которой задаются параметры, применяемые при перечислении ключей и подписей (то есть в функциях --list-keys, --list-signatures, --list-public-keys, --list-secret-keys и --edit-key). К параметрам можно спереди (после «--») приписывать no-, чтобы придать им противоположное значение. Вот эти параметры:

     show-photos
          Показывать в командах --list-keys, --list-signatures, --list-public-keys и --list-secret-keys все фотоидентификаторы, приложенные к ключу. По умолчанию выключено. См. также параметр --photo-viewer. С --with-colons не действует: как правильно передавать фотоданные в другие программы, see параметр --attribute-fd.

     show-usage
          Показывать при перечислении ключей их возможности. Возможности обозначаются списком букв, указывающих на функции E=шифрование, S=подпись, C=сертификация, A=проверка подлинности). По умолчанию включено.

     show-policy-urls
          Показывать URL правил в списках, выводимых --list-signatures и --check-signatures. По умолчанию выключено.

     show-notations
     show-std-notations
     show-user-notations
          Показывать все стандартные (IETF) и определенные пользователем замечания в списках, выводимых --list-signatures и --check-signatures. По умолчанию выключено.

     show-keyserver-urls
          Показывать все URL предпочтительных серверов в списках, выводимых --list-signatures и --check-signatures. По умолчанию выключено.

     show-uid-validity
          Показывать при перечислении ключей вычисленную достоверность идентификаторов пользователей. По умолчанию включено.

     show-unusable-uids
          Показывать при перечислении ключей отозванные и просроченные идентификаторы пользователя. По умолчанию выключено.

     show-unusable-keys
          Показывать при перечислении ключей отозванные и просроченные подключи. По умолчанию выключено.

     show-keyring
          Выводить имя таблицы ключей в заголовке списка ключей, чтобы показать, в какой таблице ключей находится данный ключ. По умолчанию выключено.

     show-sig-expire
          Показывать даты истечения срока действия подписей (когда сроки ограничены) в списках, выводимых --list-signatures и --check-signatures. По умолчанию выключено.

     show-sig-subpackets
          Показывать в списках ключей подпакеты подписей. Этот параметр может сопровождаться необязательным списком подпакетов, которые нужно показывать. Если список не задан, показывать все подпакеты. По умолчанию выключено. Параметр имеет смысл, только когда --with-colons используется с --list-signatures или --check-signatures.

--verify-options аргументы
     Список параметров, разделенных запятыми или пробелами. Учитывается при проверке подписей. К параметрам можно спереди приписывать no-, чтобы придать им противоположное значение. Вот эти параметры:

     show-photos
          Показывать все фотоидентификаторы, сопровождающие ключ, которым создана подпись. По умолчанию выключено. См. также параметр --photo-viewer.

     show-policy-urls
          Показывать URL правил в проверяемых подписях. По умолчанию выключено.

     show-notations
     show-std-notations
     show-user-notations
          Показывать все стандартные (IETF) и определенные пользователем замечания в проверяемых подписях. По умолчанию выводятся стандартные замечания.

     show-keyserver-urls
          Показывать все URL предпочтительных серверов в проверяемых подписях. По умолчанию включено.

     show-uid-validity
          Показывать вычисленную достоверность идентификаторов пользователей в ключе, которым сделана подпись. По умолчанию включено.

     show-unusable-uids
          Показывать отозванные и просроченные идентификаторы пользователя. По умолчанию выключено.

     show-primary-uid-only
          Показывать во время проверки только первичные идентификаторы пользователя. То есть все строки «или», а также фотоидентификаторы в результатах проверки не показываются.

     pka-lookups
          Включить поиск по PKA для проверки адресов отправителей. Обратите внимание, что PKA основан на DNS, так что этот параметр может раскрыть информацию о том, когда и какие подписи проверялись, а также для кого шифровались данные. Это сходно с «сетевым проколом», описанным для параметра auto-key-retrieve.

     pka-trust-increase
          Поднять доверие в подписи до полного, если подпись проходит проверку PKA. Имеет смысл только с параметром pka-lookups.

--enable-large-rsa
--disable-large-rsa
     Для команд --generate-key и --batch разрешить создание секретных ключей RSA длиной до 8192 бит. Обратите внимание: 8192 бита ― это больше, чем обычно рекомендуется. Эти длинные ключи не дают значительного усиления защиты, но требуют повышенных расходов, а подписи и сертификаты для них длиннее. Этот параметр доступен, только когда программа собрана с параметром --enable-large-secmem.

--enable-dsa2
--disable-dsa2
     Разрешить усечение хеша для всех ключей DSA, даже для старых ключей DSA длиной до 1024 бит. Это вариант по умолчанию для --openpgp. Обратите внимание, что более старые версии GnuPG требовали этого параметра также для создания ключей DSA длиннее 1024 бит.

--photo-viewer строка
     Это командная строка, которую следует выполнить для просмотра фотоидентификатора. «%i» заменяется на имя файла с фотографией. «%I» — то же самое, но файл не удаляется после выхода из программы просмотра. Другие обозначения: «%k» означает идентификатор ключа, «%K» — длинный идентификатор ключа, «%f» — отпечаток ключа, «%t» — расширение файла изображения (напр., «jpg»), «%T» — тип MIME изображения (e.g. «image/jpeg»), «%v» — односимвольная достоверность просматриваемого изображения (напр., «f»), «%V» — то же в виде строки (напр., «полное»), «%U» — хеш идентификатора пользователя в кодировке base32, «%%» — знак процента. Если и %i, и %I отсутствуют, фотография передается в программу по стандартному потоку ввода.

     Исходная команда просмотра — «xloadimage -fork -quiet -title 'KeyID 0x%k' STDIN». Обратите внимание, что если ваша программа просмотра изображений не защищена, то запуск ее из GnuPG не делает ее защищенной.

--exec-path строка
     Устанавливает список каталогов для поиска программ просмотра фотографий, а также для вспомогательных программ серверов ключей. Если не задан, для вспомогательных программ серверов ключей используется встроенное исходное значение, а поиск программ фотографий просмотра определяется переменной среды $PATH. Обратите внимание, что в системе W32 эта переменная при поиске вспомогательных программ серверов ключей не учитывается.

--keyring файл
     Добавить файл в текущий список таблиц ключей. Если аргумент начинается с тильды и косой черты, вместо них подставляется каталог $HOME. Если в имени файла косой черты нет, считается, что он находится в домашнем каталоге GnuPG ("~/.gnupg", если не используется ни --homedir, ни $GNUPGHOME).

     Обратите внимание, что параметр добавляет таблицу ключей к текущему списку. Если нужно пользоваться только указанной таблицей, пользуйтесь --keyring вместе с --no-default-keyring.

     Если задан параметр --no-keyring, не используются вообще никакие таблицы ключей.

--secret-keyring файл
     Это устаревший параметр, он игнорируется. Все секретные ключи хранятся в подкаталоге private-keys-v1.d домашнего каталога GnuPG.

--primary-keyring файл
     Назначить файл первичной таблицей открытых ключей. Это значит, что новые ключи, импортируемые командой --import или с сервера ключей командой --recv-from), будут поступать в эту таблицу.

--trustdb-name файл
     Использовать файл вместо основной базы данных доверия. Если аргумент начинается с тильды и косой черты, вместо них подставляется каталог $HOME. Если в имени файла косой черты нет, считается, что он находится в домашнем каталоге GnuPG ("~/.gnupg", если не используется ни --homedir, ни $GNUPGHOME).

          [file opt-homedir.ru.texi not included]

--display-charset кодировка
     Задать кодировку для неанглийских символов. Используется для преобразования некоторых информационных строк, таких как идентификаторы пользователя, в правильную кодировку UTF-8. Обратите внимание, что это никак не связано с кодировкой данных, которые шифруются или подписываются; GnuPG их не перекодирует. Если этот параметр не задан, кодировка определяется по текущим настройкам среды. Выбранная кодировка отображается на уровне подробности 3 (see параметр --verbose). Допустимые значения кодировки:

     iso-8859-1
          Латинская кодировка 1

     iso-8859-2
          Латинская кодировка 2

     iso-8859-15
          В настоящее время то же, что Латинская кодировка 1

     koi8-r
          Обычная русская кодировка (RFC-1489).

     utf-8
          Не преобразовывать; предполагать, что операционная система изначально пользуется кодировкой UTF-8.

--utf8-strings
--no-utf8-strings
     Считать, что аргументы командной строки даются в виде строк UTF-8. По умолчанию (--no-utf8-strings) считается, что они закодированы так, как указано параметром --display-charset. Эти параметры влияют на все следующие аргументы. Оба параметра можно вводить несколько раз.

--options файл
     Читать параметры из файла файл, не пытаясь считать их из основного файла параметров в домашнем каталоге (see параметр --homedir). Этот параметр игнорируется, если он встретился в файле параметров.

--no-options
     То же, что --options /dev/null. Этот параметр обнаруживается до того, как программа попытается открыть файл параметров. Этот параметр предотвращает также создание домашнего каталога ~/.gnupg.

-z n
--compress-level n
--bzip2-compress-level n
     Установить уровень сжатия n для алгоритмов сжатия ZIP и ZLIB. По умолчанию используется исходный уровень сжатия zlib (как правило, 6). --bzip2-compress-level устанавливает уровень сжатия для алгоритма BZIP2 (по умолчанию тоже 6). Уровень сжатия BZIP2 вынесен в отдельный параметр, потому что BZIP2 значительно повышает расход памяти на каждом следующем уровне. -z устанавливает и то, и другое. Значение 0 выключает сжатие.

--bzip2-decompress-lowmem
     Распаковывать файлы, сжатые BZIP2, другим методом. Этот метод требует почти вдвое меньше памяти, но и работает в два раза медленнее. Это полезно в условиях жестких ограничений по памяти, когда файл был сжат с высоким --bzip2-compress-level.

--mangle-dos-filenames
--no-mangle-dos-filenames
     Старые версии Windows не работают с именами файлов, в которых больше одной точки. Параметр --mangle-dos-filenames заставляет GnuPG заменять (а не приписывать) расширение к имени выходного файла. Этот параметр по умолчанию выключен и не учитывается на платформах, отличных от Windows.

--ask-cert-level
--no-ask-cert-level
     Запрашивать уровень сертификации, когда подписывается ключ. Если этот параметр не указан, уровень сертификации определяется параметром --default-cert-level. Подробнее об уровнях сертификации см. --default-cert-level. Выключается параметром --no-ask-cert-level. По умолчанию выключено.

--default-cert-level n
     Исходное значение уровня сертификации при подписи ключа.

     0 означает, что вы не делаете никакого конкретного заявления о том, насколько тщательно вы проверяли ключ.

     1 означает, что вы убеждены, что ключ принадлежит человеку, который заявляет, что он владеет этим ключом, но вы не могли проверить или никак не проверяли ключ. Это полезно для проверки «инкогнито», когда вы подписываете ключ с псевдонимом.

     2 означает, что вы провели частичную проверку ключа. Например, это может означать, что вы проверили отпечаток ключа и сверили пользовательский идентификатор на ключе по фотоидентификатору.

     3 означает, что вы провели тщательную проверку ключа. Например, это может означать, что вы проверили отпечаток ключа на личной встрече с владельцем ключа, проверили с помощью трудноподделываемого документа с фотоидентификатором (например, паспорта), что имя владельца ключа соответствует имени в идентификаторе пользователя на ключе, что вы, наконец, проверили (обменявшись почтой), что адрес электронной почты на ключе принадлежит владельцу ключа.

     Обратите внимание, что приведенные выше для уровней 2 и 3 примеры являются только примерами. В конечном счете только вы решаете, что для вас значит «частичная» и «тщательная» проверка.

     По умолчанию принимается 0 (никакого конкретного заявления).

--min-cert-level
     При построении базы данных доверия считать все подписи ниже указанного уровня сертификации недействительными. По умолчанию 2 (подписи уровня 1 не учитываются). Обратите внимание, что уровень 0 («никакого конкретного заявления») принимаются всегда.

--trusted-key длинный идентификатор ключа
     Считать указанный ключ (для которого должен быть задан полный 8-байтный идентификатор) таким же надежным, как один из ваших секретных ключей. Этот параметр полезен, если вы не хотите держать свои секретные ключи в постоянном доступе, но хотите, чтобы была возможность проверять достоверность данного ключа получателя или подписавшего.

--trust-model pgp|classic|tofu|tofu+pgp|direct|always|auto
     Установить, какой модели доверия должен следовать GnuPG:

     pgp
          Сеть доверия, скомбинированная с подписями доверия, как это делается в PGP 5.x и более поздних. Эта модель назначается для новых баз данных доверия по умолчанию.

     classic
          Стандартная сеть доверия, появившаяся в PGP 2.

     tofu
          TOFU значит «trust on first use (доверять по первому использованию)». В этой модели ключ, который встречается впервые, запоминается. Если впоследствии другой ключ встречается с идентификатором пользователя с тем же адресом электронной почты, выводится предупреждение о том, что обнаружено противоречие и что ключ может быть подделкой и попыткой атаки «человек посередине».

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

          По сравнению с сетью доверия TOFU предлагает значительно более слабые гарантии безопасности. В частности, TOFU помогает только гарантировать непротиворечивость (то есть что адрес электронной почты связан с одним и тем же ключом). Серьезное преимущество TOFU состоит в том, что для правильного пользования требуется минимум трудозатрат. Чтобы правильно пользоваться сетью доверия, нужно активно подписывать ключи и помечать пользователей как доверенные источники ключей. Эти процедуры требуют много времени, и хрестоматийные свидетельства показывают, что даже осведомленные в вопросах безопасности пользователи редко находят время, чтобы выполнять все это скрупулезно, и вместо этого полагаются на возникающие экспромтом процедуры, подобные TOFU.

          В модели TOFU правила связаны с привязкой ключей к адресам электронной почты (которые извлекаются из идентификаторов пользователей и нормализуются). Есть пять правил, которые можно установить вручную параметром --tofu-policy. Исходные правила можно установить параметром --tofu-default-policy.

          Существуют правила TOFU: auto, good, unknown, bad и ask. По умолчанию применяется правило auto (если это не изменено параметром --tofu-default-policy), оно помечает привязку как ограниченно доверенную. Правила good, unknown и bad помечают привязку уровнями доверия «полное», «неизвестно» и «никогда» соответственно. Правило unknown полезно, чтобы применять TOFU только для проверки противоречий, но никогда не присваивать положительного доверия. По последнему правилу, ask, уровень доверия привязки запрашивается у пользователя. В пакетном режиме (или если контекст не допускает ввода) пользователь не запрашивается, а возвращается уровень доверия не определено.

     tofu+pgp
          В этой модели TOFU сочетается с сетью доверия. Уровень доверия вычисляется по каждой из моделей, а затем выбирается максимальный в следующем порядке: неизвестно < неопределенно < ограниченно < полностью < абсолютно < просрочен < никогда.

          Если установить --tofu-default-policy=unknown, эту модель можно применять для реализации сети доверия с алгоритмом обнаружения противоречий TOFU, но без назначения этим алгоритмом положительных значений доверия, против чего возражали бы некоторые осведомленные в вопросах безопасности пользователи.

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

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

     auto
          Выбирать модель доверия по тому, что записано во внутренней базе данных доверия. Это делается по умолчанию, когда такая база данных уже существует.

--auto-key-locate аргументы
--no-auto-key-locate
     С помощью этого параметра GnuPG может автоматически обнаруживать и извлекать ключи. Это происходит при шифровании для адреса электронной почты (в форме «user@example.com»), когда в локальной таблице ключей нет ключей user@example.com. В этот параметр можно передать любое количество следующих механизмов в том порядке, в каком они будут применяться:

     cert
          Искать ключ с помощью DNS CERT, как описано в RFC-4398.

     pka
          Искать ключ с помощью DNS PKA.

     dane
          Искать ключ с помощью DANE, как описано в draft-ietf-dane-openpgpkey-05.txt.

     wkd
          Искать ключ по протоколу сетевого каталога ключей. Это экспериментальный метод, смысл может поменяться.

     ldap
          С помощью DNS Service Discovery искать в данном домене серверы ключей LDAP. Если не удалось, попытаться обнаружить ключ с помощью Универсального метода проверки PGP ldap://keys.(домен).

     keyserver
          Искать ключи на любом сервере, определенном параметром --keyserver.

     keyserver-URL
          Кроме того, здесь можно ввести URL сервера ключей, как в параметре --keyserver, чтобы опросить этот конкретный сервер ключей.

     local
          Искать ключ в локальных таблицах ключей. Этот механизм позволяет пользователю выбрать порядок поиска локальных ключей. Таким образом, --auto-key-locate local эквивалентно --no-auto-key-locate.

     nodefault
          Выключается обычный поиск локальных ключей, который проводится перед попыткой применения любых механизмов, определенных параметром --auto-key-locate. Положение этого механизма не имеет значения. Его можно не задавать, когда используется local.

     clear
          Сбросить все назначенные механизмы. Это полезно для отмены механизмов, определяемых в файле настроек.

--auto-key-retrieve
--no-auto-key-retrieve
     Этот параметр включает автоматическое извлечение ключей с сервера при проверке подписей, сделанных ключами, отсутствующими в локальной таблице ключей.

     Если в список методов, передаваемых в auto-key-locate, включается «wkd», идентификатор подписавшего пользователя входит в подпись, а параметр --disable-signer-uid не задан, метод «wkd» также может применяться для получения ключей.

     Обратите внимание, что параметр делает возможным эффект, подобный «сетевому проколу». Операторы сервера ключей или сетевого каталога ключей могут узнать, какие ключи вы запрашиваете, так что оператор может узнать и ваш адрес IP, и время, когда вы проверяли подпись, если пошлет вам сообщение, подписанное свежесозданным ключом (которого у вас в локальной таблице ключей, естественно, не найдется).

--keyid-format none|short|0xshort|long|0xlong
     Выбрать формат отображения идентификаторов ключей. «none» вместо идентификатора ключа показывает отпечатк в отдельной строке. «short» — традиционный 8-символьный идентификатор. «long» — более длинный (но менее удобный) 16-символьный идентификатор. «0x» добавляет к каждому «0x» спереди, например, «0x99242560». Обратите внимание, что этот параметр не учитывается, когда введен параметр --with-colons.

--keyserver сервер
     Этот параметр не рекомендуется к употреблению — пользуйтесь вместо этого параметром --keyserver в dirmngr.conf.

     Использовать сервер в качестве сервера ключей. Это сервер, с которым соединяются --receive-keys, --send-keys и --search-keys, чтобы получать, отправлять, искать ключи. Аргумент сервер представляет URI: «схема:[//]имясервера[:порт]». Схема является типом сервера ключей: «hkp» — серверы ключей HTTP (или совместимые), «ldap» — серверы ключей LDAP, «mailto» — почтовый сервер ключей Graff. Обратите внимание, что в вашей конкретной установке GnuPG могут быть и другие типы серверов ключей. Названия схем нечувствительны к регистру символов. После имени сервера могут идти необязательные параметры настройки. Они задаются как в нижеописанном глобальном параметре --keyserver-options, но применяются к этому конкретному серверу.

     Большинство серверов ключей синхронизируются друг с другом, так что обычно нет надобности высылать ключи больше чем на один сервер. Сервер hkp://keys.gnupg.net пользуется циклическим DNS, чтобы выдавать при каждом обращении новый сервер ключей.

--keyserver-options имя=значение
     Список параметров, разделенных запятыми или пробелами. Задает параметры для сервера ключей. К параметрам можно спереди приписывать no-, чтобы придать им противоположное значение. Можно использовать аргументы, применимые в import-options или export-options, они будут применяться при импорте (--recv-key) или экспорте (--send-key) ключей на сервере. Хотя для некоторых типов серверов доступны не все параметры, есть несколько общих параметров:

     include-revoked
          При поиске ключа командой --search-keys не пропускать ключи, помеченные на сервере как отозванные. Обратите внимание, что не все серверы ключей различают отозванные и неотозванные ключи, и для таких серверов этот параметр не имеет смысла. Заметьте также, что большинство серверов ключей не проводит криптографической проверки отзывов ключей, так что без этого параметра могут быть пропущены ключи, неверно помеченные как отозванные.

     include-disabled
          При поиске ключа командой --search-keys не пропускать ключи, помеченные на сервере как отключенные. Обратите внимание, что этот параметр не используется с серверами ключей HKP.

     auto-key-retrieve
          Устаревший синоним параметра auto-key-retrieve. Не пользуйтесь им: в будущих версиях его удалят.

     honor-keyserver-url
          При выполнении команды --refresh-keys обновлять ключ с предпочтительного для ключа сервера, если в ключе задан URL этого сервера. Кроме того, если установлен auto-key-retrieve, а у проверяемой подписи есть URL предпочтительного сервера ключей, доставлять ключ с этого предпочтительного сервера. Обратите внимание, что параметр вводит «сетевой прокол»: создатель ключа может видеть, когда обновляется ключ. Таким образом, этот параметр по умолчанию выключен.

     honor-pka-record
          Если используется --auto-key-retrieve, а подпись проверяется по записи PKA, пользоваться сведениями PKA для доставки ключа. По умолчанию включено.

     include-subkeys
          При получении ключа перечислить подключи как потенциальные цели. Обратите внимание, что этот параметр не применяется с серверами ключей HKP, поскольку они не поддерживают получение ключей по идентификатору подключа.

     timeout
          Сообщить вспомогательной программе сервера ключей, какое время (в секундах) нужно пытаться выполнить операцию с сервером ключей перед тем, как отменить ее. Обратите внимание, что при выполнении сразу нескольких действий это значение понимается как задержка на одно действие. Например, если несколько ключей извлекаются командой --receive-keys, задержка применяется отдельно к извлечению каждого ключа, а не к команде --receive-keys в целом. Исходное значение — 30 секунд.

     http-proxy=значение
          Этот параметр не рекомендуется к употреблению. Установить прокси-сервер для операций с серверами HTTP и HKP. Отменяет любые прокси-серверы, определенные в dirmngr.conf.

     verbose
          Начиная с GnuPG 2.1, этот параметр не действует. Пользуйтесь вместо него параметрами настройки dirmngr.

     debug
          Начиная с GnuPG 2.1, этот параметр не действует. Пользуйтесь вместо него параметрами настройки dirmngr.

     check-cert
          Начиная с GnuPG 2.1, этот параметр не действует. Пользуйтесь вместо него параметрами настройки dirmngr.

     ca-cert-file
          Начиная с GnuPG 2.1, этот параметр не действует. Пользуйтесь вместо него параметрами настройки dirmngr.

--completes-needed n
     Число пользователей с полным доверием, нужное для того, чтобы ввести нового подписывающего ключ пользователя (исходное значение равно 1).

--marginals-needed n
     Число пользователей с ограниченным доверием, нужное для того, чтобы ввести нового подписывающего ключ пользователя (исходное значение равно 3).

--tofu-default-policy auto|good|unknown|bad|ask
     Исходное правило TOFU (по умолчанию auto). Подробнее о значении параметра see trust-model-tofu.

--max-cert-depth n
     Максимальная глубина цепочки сертификации (исходное значение — 5).

--no-sig-cache
     Не сохранять в буфере результат проверки подписей ключа. Буферизация сильно повышает скорость вывода ключей. Однако если вы подозреваете, что ваша таблица открытых ключей не защищена от модификаций, вы можете воспользоваться этим параметром, чтобы отключить буферирование. Вероятно, в этом нет смысла, потому что с доступом на запись к вашей таблице открытых ключей можно наносить всевозможный вред.

--auto-check-trustdb
--no-auto-check-trustdb
     Если GnuPG считает, что информацию о сети доверия требуется обновить, внутри программы автоматически выполняется команда --check-trustdb. Это может занимать много времени. Отменяется параметром --no-auto-check-trustdb.

--use-agent
--no-use-agent
     Параметр не учитывается. всегда требует программы-агента.

--gpg-agent-info
     Параметр не учитывается. Он никак не влияет на работу.

--agent-program ФАЙЛ
     Указать программу-агент для операций с секретными ключами. Исходное значение определяется выполнением gpgconf с параметром --list-dirs. Обратите внимание, что символ конвейера («|») применяется для регрессионного тестирования и поэтому не может появляться в имени файла.

--dirmngr-program ФАЙЛ
     Указать программу dirmngr, применяемую для доступа к серверу ключей. Исходное значение равно BINDIR/dirmngr.

--no-autostart
     Не запускать gpg-agent и dirmngr, когда они еще не запущены, а их функции требуются. Этот параметр полезен главным образом на машинах, где подключение к gpg-agent перенаправляется на другие машины. Если dirmngr требуется на удаленной машине, его можно запускать вручную с помощью gpgconf --launch dirmngr.

--lock-once
     Заблокировать базы данных в первый раз, когда требуется блокировка, и не разблокировать до завершения процесса.

--lock-multiple
     Снимать блокировку каждый раз, когда она больше не требуется. Применяйте этот параметр для отмены предыдущего --lock-once из файла настроек.

--lock-never
     Полностью отключить блокировку. Этот параметр следует применять только в очень специфических средах, в которых можно гарантировать, что эти файлы доступны только для одного процесса. Возможно, это полезно на загрузочной дискете с самостоятельной системой шифрования. Неправильное применение этого параметра может привести к повреждению данных и ключей.

--exit-on-status-write-error
     Ошибки записи в файловый дескриптор состояния будут приводить к немедленному завершению процесса. В сущности, это должно делаться по умолчанию, но это никогда не удавалось, таким образом, потребовался параметр, чтобы включать это, чтобы изменение не вывело из строя приложения, которые закрывают свой файловый дескриптор состояния, подключенный к каналу, слишком рано. Этот параметр можно использовать с --enable-progress-filter, чтобы штатным образом отменять долговременные операции gpg.

--limit-card-insert-tries n
     Если n больше 0, количество запросов на вставку электронной карты ограничивается числом n-1. Таким образом, когда n равно 1, gpg вообще не просит вставить карту, если она не была вставлена с самого начала. Этот параметр полезен в файле настроек, если приложение не знает о поддержке электронных карт и ожидает вставки карты до бесконечности.

--no-random-seed-file
     GnuPG пользуется файлом, чтобы сохранять внутренний резерв случайных величин между вызовами. Это ускоряет генерацию случайных чисел, однако иногда операции записи нежелательны. Этот параметр можно применять, чтобы достичь этого ценой замедления генерации случайных чисел.

--no-greeting
     Подавить вступительное сообщение об авторских правах.

--no-secmem-warning
     Подавить предупреждение о «пользовании небезопасной памятью».

--no-permission-warning
     Подавить предупреждение о небезопасных правах доступа к файлам и домашнему каталогу (--homedir). Обратите внимание, что проверка прав доступа, которую выполняет GnuPG, не предназначена для того, чтобы делать серьезные выводы, это просто предупреждение об известных распространенных проблемах с назначением прав. Не предполагайте, что отсутствие предупреждения означает, что ваша система в безопасности.

     Обратите внимание, что предупреждение о небезопасных правах доступа к --homedir нельзя подавить в файле gpg.conf, поскольку это позволило бы атакующему установить небезопасный gpg.conf и пользоваться этим файлом для подавления сообщений о самом gpg.conf. Предупреждение о правах доступа к --homedir можно подавлять только из командной строки.

--no-mdc-warning
     Подавить предупреждение о недостающей защите целостности кодом обнаружения изменений.

--require-secmem
--no-require-secmem
     Отказываться работать, если GnuPG не может получить защищенную память. По умолчанию выключено (т.е работает, но с предупреждением).

--require-cross-certification
--no-require-cross-certification
     При проверке подписи, сделанной подключом, гарантировать, что «обратная подпись» перекрестной сертификации ключа имеется и действительна. Это предохраняет от тонкой уязвимости ключей, которыми можно подписывать. Для по умолчанию принимается --require-cross-certification.

--expert
--no-expert
     Позволять пользователю делать определенные бессмыслицы или глупости, такие как подпись просроченного или отозванного ключа, или определенные потенциально несовместимые вещи, как ключи необычных типов. Параметр отключает также определенные предупреждения о потенциально несовместимых действиях. Как говорит название параметра, он только для экспертов. Если вы не полностью представляете себе последствия того, что он вам позволяет делать, не включайте этот режим. Выключается параметром --no-expert.

Параметры, связанные с ключами
------------------------------

--recipient ИМЯ
-r
     Шифровать для идентификатора пользователя ИМЯ. Если не указан ни этот параметр, ни --hidden-recipient, GnuPG запрашивает идентификатор пользователя, если не задан --default-recipient.

--hidden-recipient ИМЯ
-R
     Шифровать для идентификатора пользователя ИМЯ, но скрыть идентификатор пользователя этого ключа. Этот параметр помогает скрыть получателя сообщения и представляет ограниченную меру противодействия анализу потока данных. Если не указан ни этот параметр, ни --recipient, GnuPG запрашивает идентификатор пользователя, если не задан --default-recipient.

--recipient-file ФАЙЛ
-f
     Параметр сходен с параметром --recipient, но шифрование проводится для ключа, хранящегося в заданном файле. Параметр ФАЙЛ должен быть именем файла, содержащего ровно один ключ. предполагает, что ключ в этом файле полностью достоверен.

--hidden-recipient-file ИМЯ
-F
     Параметр сходен с параметром --hidden-recipient, но шифрование проводится для ключа, хранящегося в заданном файле. Параметр ФАЙЛ должен быть именем файла, содержащего ровно один ключ. предполагает, что ключ в этом файле полностью достоверен.

--encrypt-to имя
     То же, что --recipient, но предназначен для использования в файле параметров и может использоваться с вашим собственным идентификатором пользователя в виде «encrypt-to-self». Эти ключи используются, только когда есть другие получатели, заданные параметром --recipient, или по запросу. Для этих идентификаторов пользователя проверка доверия не производится, и можно использовать даже выключенные ключи.

--hidden-encrypt-to имя
     То же, что --hidden-recipient, но предназначен для использования в файле параметров и может использоваться с вашим собственным идентификатором пользователя в виде «encrypt-to-self». Эти ключи используются, только когда есть другие получатели, заданные параметром --recipient, или по запросу. Для этих идентификаторов пользователя проверка доверия не производится, и можно использовать даже выключенные ключи.

--no-encrypt-to
     Выключить использование всех ключей, заданных параметрами --encrypt-to и --hidden-encrypt-to.

--group имя=значение
     Вводит именованную группу, подобную синонимам в почтовых программах. Каждый раз, когда в качестве получателя указывается имя группы (-r или --recipient), оно будет заменяться на указанные значения. Несколько групп с одним именем автоматически объединяются в одну.

     В качестве значений задаются идентификаторы и отпечатки ключей, но принимается любое описание ключа. Обратите внимание, что значение с пробелом внутри воспринимается как два различных значения. Кроме того, группы более высокого порядка (т.е. ссылающиеся на другие группы) не поддерживаются. При наборе в командной строке может потребоваться выделить аргумент этого параметра кавычками, чтобы командный интерпретатор не воспринимал его как несколько аргументов.

--ungroup имя
     Удалить данный пункт из списка --group.

--no-groups
     Удалить все пункты из списка --group.

--local-user ИМЯ
-u
     Использовать ИМЯ в качестве ключа, которым подписывают. Этим параметром отменяется --default-key.

--sender MBOX
     У этого параметра два назначения. Параметр MBOX должен представлять либо полный идентификатор пользователя с правильным адресом электронной почты, либо просто адрес электронной почты. При создании подписи этот параметр указывает gpg идентификатор пользователя ключа, которым делается подпись, если ключ не был прямо указан с помощью идентификатора пользователя. При проверке подписи параметр используется для ограничения информации, выводимой реализацией TOFU, соответствующими пользоавтельскими идентификаторами.

--try-secret-key ИМЯ
     Для скрытых получателей нужно знать ключи для пробной дешифровки. Первым всегда проверяется ключ, установленный параметром --default-key, но часто этого не достаточно. Этот параметр позволяет указать другие ключи для пробной дешифровки. Хотя в качестве аргумента можно передавать любое допустимое указание на идентификатор пользователя, во избежание неоднозначностей имеет смысл пользоваться по меньшей мере длинным идентификатором. Обратите внимание, что при пробной дешифровке gpg-agent может вызывать программу ввода пароля для большого количества ключей. Если вы хотите прекратить всякую дальнейшую пробную дешифровку, вместо кнопки «отмена» можно нажать кнопку, закрывающую окно.

--try-all-secrets
     Не обращать внимания на идентификаторы ключей, сохраненные в сообщении, а пробовать дешифровать всеми секретными ключами по очереди, чтобы найти нужный. Этот параметр переводит в режим, применяемый анонимными получателями (созданными --throw-keyids или --hidden-recipient) и может быть удобно в случае, когда зашифрованное сообщение содержит несуразный идентификатор ключа.

--skip-hidden-recipients
--no-skip-hidden-recipients
     Во время расшифровки пропускать всех анонимных получателей. Этот параметр помогает в случае, когда люди пользуются скрытыми получателями, чтобы скрыть собственный ключ --encrypt-to от других. Если у отправителя много секретных ключей, это может привести к серьезным неудобствам, потому что все ключи будут перебираться, чтобы расшифровать то, что в действительности ни для одного из них не предназначено. Недостаток этого параметра состоит в том, что в настоящее время невозможно расшифровать сообщение, которое содержит настоящих анонимных получателей.

Ввод и вывод
------------

--armor
-a
     Выводить в виде текста ASCII. По умолчанию вывод производится в двоичном формате OpenPGP.

--no-armor
     Считать, что данные на входе поступают не в текстовом формате ASCII.

--output ФАЙЛ
-o ФАЙЛ
     Записать вывод в ФАЙЛ. Для записи в стандартный поток вывода укажите в качестве параметра -.

--max-output n
     Параметр назначает предельное количество байт, которые будут созданы при обработке файла. Поскольку OpenPGP поддерживает разные уровни сжатия, может оказаться, что открытый текст данного сообщения будет существенно больше, чем поступившее на вход сообщение OpenPGP. Хотя GnuPG работает с такими сообщениями правильно, часто желательно установить максимальный размер файла, который будет создан, прежде чем обработка будет приостановлена из-за ограничений, действующих в операционной системе. Исходное значение равно 0, что означает отсутствие ограничений.

--input-size-hint N
     Этим параметром можно воспользоваться, чтобы указать gpg размер входных данных в байтах. N должно быть положительным десятичным числом. Этот параметр полезен, только когда входные данные берутся не из файла. gpg пользуется этим указанием, чтобы оптимизировать свою стратегию размещения буфера. Оно используется также в строке «PROGRESS», чтобы получить значение «всего», недоступное другими средствами.

--import-options параметры
     Список параметров, разделенных запятыми или пробелами. Задает параметры для сервера ключей. К параметрам можно спереди приписывать no-, чтобы придать им противоположное значение. Вот эти параметры:

     import-local-sigs
          Разрешить импортировать подписи ключей, помеченные как «локальные». В целом это полезно только при пользовании той или иной схемой обмена таблицами ключей. По умолчанию выключено.

     keep-ownertrust
          Возможные существующие значения доверия владельцу ключа сбрасываются при импорте ключа. В общем желательно, чтобы ранее удаленный ключ не восстанавливал автоматически величину доверия владельцу только потому, что он импортируется. С другой стороны, иногда нужно заново импортировать набор доверенных ключей, сохраняя уже присвоенные им значения доверия владельцу. Этого можно добиться с помощью этого параметра.

     repair-pks-subkey-bug
          Во время импорта пытаться устранить повреждения, вызванные ошибкой в сервере ключей PKS (до версии 0.9.6), из-за которой повреждаются ключи с несколькими подключами. Обратите внимание, что полностью восстановить ключ таким образом не удается, потому что некоторые важные данные удаляются на сервере ключей, но вам остается хотя бы один подключ. По умолчанию выключено для обычной команды --import и включено для получения ключей с сервера командой --receive-keys.

     import-show
          Показать содержимое ключа в том виде, в каком он импортирован, непосредственно перед сохранением. Это можно сочетать с параметром --dry-run, чтобы просто просматривать ключи.

     import-export
          Полностью выполнить программу импорта, но вместо сохранения ключа в локальной таблице ключей записать его в выходной файл. Параметры экспорта export-pka и export-dane влияют на выводимые данные. Этим параметром можно пользоваться для удаления всех недействительных частей ключа без его сохранения.

     merge-only
          Во время импорта допускать обновление существующих ключей, но не добавлять никаких новых ключей. По умолчанию выключено.

     import-clean
          После импорта ужать (удалить все подписи, кроме самоподписи) все идентификаторы пользователя из нового ключа, которые непригодны для пользования. Сюда входят подписи, сделанные ключами, отсутствующими в таблице ключей. Это эквивалентно выполнению после импорта команды «clean» из меню --edit-key. По умолчанию выключено.

     repair-keys.
          Устранять различные проблемы с ключами после импорта. Например, пересортируются подписи, удаляются дублированные подписи.   По умолчанию включено.

     import-minimal
          Импортировать минимально возможный ключ. Удаляет все подписи, кроме последней самоподписи, со всех идентификаторов пользователя. Это эквивалентно выполнению после импорта команды «minimize» из меню --edit-key. По умолчанию выключено.

     restore
     import-restore
          Импортировать ключ в режиме восстановления. Импортируются все   данные,
          которые обычно пропускаются при импорте, в том числе все   данные,
          специфические для GnuPG. Отменяет все параметры,   которые противоречат
          этому.

--import-filter ИМЯ=ВЫРАЖЕНИЕ
--export-filter ИМЯ=ВЫРАЖЕНИЕ
     Эти параметры определяют фильтры импорта и экспорта, которые применяются к блокам ключей непосредственно перед записью или выводом. ИМЯ определяет тип фильтра, ВЫРАЖЕНИЕ представляет выражение для оценки. Параметр можно задавать несколько раз, при этом выражения добавляются к одному и тому же ИМЕНИ.

     Доступны типы фильтров:

     keep-uid
          Фильтр сохраняет пакет с идентификатором пользователя и зависимые от него пакеты в блоке ключа, если выражение истинно.

     drop-subkey
          Фильтр опускает выбранные подключи. В настоящее время реализовано только для --export-filter.

     drop-sig
          Фильтр опускает выбранные подписи идентификаторов пользователя. Самоподписи не опускаются. В настоящее время реализовано только для --import-filter.

     Синтаксис выражений см. в главе «ВЫРАЖЕНИЯ ДЛЯ ФИЛЬТРОВ». Имена свойств в выражениях зависят от типа фильтра и указаны в следующей таблице.

     Доступны свойства:

     uid
          Строка с идентификатором пользователя.  (keep-uid)

     mbox
          Часть идентификатора пользователя, указывающая адрес электронной почты, или пустая строка.  (keep-uid)

     key_algo
          Номер алгоритма открытого ключа в пакете ключа или подключа. (drop-subkey)

     key_created
     key_created_d
          Первый — временная метка создания открытого ключа или подключа. Второй — то же, но заданное в виде строки ИСО, напр. «2016-08-17». (drop-subkey)

     primary
          Логическая величина, показывающая, является ли идентификатор пользователя первичным. (keep-uid)

     expired
          Логическая величина, показывающая, истек ли срок действия идентификатора пользователя (keep-uid), ключа (drop-subkey) или подписи (drop-sig).

     revoked
          Логическая величина, показывающая, отозван ли идентификатор   пользователя (keep-uid), ключ (drop-subkey) или подпись (drop-sig).

     disabled
          Логическая величина, показывающая, отключен ли первичный ключ.   (не используется)

     secret
          Логическая величина, показывающая, является ли ключ или подключ секретным. (drop-subkey)

     key_created
     key_created_d
          Первый — временная метка создания пакета подписи. Второй — то же, но заданное в виде строки даты ИСО, напр. «2016-08-17». (drop-sig)

     sig_algo
          Номер алгоритма открытого ключа в пакете подписи. (drop-sig)

     sig_digest_algo
          Номер алгоритма хеша в пакете подписи. (drop-sig)

--export-options параметры
     Это строка с пробелом или запятой в качестве разделителя, которая задает параметры экспорта ключей. К параметрам можно приписывать спереди «no-», чтобы придать им противоположное значение. Вот эти параметры:

     export-local-sigs
          Разрешить экспортировать подписи ключей, помеченные как «локальные». В целом это полезно только при пользовании той или иной схемой обмена таблицами ключей. По умолчанию выключено.

     export-attributes
          Включать в экспорт атрибутные идентификаторы пользователя (фотоидентификаторы). Это полезно при экспорте ключей для последующего применения с программой OpenPGP, которая не допускает атрибутных идентификаторов пользователя. По умолчанию включено.

     export-sensitive-revkeys
          Включать в экспорт информацию об отзывающих, помеченную как «особо важная». По умолчанию выключено.

     backup
     export-backup
          Экспортировать в целях резервного копирования. Экспортирует все данные, необходимые для последующего восстановления ключа или ключей в GnuPG. Отменяет все параметры, которые противоречат этому.

     export-clean
          Ужать в экспортированном ключе идентификаторы пользователя (удалить с них все подписи), непригодные для пользования. Кроме того, не экспортировать непригодные для пользования подписи. Сюда входят подписи, сделанные ключами, отсутствующими в таблице ключей. Это эквивалентно выполнению перед экспортом команды «clean» из меню --edit-key, но локальная копия ключа не изменяется. По умолчанию выключено.

     export-minimal
          Экспортировать минимально возможный ключ. Удаляет все подписи, кроме последней самоподписи, со всех идентификаторов пользователя. Это эквивалентно выполнению перед экспортом команды «minimize» из меню --edit-key, но локальная копия ключа не изменяется. По умолчанию выключено.

     export-pka
          Вместо вывода материала ключей выводить в списках записи PKA, пригодные для размещения в файлах зон DNS. Перед каждой записью выводится строка ORIGIN, чтобы можно было переводить записи в файлы соответствующих зон.

     export-dane
          Вместо вывода материала ключей выводить в списках записи OpenPGP DANE, пригодные для размещения в файлах зон DNS. Перед каждой записью выводится строка ORIGIN, чтобы можно было переводить записи в файлы соответствующих зон.

--with-colons
     Вывести списки ключей, разделенные двоеточием. Обратите внимание, что вывод будет в кодировке UTF-8 независимо от любых установок --display-charset. Этот формат полезен, когда GnuPG вызывается из других программ, поскольку его легко обрабатывать автоматически. Подробности формата документированы в файле doc/DETAILS дистрибутива исходных текстов GnuPG.

--fixed-list-mode
     Не комбинировать первичный идентификатор пользователя с первичным ключом в режиме --with-colon; выводить даты в виде секунд с начала 1 января 1970 года. Начиная с GnuPG 2.0.10, этот режим используется всегда, таким образом, этот параметр устарел; хотя его использование никак не вредит.

--legacy-list-mode
     Вернуться к режиму вывода списка открытых ключей, принятому до версий 2.1. Это влияет только на вывод, предназначенный для человека, но на не машинный формат (т.е. --with-colons). Обратите внимание, что старый формат не отображает адекватно сведения для ключей на базе эллиптических кривых.

--with-fingerprint
     То же, что команда --fingerprint, но только изменяет формат данных на выходе и может применяться с другой командой.

--with-subkey-fingerprint
     Если выводится отпечаток первичного ключа, этот параметр приводит к выводу отпечатков всех подключей. Этого можно также достичь, дважды задав параметр --with-fingerprint, но если пользоваться этим параметром с --keyid-format «none», выводится компактный отпечаток.

--with-icao-spelling
     Выводить отпечаток фонетическим алфавитом ИКАО в дополнение к шестнадцатеричным цифрам.

--with-keygrip
     Выводить в списках коды ключей. В режиме --with-colons это неявным образом включает секретные ключи.

--with-wkd-hash
     Выводить в списках ключей идентификатор сетевого каталога ключей вместе с каждым идентификатором пользователя. Это экспериментальная функция, смысл может поменяться.

--with-secret
     Выводить сведения о присутствии секретного ключа в списках открытых ключей, производимых --with-colons.

Параметры, относящиеся к протоколу OpenPGP
------------------------------------------

-t, --textmode
--no-textmode
     Считать входные файлы текстовыми и сохранять их в канонической текстовой форме OpenPGP с завершением строки вида «CR+LF». Параметр устанавливает также признаки, необходимые для уведомления получателя о том, что зашифрованные или подписанные данные представляют текст и могут нуждаться в преобразовании концов строк к виду, принятому в локальной операционной системе. Параметр полезен при связи между двумя платформами с различными соглашениями о конце строки (между системы типа Unix и Mac, Mac и Windows и т.д.). Параметр --no-textmode выключает этот режим и принимается по умолчанию.

--force-v3-sigs
--no-force-v3-sigs

--force-v4-certs
--no-force-v4-certs
     Эти параметры устарели и не учитываются начиная с GnuPG 2.1.

--force-mdc
     Принудительно использовать шифрование с кодом обнаружения изменений. Он используется всегда, когда применяются новые симметричные шифры (размер блока которых превосходит 64 бита) и когда в признаках ключей получателей присутствует поддержка кода обнаружения изменений.

--disable-mdc
     Отключить использование кода обнаружения изменений. Обратите внимание, что при этом зашифрованное сообщение становится уязвимо для атаки с изменением сообщения.

--disable-signer-uid
     В исходном состоянии идентификатор пользователя подписавшего ключа записывается в массив данных подписи. На настоящий момент это производится, только если подписавший ключ указан в local-user с помощью адреса электронной почты. Эта информация может быть полезна проверяющему для получения ключа; см. параметр --auto-key-retrieve.

--personal-cipher-preferences строка
     Задать список личных предпочтений для симметричных шифров. Список доступных алгоритмов можно получить командой --version, строка none сбрасывает предпочтения. Это позволяет пользователю безопасно отменить алгоритм, выбранный в предпочтениях ключа получателя, поскольку GPG выбирает только алгоритмы, которыми могут пользоваться все получатели. Первый шифр из этого списка будет применяться также в команде шифрования --symmetric.

--personal-digest-preferences строка
     Задать список личных предпочтений для алгоритмов хеша. Список доступных алгоритмов можно получить командой --version, строка none сбрасывает предпочтения. Это позволяет пользователю безопасно отменить алгоритм, выбранный в предпочтениях ключа получателя, поскольку GPG выбирает только алгоритмы, которыми могут пользоваться все получатели. Первый алгоритм из этого списка будет применяться также при подписи без шифрования (напр., --clearsign или --sign).

--personal-compress-preferences строка
     Задать список личных предпочтений для алгоритмов сжатия данных. Список доступных алгоритмов можно получить командой --version, строка none сбрасывает предпочтения. Это позволяет пользователю безопасно отменить алгоритм, выбранный в предпочтениях ключа получателя, поскольку GPG выбирает только алгоритмы, которыми могут пользоваться все получатели. Первый алгоритм из этого списка будет применяться также, когда нет ключей получателя, которые нужно было бы учитывать (напр., --symmetric.

--s2k-cipher-algo название
     Применять заданный алгоритм симметричного шифрования с паролем, если не заданы --personal-cipher-preferences и --cipher-algo. Исходное значение равно GPGSYMENCALGO.

--s2k-digest-algo название
     Применять заданный алгоритм хеша для преобразования фраз-паролей при симметричном шифровании. Исходное значение равно SHA-1.

--s2k-mode n
     Определяет, как преобразуются фразы-пароли при симметричном шифровании. Если аргумент равен 0, фраза-пароль используется без изменений (что в общем и целом не рекомендуется), 1 добавляет к фразе-паролю модификатор (что не следует использовать), 3 (исходное значение) повторяет весь процесс --s2k-count раз.

--s2k-count n
     Указывает, сколько циклов преобразования проходят фразы-пароли для симметричного шифрования. Аргумент может принимать значения от 1024 до 65011712 включительно. Исходное значение поступает из gpg-agent. Обратите внимание, что не все значения из диапазона 1024-65011712 допустимы; если выбрано недопустимое значение, GnuPG округляет его вверх до ближайшего допустимого. Параметр имеет смысл, только когда значение --s2k-mode равно исходному (3).

Параметры совместимости
-----------------------

Эти параметры определяют, с чем совместим GnuPG. В каждый момент может действовать только один из этих параметров. Обратите внимание, что исходное значение этого параметра почти всегда правильно. См. СОВМЕСТИМОСТЬ С ДРУГИМИ ПРОГРАММАМИ OPENPGP ниже.

--gnupg
     Обычный для GnuPG режим. В основном то же, что --openpgp, но с некоторыми дополнительными обходами распространенных проблем совместимости с различными версиями PGP. Это исходный режим, так что в общем параметр не нужен, но может быть полезен для отмены других параметров совместимости в файле gpg.conf.

--openpgp
     Установить все параметры пакетов, шифров и хешей в строгом соответствии с OpenPGP. Сбрасывает все предыдущие параметры настройки, такие как --s2k-*, --cipher-algo, --digest-algo и --compress-algo в значения, совместимые с OpenPGP. Все обходы проблем PGP выключаются.

--rfc4880
     Установить все параметры пакетов, шифров и хешей в строгом соответствии с RFC-4880. В настоящее время то же самое, что --openpgp.

--rfc4880bis
     Включить экспериментальные функции из предлагаемых обновлений RFC-4880. Этим параметром можно пользоваться в дополнение к другим параметрам совместимости. Предупреждение: поведение может измениться в любом выпуске GnuPG, а созданные ключи или данные могут быть непригодными к пользованию с будущими версиями GnuPG.

--rfc2440
     Установить все параметры пакетов, шифров и хешей в строгом соответствии с RFC-2440.

--pgp6
     Сделать все параметры как можно более совместимыми с PGP 6. Это ограничивает вас симметричными шифрами IDEA (если установлен модуль IDEA), 3DES и CAST5, хешами MD5, SHA1 и RIPEMD160, сжатием ZIP (либо без сжатия). Этим также отключается --throw-keyids и создание подписей с помощью подписывающих подключей, поскольку PGP 6 не воспринимает подписи, сделанные подключами для подписей.

     Этот параметр неявно включает --disable-mdc --escape-from-lines.

--pgp7
     Сделать все параметры как можно более совместимыми с PGP 7. То же, что --pgp6, но коды контроля изменений не отключаются, а список симметричных шифров дополняется шифрами AES128, AES192, AES256 и TWOFISH.

--pgp8
     Сделать все параметры как можно более совместимыми с PGP 8. PGP 8 гораздо ближе к стандарту OpenPGP, чем предыдущие версии PGP, так что параметр только выключает --throw-keyids и устанавливает --escape-from-lines. Допустимы все алгоритмы, кроме хешей SHA224, SHA384 и SHA512.

--compliance СТРОКА
     Этот параметр можно применять вместо одного из параметров, указанных выше. Допустимыми значениями аргумента являются перечисленные выше параметры (без двойного дефиса) и, возможно, другие, список которых выводится, если задать в качестве аргумента «help».

То, чего обычно делать не нужно
-------------------------------

-n
--dry-run
     Не вносить никаких изменений (реализовано не полностью).

--list-only
     Изменяет работу некоторых команд. То же, что --dry-run, но не всегда. Смысл этого параметра в будущем может расшириться. В настоящее время он только пропускает саму расшифровку и таким образом позволяет быстро просматривать ключи в зашифрованном сообщении.

-i
--interactive
     Спрашивать перед записью поверх любых файлов.

--debug-level УРОВЕНЬ
     Выбрать уровень отладки для исследования проблем. Аргумент может быть числом либо ключевым словом:

     none
          Никакой отладки. Эквивалентно числам, меньшим 1.

     basic
          Простейшие отладочные сообщения. Эквивалентно числам между 1 и 2.

     advanced
          Более подробные отладочные сообщения. Эквивалентно числам между 3 и 5.

     expert
          Еще более подробные отладочные сообщения. Эквивалентно числам между 6 и 8.

     guru
          Все отладочные сообщения, какие только есть. Эквивалентно числам, большим 8. Файлы отслеживания хешей создаются, только если используется это ключевое слово.

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

--debug ПРИЗНАКИ
     Установить отладочные признаки. Все признаки объединяются по ИЛИ; ПРИЗНАКИ можно задавать в записи Си (напр., 0x0042) или в виде списка разделенных запятой названий признаков. Список всех поддерживаемых признаков можно получить, введя в качестве аргумента «help».

--debug-all
     Установить все полезные отладочные признаки.

--debug-iolbf
     Перевести стандартный поток вывода в буферный режим. Этот параметр учитывается, только когда вводится в командной строке.

--faked-system-time МОМЕНТ
     Этот параметр полезен только для тестирования; он переводит системное время к моменту, заданному аргументом в виде количества секунд с начала 1970 года. Время можно задавать также в виде полной строки времени ИСО (напр., «20070924T154812»).

     Если в конце аргумента стоит восклицательный знак, системное время будет заморожено на указанном моменте.

--enable-progress-filter
     Включить вывод определенных индикаторов выполнения задачи. Параметр позволяет оболочкам отображать ход работы, когда gpg обрабатывает большие файлы. Параметр слегка ухудшает быстродействие.

--status-fd n
     Записывать специальные диагностические сообщения в файл с указанным дескриптором. Документацию по этим строкам см. в файле DETAILS.

--status-file файл
     То же, что --status-fd, но диагностические сообщения пишутся в файл.

--logger-fd n
     Писать отчет о ходе работы в файл с указанным дескриптором, а не стандартный поток ошибок.

--log-file файл
--logger-file файл
     То же, что --logger-fd, но данные о ходе работы пишутся в файл. Укажите socket://, если нужно протоколировать в сокет.

--attribute-fd n
     Записывать подпакеты атрибутов в файловый дескриптор n. Это полезнее всего при использовании с --status-fd, поскольку сообщения о состоянии нужно отделять от различных подпакетов из потока, который выводится в файловый дескриптор.

--attribute-file файл
     То же, что --attribute-fd, но данные атрибутов пишутся в файл.

--comment строка
--no-comments
     Использовать аргумент в качестве строки примечания к текстовым подписям и сообщениям или ключам в текстовом формате ASCII. По умолчанию примечаний нет. Параметр --comment можно повторять, чтобы получить несколько строк с примечаниями. Параметр --no-comments сбрасывает все примечания. Рекомендуется ограничивать длину одного примечания 60 символами, чтобы избежать проблем, связанных с разбиением длинных строк почтовыми программами. Обратите внимание, что строки примечаний, как и другие строки заголовка, подписью не защищаются.

--emit-version
--no-emit-version
     Принудительно добавлять строку с версией в текстовом формате ASCII. Если параметр дан один раз, выводится только название программы и старший номер версии, если дважды, выводится также младший номер, если трижды, добавляется номер микроверсии, четырежды — выводится также идентификатор операционной системы. Параметр --no-emit-version (исходное значение) отключает строку версии.

--sig-notation имя=значение
--cert-notation имя=значение
-N, --set-notation имя=значение
     Разместить пару «имя—значение» в подписи в качестве замечания. имя должно состоять только из неслужебных символов или пробелов и должно содержать символ «@» в записи имя-ключа@domain.example.com (конечно, с подходящим именем ключа и доменом) с целью предотвратить засорение зарезервированного пространства имен замечаний IETF. Параметр --expert отменяет проверку «@». значение может быть любой строкой неслужебных символов; он будет перекодирован в UTF-8, так что нужно проверить, что параметр --display-charset задан верно. Если к аргументу имя приписать спереди восклицательный знак («!»), данные замечания будут помечены как критичные (rfc4880:5.2.3.16). Параметр --sig-notation устанавливает замечание для подписей данных. Параметр --cert-notation устанавливает замечание для подписей ключей (сертификаций). Параметр --set-notation устанавливает и то, и другое.

     В именах замечаний можно использовать особые коды. «%k» заменяется на идентификатор подписываемого ключа, «%K» — на длинный идентификатор подписываемого ключа, «%f» — на отпечаток подписываемого ключа, «%s» — на идентификатор подписывающего ключа, «%S» — на длинный идентификатор подписывающего ключа, «%g» — на отпечаток подписывающего ключа (который может быть и подключом), «%p» — на отпечаток первичного ключа для подписывающего ключа, «%c» — на счетчик подписей из электронной карты OpenPGP, а «%%» переходит в один символ «%». «%k», «%K» и «%f» имеют смысл только при подписи ключей (сертификации), а «%c» имеет смысл только при пользовании электронной картой OpenPGP.

--sig-policy-url строка
--cert-policy-url строка
--set-policy-url строка
     Использовать аргумент в качестве URL правил для подписей (rfc4880:5.2.3.20). Если спереди приписать восклицательный знак («!»), пакет с URL правил будет помечен как критичный. Параметр --sig-policy-url устанавливает URL правил для подписей данных. Параметр --cert-policy-url устанавливает URL правил для подписей ключей (сертификации). Параметр --set-policy-url устанавливает и то, и другое.

     Здесь можно использовать те же специальные коды со знаками «%», что и для замечаний.

--sig-keyserver-url строка
     Использовать аргумент строка в качестве URL предпочтительного сервера ключей для подписей данных. Если спереди приписать восклицательный знак («!»), пакет с URL сервера ключей будет помечен как критичный.

     Здесь можно использовать те же специальные коды со знаками «%», что и для замечаний.

--set-filename строка
     Использовать аргумент строка в качестве имени файла, которое сохраняется внутри сообщений. Это отменяет исходное значение (настоящее имя файла, который зашифровывается). Пустое значение аргумента фактически удаляет имя файла из данных на выходе.

--for-your-eyes-only
--no-for-your-eyes-only
     Установить в сообщении признак «только между нами». GnuPG будет отказываться сохранять файл, если не задан параметр --output, а PGP будет использовать для вывода сообщения «защищенную программу просмотра» с заявленным стойким к перехвату излучений шрифтом. Этот параметр отменяет --set-filename. Отменяется параметром --no-for-your-eyes-only.

--use-embedded-filename
--no-use-embedded-filename
     Пытаться создать файл с именем, указанным в данных. Это может быть опасно, поскольку позволяет перезаписывать файлы. По умолчанию выключено.

--cipher-algo название
     Применять указанный алгоритм симметричного шифрования. Запуск программы с командой --version выдает список доступных алгоритмов. Если параметр не задан, алгоритм выбирается из предпочтений, записанных в ключе. Обычно этим параметром пользоваться не нужно, поскольку он позволяет нарушать стандарт OpenPGP. Параметр --personal-cipher-preferences позволяет добиться того же безопасным образом.

--digest-algo название
     Применять указанный алгоритм хеша. Запуск программы с командой --version выдает список доступных алгоритмов. Обычно этим параметром пользоваться не нужно, поскольку он позволяет нарушать стандарт OpenPGP. Параметр --personal-digest-preferences позволяет добиться того же безопасным образом.

--compress-algo название
     Применять указанный алгоритм сжатия данных. «zlib» представляет алгоритм ZLIB RFC-1950. «zip» представляет алгоритм ZIP RFC-1951, применяемый в PGP. «bzip2» представляет более современный алгоритм сжатия, который сжимает некоторые данные лучше, чем zip и zlib, ценой большего расхода памяти во время сжатия и восстановления данных. «uncompressed» или «none» выключает сжатие. Если параметр не задан, анализируются предпочтения ключа получателя и выбирается алгоритм, который поддерживается получателем. Если ничто из этого не удается, для наибольшей совместимости выбирается ZIP.

     ZLIB может давать лучшие результаты, чем ZIP, поскольку окно сжатия не ограничено размером 8к. BZIP2 может давать еще лучшие результаты, но он требует значительно больше памяти во время сжатия и восстановления данных. Это может быть важно, когда память ограничена. Однако заметьте, что PGP (все версии) поддерживает только ZIP. Сообщение, сжатое по любому алгоритму, кроме ZIP и «none», невозможно прочесть с помощью PGP. Обычно вам не нужно пользоваться этим параметром, поскольку он позволяет нарушать стандарт OpenPGP. Параметр --personal-compress-preferences позволяет добиться того же безопасным образом.

--cert-digest-algo название
     Применять указанный алгоритм хеша при подписи ключей. Запуск программы с командой --version выдает список доступных алгоритмов. Имейте в виду, что если выбран алгоритм, который GnuPG поддерживает, а другие реализации OpenPGP — нет, то некоторые пользователи не смогут пользоваться подписями, которые вы делаете, а вполне возможно, и всем вашим ключом.

--disable-cipher-algo название
     Никогда не пользоваться указанным алгоритмом симметричного шифрования. Название не проверяется, так что загруженный впоследствии алгоритм тоже будет отключаться.

--disable-pubkey-algo название
     Никогда не пользоваться указанным алгоритмом шифрования с открытым ключом. Название не проверяется, так что загруженный впоследствии алгоритм тоже будет отключаться.

--throw-keyids
--no-throw-keyids
     Не помещать идентификаторы ключей получателей в зашифрованные сообщения. Это помогает скрыть получателей сообщения и представляет ограниченную меру противодействия анализа потока данных (С помощью достаточно простых психологических методов любой, кто смог расшифровать сообщение, может проверить, является ли одним из других получателей тот, на кого падает подозрение.). На приемном конце это может замедлить процесс расшифровки, поскольку нужно перебирать все доступные секретные ключи. Этот параметр отменяется параметром --no-throw-keyids. Этот параметр по существу эквивалентен применению параметра --hidden-recipient для всех получателей.

--not-dash-escaped
     Этот параметр изменяет вывод текстовых подписей (see команда --clearsign) так, чтобы их можно было применять в файлах изменений (в таких подписях изменяются строки, начинающиеся с «-», так что текст становится непригодным для программы patch). Такие файлы не следует посылать по электронной почте, потому что подпись относится и ко всем пробелам и переводам строки. Этот параметр нельзя применять, когда в файле есть строки, начинающиеся с 5 знаков «-»; в файлах изменений таких строк не бывает. Особая строка текстового заголовка объявляет GnuPG об этом параметре текстовой подписи.

--escape-from-lines
--no-escape-from-lines
     Поскольку некоторые почтовые программы изменяют «From » в начале строк на «>From », при создании текстовых подписей (see команда --clearsign) неплохо обрабатывать такие строки особым образом, чтобы система почты не портила подпись. Обратите внимание, что все другие версии PGP поступают точно так же. По умолчанию включено. Выключается параметром --no-escape-from-lines.

--passphrase-repeat n
     Определить, сколько раз запрашивает повтор новой фразы-пароля. Полезно для запоминания фразы-пароля. Исходное значение равно 1.

--passphrase-fd n
     Читать фразу-пароль из файлового дескриптора n. Из файлового дескриптора n будет читаться только первая строка. Если задать 0, фраза-пароль будет считываться из стандартного потока ввода. Параметр можно использовать, только если вводится одна фраза-пароль.

     Обратите внимание, что эта фраза-пароль будет использована, только если задан параметр --batch. В GnuPG версий 1.x это не так.

--passphrase-file файл
     Читать фразу-пароль из указанного файла. Из файла файл будет читаться только первая строка. Параметр можно использовать, только если вводится одна фраза-пароль. Очевидно, что защищенность фразы-пароля, которая хранится в файле, сомнительна, если этот файл могут читать другие пользователи. Не пользуйтесь этим параметром, если можете избежать этого. Обратите внимание, что эта фраза-пароль будет использована, только если задан параметр --batch. В GnuPG версий 1.x это не так.

--passphrase строка
     Использовать аргумент в качестве фразы-пароля. Параметр можно использовать, только если вводится одна фраза-пароль. Очевидно, что защищенность этого метода в многопользовательской системе весьма сомнительна. Не пользуйтесь этим параметром, если можете избежать этого. Обратите внимание, что эта фраза-пароль будет использована, только если задан параметр --batch. В GnuPG версий 1.x это не так.

--pinentry-mode режим
     Установить режим программы ввода пароля. Допустимые значения аргумента:

     default
          Пользоваться исходным режимом, т.е. ask.

     ask
          Принудительно пользоваться программой ввода пароля.

     cancel
          Имитировать нажатие клавиши «отмена» программы ввода пароля.

     error
          Возвращать ошибку программы ввода пароля («программа ввода пароля отсутствует»).

     loopback
          Перенаправлять запросы программы ввода пароля на вызывающего. Обратите внимание, что в отличие от программы ввода пароля, запрос ввода пароля не повторяется, если пользователь ввел неверный пароль.

--command-fd n
     Это замена не рекомендованного режима взаимодействия между процессами через общую память. Если задан этот параметр, ввод пользователя в ответ на запросы ожидается не с терминала, а из указанного файлового дескриптора. Параметром следует пользоваться вместе с --status-fd. Подробности см. в файле doc/DETAILS из дистрибутива исходных текстов.

--command-file файл
     То же, что --command-fd, но команды читаются из указанного файла.

--allow-non-selfsigned-uid
--no-allow-non-selfsigned-uid
     Разрешить импорт и применение ключей с идентификаторами пользователя, у которых нет самоподписи. Это не рекомендуется, поскольку такие идентификаторы элементарно подделываются. Отключается параметром --no-allow-non-selfsigned-uid.

--allow-freeform-uid
     При создании нового идентификатора пользователя отключить все проверки его формы. Этот параметр следует применять только в очень специфичных средах, поскольку он позволяет обходить стандарт де-факто на формат идентификаторов пользователя.

--ignore-time-conflict
     Обычно GnuPG проверяет, что метки времени, связанные с ключами и подписями, лежат в разумных пределах. Однако иногда подпись кажется старше ключа из-за проблем с часами. Если задан этот параметр, такие проверки приводят только к предупреждениям. См. также --ignore-valid-from о проблемах с метками времени у подключей.

--ignore-valid-from
     Обычно GnuPG не выбирает и не использует ключи, созданные в будущем. Этот параметр позволяет пользоваться такими ключами и тем самым действовать, как версии GnuPG до 1.0.7. Этим параметром не следует пользоваться, если только нет какой-то проблемы с часами. См. также --ignore-valid-from о проблемах с метками времени у подписей.

--ignore-crc-error
     Текстовый формат ASCII, используемый OpenPGP, защищается циклической контрольной суммой от ошибок во время передачи сообщения. Иногда контрольная сумма искажается где-то в канале передачи, но само содержимое (все равно защищенное протоколом OpenPGP) остается в норме. Этот параметр позволяет GnuPG не учитывать ошибки контрольных сумм.

--ignore-mdc-error
     Если задан этот параметр, сбой защиты целостности кодом обнаружения изменений становится предупреждением. Это полезно, если сообщение частично повреждено, но нужно восстановить как можно больше данных из поврежденного сообщения. Однако помните, что сбой защиты кодом обнаружения изменений может означать также, что сообщение преднамеренно изменено злоумышленником.

--allow-weak-digest-algos
     Подписи, выполненные с помощью заведомо слабых алгоритмов хеша, обычно отвергаются с сообщением «недопустимый алгоритм хеша». Этот параметр разрешает проверку подписей, выполненных с помощью таких слабых алгоритмов. По умолчанию MD5 — единственный алгоритм хеша, который считается слабым. См. также параметр --weak-digest для отказа от других алгоритмов хеша.

--weak-digest название
     Считать указанный алгоритм слабым. Подписи, выполненные с помощью слабых алгоритмов хеша, обычно отвергаются. Этот параметр можно вводить несколько раз, если слабыми должны считаться несколько алгоритмов. См. также параметр --allow-weak-digest-algos отмены отказа от слабых алгоритмов хеша. MD5 всегда считается слабым, так что его не нужно перечислять в явном виде.

--no-default-keyring
     Не добавлять к списку таблиц ключей основные таблицы. Обратите внимание, что GnuPG не может работать совсем без таблиц ключей, так что если вы задаете этот параметр, не задавая другие таблицы ключей с помощью --keyring или --secret-keyring, то GnuPG все равно будет пользоваться основной таблицей открытых или секретных ключей.

--no-keyring
     Не пользоваться никакими таблицами ключей, даже указанными в параметрах.

--skip-verify
     Пропустить шаг проверки подписи. Это можно использовать для ускорения дешифровки, когда проверка подписи не требуется.

--with-key-data
     Выводить списки ключей с двоеточием в качестве разделителя (как --with-colons) и выводить данные открытых ключей.

--fast-list-mode
     Изменяет вывод перечисляющих команд так, чтобы они работали быстрее; это достигается тем, что некоторые части оставляются пустыми. Некоторым приложениям не нужны идентификаторы пользователя и сведения о доверии, передаваемые в списках. Точное значение этого параметра может изменяться в будущих версиях. Если вам каких-то сведений не хватает, не пользуйтесь этим параметром.

--no-literal
     Не предназначено для нормального пользования. За подробностями обращайтесь к исходным текстам.

--set-filesize
     Не предназначено для нормального пользования. За подробностями обращайтесь к исходным текстам.

--show-session-key
     Отображать сеансовый ключ, использованный для сообщения. О параметре, устанавливающим сеансовый ключ, see параметр --override-session-key.

     Мы думаем, что передача ключей третьей стороне — это гадость; однако пользователь должен быть волен решать, следует ли сесть в тюрьму или раскрыть содержимое конкретного сообщения без раскрытия всех сообщений, когда-либо зашифрованных для того же секретного ключа.

     Этот параметр можно применять также, когда вы получаете зашифрованное сообщение, в котором содержатся оскорбления, угрозы и т.п., чтобы доказать администраторам системы связи, что содержание зашифрованного сообщения неприемлемо, чтобы они могли предпринять меры против нарушителя.

--override-session-key строка
--override-session-key-fd дескриптор
     Пользоваться не открытым ключом, а сеансовым ключом, переданным в первой строке, прочитанной из указанного файлового дескриптора. Формат этой строки совпадает с форматом, выводимым параметром --show-session-key. Этот параметр обычно не применяется, но удобен, когда кто-то вынуждает вас раскрыть содержимое зашифрованного сообщения; с помощью этого параметра это можно сделать, не выдавая секретного ключа. Заметьте, что --override-session-key может открыть сеансовый ключ всем локальным пользователям через глобальную таблицу процессов.

--ask-sig-expire
--no-ask-sig-expire
     Когда подписываются данные, запросить срок действия. Если этот параметр не задан, принимается срок действия, установленный параметром --default-sig-expire. Выключается параметром --no-ask-sig-expire.

--default-sig-expire
     Исходный срок действия подписей. Допустимые значения: «0» (срок действия не ограничен); число с последующим «d» (дни), «w» (недели), «m» (месяцы) или «y» (годы) (например, «2m» означает два месяца, «5y» означает пять лет); абсолютная дата в виде «ГГГГ-ММ-ДД». Исходное значение — «0».

--ask-cert-expire
--no-ask-cert-expire
     Когда подписываются ключи, запросить срок действия. Если этот параметр не задан, принимается срок действия, установленный параметром --default-cert-expire. Выключается параметром --no-ask-cert-expire.

--default-cert-expire
     Исходный срок действия подписей ключей. Допустимые значения: «0» (срок действия не ограничен); число с последующим «d» (дни), «w» (недели), «m» (месяцы) или «y» (годы) (например, «2m» означает два месяца, «5y» означает пять лет); абсолютная дата в виде «ГГГГ-ММ-ДД». Исходное значение — «0».

--default-new-key-algo СТРОКА
     Параметр можно применять для изменения исходных алгоритмов генерации ключей. Обратите внимание, что алгоритм всегда можно указать напрямую с помощью усложненных команд генерации ключей. Чтобы узнать синтаксис аргумента, сверяйтесь с исходным текстом программы.

--allow-secret-key-import
     Устаревший параметр, больше нигде не применяется.

--allow-multiple-messages

--no-allow-multiple-messages
     Разрешить обработку многих сообщений OpenPGP в едином файле или потоке. Некоторые программы, вызывающие GPG, не готовы работать с несколькими сообщениями подряд, так что этот параметр по умолчанию выключен. Обратите внимание, что версии GPG, предшествующие 1.4.7, всегда разрешали такую обработку.

     Внимание: не пользуйтесь этим параметром, если вам это не нужно в качестве временной меры!

--enable-special-filenames
     Этот параметр переводит в режим, в котором имена файлов вида -&n, где n — неотрицательное десятичное число, указывают на файловый дескриптор n, а не на файл с таким именем.

--no-expensive-trust-checks
     Только для экспериментов.

--preserve-permissions
     Не менять права доступа к таблице секретных ключей на разрешение чтения-записи только для владельца файла. Применяйте этот параметр, только если вы хорошо знаете, что делаете.

--default-preference-list строка
     Задать предпочтений. Этот список используется для новых ключей и становится исходным для команды setpref в меню --edit-key.

--default-keyserver-url имя
     Задать исходный URL сервера ключей. Этот сервер ключей будет использоваться в качестве URL сервера ключей в новых самоподписях ключей, в том числе при создании ключа и смене предпочтений.

--list-config
     Вывести различные параметры внутренних настроек GnuPG. Этот параметр предназначен для внешних программ, вызывающих GnuPG для решения задач, и для обычного пользования не нужен. Подробности о том, какие параметры настроек могут перечисляться, см. в файле doc/DETAILS дистрибутива исходных текстов. --list-config используется только с --with-colons.

--list-gcrypt-config
     Вывести различные параметры внутренних настроек Libgcrypt.

--gpgconf-list
     Эта команда сходна с --list-config, но в целом применяется только внутри средства gpgconf.

--gpgconf-test
     Более или менее пустое действие. Однако при этом читается файл настроек и программа завершается с кодом ошибки, если файл настроек не позволил бы начать работу. Таким образом, это можно использовать для проверки синтаксиса файла настроек.

Не рекомендованные параметры
----------------------------

--show-photos
--no-show-photos
     При выполнении --list-keys, --list-signatures, --list-public-keys, --list-secret-keys и проверке подписи выводится также фотоидентификатор, прилагаемый к ключу. См. также параметр --photo-viewer. Эти параметры не рекомендуются. Пользуйтесь вместо них --list-options [no-]show-photos или --verify-options [no-]show-photos.

--show-keyring
     Показывать имя таблицы ключей в заголовке списков ключей, чтобы показать, в какой из таблиц находится данный ключ. Этот параметр не рекомендуется к употреблению; пользуйтесь вместо него --list-options [no-]show-keyring.

--always-trust
     Эквивалентно --trust-model always. Не рекомендуется к употреблению.

--show-notation
--no-show-notation
     Показывать замечания подписей в списках --list-signatures и --check-signatures, а также при проверке подписи, в которой есть замечание. Эти параметры не рекомендуются к употреблению. Пользуйтесь вместо них --list-options [no-]show-notation и --verify-options [no-]show-notation.

--show-policy-url
--no-show-policy-url
     Показывать URL правил в списках --list-signatures и --check-signatures, а также при проверке подписи, в которой URL правил. Эти параметры не рекомендуются к употреблению. Пользуйтесь вместо них --list-options [no-]show-policy-url и --verify-options [no-]show-policy-url.

ФАЙЛЫ

Файлы настроек
==============

Есть несколько файлов настроек для управления определенными аспектами работы . Если не указано иное, они должны располагаться в текущем домашнем каталоге (see параметр --homedir).

gpg.conf
     Это обычный файл настроек, который читает при запуске. В него можно записывать любые допустимые параметры в длинной форме; символов «--» перед названием параметра быть не должно, сокращать параметры нельзя. Это исходное имя файла можно изменить в командной строке (see параметр gpg --options). Вам следует сохранять резервные копии этого файла.

Обратите внимание, что на больших системах полезно помещать заранее написанные файлы в каталог SYSCONFSKELDIR, чтобы новые учетные записи пользователей создавались с работающими настройками. Для существующих пользователей имеется небольшая программа для создания этих файлов (see addgnupghome).

Для внутренних нужд создает и ведет несколько других файлов; Все они находятся в текущем домашнем каталоге (see параметр --homedir). Эти файлы можно изменять только программой.

~/.gnupg
     Это исходный домашний каталог, который используется, если ни переменная среды GNUPGHOME, ни параметр --homedir не заданы.

~/.gnupg/pubring.gpg
     Таблица открытых ключей. Вам следует сохранять резервные копии этого файла.

~/.gnupg/pubring.gpg.lock
     Блокировка для таблицы открытых ключей.

~/.gnupg/pubring.kbx
     Таблица открытых ключей в другом формате. Файл используется совместно с gpgsm. Вам следует сохранять резервные копии этого файла.

~/.gnupg/pubring.kbx.lock
     Блокировка для pubring.kbx.

~/.gnupg/secring.gpg
     Таблица секретных ключей для версий GnuPG, предшествовавших 2.1. Начиная с GnuPG 2.1, не используется.

~/.gnupg/secring.gpg.lock
     Блокировка для таблицы секретных ключей.

~/.gnupg/.gpg-v21-migrated
     Файл, указывающий на то, что переход на GnuPG 2.1 произведен.

~/.gnupg/trustdb.gpg
     База данных доверия. Резервных копий этого файла делать не нужно; лучше сохранять величины доверия владельцам (see параметр --export-ownertrust).

~/.gnupg/trustdb.gpg.lock
     Блокировка для базы данных доверия.

~/.gnupg/random_seed
     Файл, в котором сохраняется состояние внутреннего резерва случайных чисел.

~/.gnupg/openpgp-revocs.d/
     Каталог, в котором сохраняет предварительно созданные сертификаты отзыва. Имя файла соответствует отпечатку ключа. Предлагается делать резервные копии этих сертификатов, а если первичный секретный ключ не сохраняется на диски, переносить их на внешнее устройство хранения. Всякий, у кого есть доступ к этим файлам, может отозвать соответствующий ключ. Сертификаты можно распечатать на бумаге. Для всех файлов в этом каталоге нужно сделать резервные копии; кроме того, необходимо позаботиться о защите этих резервных копий.

Работа также управляется несколькими переменными среды:

HOME
     Используется для определения исходного домашнего каталога.

GNUPGHOME
     Если этот каталог задан, он используется вместо "~/.gnupg".

GPG_AGENT_INFO
     Эта переменная устарела; она использовалась в версиях GnuPG, предшествовавших 2.1.

PINENTRY_USER_DATA
     Значение переменной передается через gpg-agent в программу ввода пароля. Оно полезно для передачи дополнительной информации, необходимой для данной разновидности программы ввода пароля.

COLUMNS
LINES
     Используются для установки размеров экрана.

LANGUAGE
     Кроме использования в GNU, переменная применяется в версии для W32, чтобы переопределить выбор языка, заданный в реестре. Если значение переменной является допустимым названием доступного языка (LANGID), переводы загружаются из файла GPGDIR/gnupg.nls/LANGID.mo. Здесь GPGDIR означает каталог, из которого был загружен исполняемый файл gpg. Если файл не удалось загрузить, проводится поиск в реестре; наконец, в случае неудачи используется встроенная система переводов сообщений Windows.

ПРИМЕРЫ

Примеры
=======

gpg -se -r Вова файл
     подписать и зашифровать файл для пользователя Вова

gpg --clear-sign файл
     сделать текстовую подпись

gpg -sb файл
     сделать отделенную подпись

gpg -u 0x12345678 -sb файл
     сделать отделенную подпись с помощью ключа 0x12345678

gpg --list-keys ID пользователя
     показать ключи

gpg --fingerprint идентификатор пользователя
     показать отпечаток

gpg --verify файл PGP
gpg --verify файл подписи [файл данных]
     Проверить подпись файла, но не выводить данные, если нет запроса. Вторая форма применяется для отделенных подписей, где файл подписи — отделенная подпись (в двоичном или текстовом формате), а файл данных — подписанные данные; если второй аргумент не задан, имя файла данных определяется отбрасыванием расширения («.asc» или «.sig») от имени файла подписи либо запросом имени файла у пользователя. Если применяется также параметр --output, подписанные данные выводятся в файл, заданный этим параметром; для записи подписанных данных в стандартный поток вывода укажите -.

ВВОД ИДЕНТИФИКАТОРОВ ПОЛЬЗОВАТЕЛЯ

ВЫРАЖЕНИЯ ДЛЯ ФИЛЬТРОВ

ВЫРАЖЕНИЯ ДЛЯ ФИЛЬТРОВ
**********************

Здесь описывается синтаксис выражений в параметрах --import-filter и --export-filter (квадратные скобки показывают необязательную часть, круглые — повторение, пробелы между элементами допустимы).

       [лс] {[{признак}] ИМЯ_СВОЙСТВА оп ЗНАЧЕНИЕ [лс]}

Имя свойства ИМЯ_СВОЙСТВА может состоять только из букв, цифр и знаков подчеркивания. В описании типа фильтра указывается, какие свойства определены. Если вводится неопределенное свойство, оно считается равным пустой строке. Если не указано обратное, ЗНАЧЕНИЕ всегда должно быть непустой строкой. Экранирующие символы для значения не определены, таким образом, оно не может содержать строк && и ||, применяемых в качестве операторов логических связок. Для снятия этого ограничения можно воспользоваться признаком --.

Численные значения вычисляются как long int; действует стандартная нотация Си. ЛС представляет оператор логической связки: либо && (конъюнкция), либо || (дизъюнкция). В начале выражения подразумевается конъюнкция. Конъюнкция имеет более высокий приоритет, чем дизъюнкция. Если ЗНАЧЕНИЕ начинается с одного из символов, используемых в ОП, после ОП требуется пробел.

Поддерживаются операторы (ОП):

=~
     Подстрока должны соответствовать.

!~
     Подстрока не должна соответствовать.

=
     Строка должна полностью совпадать.

<>
     Строка не должна полностью совпадать.

==
     Численное значение должно совпадать.

!=
     Численное значение не должно совпадать.

<=
     Численное значение не должно превосходить заданное.

<
     Численное значение должно быть меньше заданного.

>
     Численное значение должно быть больше заданного.

>=
     Численное значение не должно быть меньше заданного.

-le
     Строка должна не больше заданной.

-lt
     Строка должна быть меньше заданной.

-gt
     Строка должна быть больше заданной.

-ge
     Строка должна быть не меньше заданной.

-n
     Истинно, если значение не пусто (допускается отсутствие значения).

-z
     Истинно, если значение пусто (допускается отсутствие значения).

-t
     То же, что «ИМЯ_СВОЙСТВА != 0» (допускается отсутствие значения).

-f
     То же, что «ИМЯ_СВОЙСТВА == 0» (допускается отсутствие значения).

Значения параметра ПРИЗНАК должны отделяться пробелом. Поддерживаются признаки:

--
     ЗНАЧЕНИЕ распространяется до конца выражения.

-c
     Регистр символов при сопоставлении строк в этой части не учитывается.

Параметры фильтра соединяются в спецификации для фильтра одного и того же типа. Например, четыре параметра

      --import-option keep-uid="uid =~ Alfa"
      --import-option keep-uid="&& uid !~ Test"
      --import-option keep-uid="|| uid =~ Alpha"
      --import-option keep-uid="uid !~ Test"

эквивалентны

      --import-option \
       keep-uid="uid =~ Alfa" && uid !~ Test" || uid =~ Alpha" && "uid !~ Test"

и приводят к тому, что импортируются только идентификаторы пользователя ключа, содержащие строки «Alfa» или «Alpha», но не строку «Test».

КОД ВЫХОДА

КОД ВЫХОДА
**********

Программа возвращает 0, если все прошло успешно, 1 — если хотя бы одна подпись была неверна, другие коды ошибок при неустранимых сбоях.

ПРЕДОСТЕРЕЖЕНИЯ

ПРЕДОСТЕРЕЖЕНИЯ
***************

Выбирайте *хороший* пароль для своей учетной записи и *хорошую* фразу-пароль для защиты своего секретного ключа. Эта фраза-пароль будет самой слабой частью всей системы. Программы перебора по словарю для таблицы секретных ключей пишутся очень легко, так что каталог «~/.gnupg/» нужно как следует защитить.

Имейте в виду, что если эта программа применяется по сети (через telnet), то *очень* легко подглядеть вашу фразу-пароль!

Если вы собираетесь проверять отделенные подписи, убедитесь, что программа знает об этом; задавайте либо имена обоих файлов в командной строке, либо указывайте на стандартный поток ввода с помощью -.

СОВМЕСТИМОСТЬ

СОВМЕСТИМОСТЬ С ДРУГИМИ ПРОГРАММАМИ OPENPGP
*******************************************

GnuPG стремится к гибкости реализации стандарта OpenPGP. В частности, GnuPG реализует множество необязательных разделов стандарта, таких как хеш SHA-512 и алгоритмы сжатия ZLIB и BZIP2. Важно понимать, что не во всех программах OpenPGP реализованы эти необязательные алгоритмы и что принудительное их использование в GnuPG с помощью параметров --cipher-algo, --digest-algo, --cert-digest-algo или --compress-algo может привести к созданию вполне соответствующего стандарту сообщения, которое, однако, получатель прочесть не сможет.

Существуют десятки вариаций программ OpenPGP, и каждая поддерживает слегка отличающийся от других набор этих необязательных алгоритмов. Например, до недавнего времени ни одна (не измененная) версия PGP не поддерживала алгоритм шифрования BLOWFISH. По умолчанию GnuPG применяет систему предпочтений из стандарта OpenPGP, которая всегда приводит к тому, что создаваемыми сообщениями могут пользоваться все получатели независимо от того, какой программой OpenPGP они пользуются. Не изменяйте эти надежные исходные настройки, если только вы не полностью уверены в том, что делаете.

Если вам совершенно необходимо изменить исходные настройки или если предпочтения для данного ключа по какой-то причине ошибочны, лучше воспользоваться параметром --pgp6, --pgp7 или --pgp8. Эти параметры безопасны, поскольку они не вводят принудительно никаких конкретных алгоритмов в нарушение OpenPGP, а только сужают список доступных алгоритмов до «надежного относительно PGP».

НЕДОЧЕТЫ

НЕДОЧЕТЫ
********

На более старых системах эту программу следует устанавливать с доступом setuid(root). Это необходимо для защиты страниц памяти. Защита предотвращает запись страниц (в которых могут содержаться фразы-пароли или другой важный материал) на диск. Если вы не получаете предупреждения о незащищенной памяти, то ваша операционная система поддерживает защиту без перехода в режим суперпользователя. Программа отказывается от прав суперпользователя, как только выделена защищенная память.

Заметьте также, что на некоторых системах (особенно в портативных компьютерах) есть возможность «сброса на диск» (называемого также «безопасным засыпанием»). Перед переходом в спящий режим или даже перед выключением вся память записывается на диск. Если в операционной системе не принимаются меры по защите сохраненной памяти, фразы-пароли и другой важный материал впоследствии можно восстановить с диска.

Перед тем как сообщить об ошибке, следует поискать сообщения о сходных проблемах в списке рассылки, а затем проверить, не зарегистрирована ли такая ошибка на https://bugs.gnupg.org .

Автоматическая работа
=====================

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

Программное применение GnuPG
----------------------------

Если возможно, вместо обращения непосредственно к пользуйтесь GPGME. GPGME обеспечивает стабильный независимый от рабочих программ интерфейс для многих криптографический операций. Библиотека поддерживает OpenPGP и S/MIME, а также позволяет взаимодействовать с различными компонентами GnuPG.

GPGME предоставляет интерфейс Си, а также привязки для Си++, Qt и Python. Есть привязки и для других языков.

Разовые домашние каталоги
-------------------------

Иногда нужно получить результаты какой-то операции, например, импортировать ключ, чтобы исследовать его, но этот ключ не нужно добавлять к рабочей таблице ключей. В прошлых версиях GnuPG можно было указывать альтернативные файлы таблиц как открытых, так и секретных ключей. Однако в современных версиях GnuPG мы изменили порядок хранения секретных ключей, чтобы лучше защищать их материал, так что сохранить эту возможность было невозможно.

Теперь предпочтительно использовать для этого разовые домашние каталоги. Эта техника работает со всеми версиями GnuPG.

Создайте временный каталог, создайте (или скопируйте) настройки, отвечающие вашим нуждам, укажите на этот каталог в переменной среды GNUPGHOME или в параметре --homedir. GPGME поддерживает это, позволяя для каждого контекста задавать свои настройки. Выполните теперь нужные вам операции, импортируя и экспортируя материал ключей по мере необходимости. По завершении операций каталог можно удалить. Все рабочие службы GnuPG, которые были запущены, обнаружат это и завершатся.

Быстрая манипуляция ключами
---------------------------

В последних версиях GnuPG есть возможность манипулировать ключами без применения интерактивной команды --edit-key. Эта возможность была добавлена главным образом для GPGME (рекомендуемой к применению, см. подраздел «Программное применение GnuPG»). Эта возможность описана в подразделе «Как управлять своими ключами».

Автоматическое создание ключей
------------------------------

Для автоматического создания ключей команду --genenerate-key можно использовать с параметром --batch. Это самый гибкий способ создания ключей, но и самый сложный. Подумайте, не подойдет ли вам быстрый способ манипуляции ключами, описанный в предыдущем подразделе, «Быстрая манипуляция ключами».

Параметры ключа либо считываются из стандартного потока ввода, либо даются в файле, указанном в командной строке. Файл параметров имеет следующий формат:

  * Только текст, длина строк ограничена примерно 1000 символов.

  * Для символов, не входящих в набор ASCII, используется UTF-8.

  * Пустые строки игнорируются.

  * Пробелы в начале и конце строк игнорируются.

  * Строки, первым символом которых (не считая пробелов) является «#», представляют комментарий.

  * Управляющие конструкции отмечаются знаком процента перед ними, аргументы отделяются от ключевого слова пробелами.

  * Параметры указываются ключевым словом с последующим двоеточием. Аргументы отделяются пробелами.

  * Первым параметром должен быть Key-Type; управляющие конструкции могут быть в любом месте.

  * Порядок параметров не имеет значения (не считая того, что первым должен быть Key-Type). Параметры используются только для создаваемого блока; параметры из предыдущих наборов не используются. Могут проводиться некоторые проверки синтаксиса.

  * Создание ключа производится по достижении конца файла параметров, при появлении следующего параметра Key-Type или при появлении управляющей конструкции %commit.

Управляющие конструкции:

%echo ТЕКСТ
     Вывести ТЕКСТ в качестве диагностики.

%dry-run
     Подавить действительное создание ключа (полезно для проверки синтаксиса).

%commit
     Выполнить создание ключа. Обратите внимание, что неявно эта конструкция вводится перед следующим параметром Key-Type.

%pubring ИМЯ ФАЙЛА
     Записывать ключ не в исходную таблицу ключей и не в таблицу, данную в командной строке, а в указанный файл. Файл должен определяться до первой конструкции %commit, при повторном задании учитывается последняя конструкция, появившаяся перед %commit. Этот файл используется затем до тех пор, пока не появится новое имя файла (при выполнении конструкций %commit), и все ключи записываются в этот файл. Если задано новое имя файла, этот файл создается (или записывается поверх существующего).

     Более защищенный от побочных эффектов способ описан в предыдущем подразделе, «Разовые домашние каталоги».

%secring ИМЯ ФАЙЛА
     Этот параметр не влияет на работу GnuPG 2.1 и более поздних версий.

     См. предыдущий подраздел, «Разовые домашние каталоги».

%ask-passphrase
%no-ask-passphrase
     Этот параметр не влияет на работу GnuPG 2.1 и более поздних версий.

%no-protection
     Параметр позволяет создавать ключи без защиты фразой-паролем. Предназначен в основном для испытаний.

%transient-key
     Ключи создаются с помощью более быстрого и несколько менее безопасного генератора случайных чисел. Этот параметр используется для ключей, которые используются короткое время и не требуют полной криптографической защиты. Параметр действует только вместе с управляющей конструкцией %no-protection.

Общие параметры:

Key-Type: АЛГОРИТМ
     Открывает новый блок параметров, задавая тип первичного ключа. Алгоритм должен подходить для подписей. Это обязательный параметр. Аргументом может быть либо номер алгоритма OpenPGP, либо строка с названием алгоритма. Особое значение default можно использовать для создания ключа с типом по умолчанию; в этом случае параметр Key-Usage не должен быть задан, а значение default должно использоваться и для Subkey-Type.

Key-Length: N
     Заданная длина создаваемого ключа в битах. Исходное значение можно узнать, выполнив команду --gpgconf-list.

Key-Grip: ШЕСТНАДЦАТЕРИЧНАЯ СТРОКА
     Необязательный параметр; используется для создания запроса на подпись сертификата или сертификата для уже существующего ключа. Параметр Key-Length при этом игнорируется.

Key-Usage: СПИСОК
     Список функций ключа с пробелом или запятой в качестве разделителя. Допустимы значения encrypt (шифрование), sign (подпись) и auth (проверка подлинности). Используется для задания признаков ключа. Проверьте, пожалуйста, что алгоритм может выполнять эти функции. Обратите внимание, что OpenPGP требует, чтобы все первичные ключи могли проводить сертификацию, так что признак cert будет установлен в любом случае. Если Key-Usage не задан, а Key-Type не равен default, устанавливаются все допустимые для конкретного алгоритма функции; если в качестве списка задан default, будет создан ключ для подписей (sign).

Subkey-Type: АЛГОРИТМ
     Создает вторичный ключ (подключ). В настоящее время можно создавать только один подключ. См. выше Key-Type.

Subkey-Length: N
     Заданная длина создаваемого вторичного ключа (подключа) в битах. Исходное значение можно узнать, выполнив команду --gpgconf-list.

Subkey-Usage: СПИСОК
     Список функций подключа; аналогичен Key-Usage.

Passphrase: СТРОКА
     Если хотите указать фразу-пароль для секретного ключа, введите ее здесь. По умолчанию для запроса фразы-пароля вызывается диалог программы ввода пароля.

Name-Real: ИМЯ
Name-Comment: ПРИМЕЧАНИЕ
Name-Email: АДРЕС
     Три части идентификатора пользователя. Не забудьте, что это UTF-8. Если вы не зададите хотя бы один из параметров, идентификатор пользователя не будет создан.

Expire-Date: ДАТА ИСО|(ЧИСЛО[d|w|m|y])
     Задать срок действия ключа (и подключа). Это может быть либо дата в формате ИСО (e.g. "20000815T145012"), либо число дней, недель, месяцев или лет после даты создания. Допускается также особая запись «seconds=N» для указания числа секунд с момента создания. Число без буквы считается числом дней. Обратите внимание, что проверка переполнения типа, используемого в OpenPGP для меток времени, не проводится. Таким образом, лучше убедиться, что заданное значение имеет смысл. Хотя OpenPGP работает с интервалами времени, внутри GnuPG применяется абсолютное значение; таким образом, мы можем представлять годы до 2105.

Creation-Date: ДАТА ИСО
     Задать дату создания ключа, которая будет записана в ключе и которая входит в вычисление отпечатка. Это либо дата в виде «1986-04-26», либо полная метка времени в виде «19860426T042640». Время считается Всемирным координированным (UTC). Можно использовать также особую запись «seconds=N» для указания числа секунд от начала эпохи (время Unix). Если параметр не задан, используется текущее время.

Preferences: СТРОКА
     Установить предпочтения для симметричных шифров, хеша и сжатия. Вид аргумента совпадает с аргументом подкоманды setpref из меню --edit-key.

Revoker: АЛГОРИТМ:ОТП [sensitive]
     Добавить отзывающего для создаваемого ключа. В качестве алгоритма задается алгоритм шифрования с открытым ключом для отзывающего (т.е. RSA=1, DSA=17 и т.д.) Строка ОТП представляет отпечаток отзывающего ключа. Необязательный признак sensitive помечает отзывающего как особо важную информацию. Отзывающими могут быть только ключи версии 4.

Keyserver: СТРОКА
     Необязательный параметр, указывающий URL предпочтительного сервера ключей для данного ключа.

Handle: СТРОКА
     Необязательный параметр, применяемый только со строками состояния KEY_CREATED и KEY_NOT_CREATED. В аргументе может быть до 100 символов и не должно быть пробелов. Это полезно для пакетной генерации ключей, чтобы связать блок параметра ключей со строкой состояния.

Вот пример создания ключа в разовом домашнем каталоге:

     $ export GNUPGHOME="$(mktemp -d)"
     $ cat >foo <<EOF
          %echo Создание простого ключа OpenPGP
          Key-Type: DSA
          Key-Length: 1024
          Subkey-Type: ELG-E
          Subkey-Length: 1024
          Name-Real: Яша Испытатель
          Name-Comment: с дурацкой фразой-паролем
          Name-Email: yi@test.mil
          Expire-Date: 0
          Passphrase: abc
          # Тут сохраним, чтоб можно было сказать "готово" :-)
          %commit
          %echo готово
     EOF
     $ --batch --generate-key foo
      [...]
     $ --list-secret-keys
     /tmp/tmp.0NQxB74PEf/pubring.kbx
     -------------------------------
     sec   dsa1024 2016-12-16 [SCA]
           768E895903FC1C44045C8CB95EEBDB71E9E849D0
     uid           [абсолютно] Яша Испытатель (с дурацкой фразой-паролем) <yi@test.mil>
     ssb   elg1024 2016-12-16 [E]

Если вы хотите создать ключ с исходными алгоритмами, можно задать следующие параметры:

          %echo Создание ключа по умолчанию
          Key-Type: default
          Subkey-Type: default
          Name-Real: Яша Испытатель
          Name-Comment: с дурацкой фразой-паролем
          Name-Email: yi@test.mil
          Expire-Date: 0
          Passphrase: abc
          # Тут сохраним, чтоб можно было сказать "готово" :-)
          %commit
          %echo готово

СМ. ТАКЖЕ
     [file see-also-note.ru.texi not included]