SliTaz Man Pages

Community Doc Forum Pro Shop Bugs Hg Cook

gpg

Section: Users manual (1)
Updated: Mon 29 Apr 2002
Index Return to Main Contents

НАЗВАНИЕ

gpg - инструмент для шифрования и цифровой подписи

СИНТАКСИС

gpg  [--homedir name]  [--options file]  [options]  command  [args]   

ОПИСАНИЕ

gpg основная программа системы GnuPG.

Данное руководство содержит только список доступных команд и параметров. Более подробная информация содержится в GNU Privacy Handbook (GPH), доступной по адресу http://www.gnupg.org/gph/. (Русский перевод можно найти на http://www.arh.ru/~zwon/. Дополнительную документацию можно найти на http://www.gnupg.org/docs.html.

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

КОМАНДЫ

gpg распознаёт следующие команды:

-s, --sign
Создать подпись. Данная команда может использоваться совместно с --encrypt.
--clearsign
Создать прозрачную подпись.
-b, --detach-sign
Создать отделённую подпись.
-e, --encrypt
Зашифровать данные. Может использоваться совместно с --sign.
-c, --symmetric
Зашифровать при помощи симметричного алгоритма. Команда запрашивает ключевую фразу.
--store
Создаёт пакет в соответствии с RFC1991.
--decrypt [file]
Расшифровывает file (или стандартный ввод, если файл не задан) и выводит его на стандартный вывод (или в файл определённый параметром --output). Если расшифрованный файл подписан, то также проверяется подпись. Эта команда отличается от операции по умолчанию тем, что никогда не сохраняет результат в файле с именем указанным в зашифрованном файле и не обрабатывает файлы не начинающиеся с зашифрованного сообщения.
--verify [[sigfile] [signed-files]]
Предполагает, что sigfile содержит подпись и проверяет её, не выводя содержимое документа. Без аргументов, считывает подписанные данные со стандартного ввода. Если задан только файл подписи, то в нём может содержаться либо полностью подписанный документ, либо отделённая подпись. В последнем случае подписанный документ должен содержаться в файле без расширения ".sig" или ".asc". Если указано более одного аргумента, то первый должен быть отделённой подписью, а остальные должны содержать подписанный материал. Для считывания подписанного документа со стандартного ввода, используйте - в качестве имени второго файла. По причинам безопасности, при использовании отделённой подписи, подписанный материал не может считываться со стандартного ввода без явного указания вышеозначенным образом.
--verify-files [files]
Это специальная версия команды --verify, которая не работает с отделёнными подписями. Имена проверяемых файлов либо указываются в командной строке, либо подаются на стандартный ввод команды, по одному в строке. Команда предназначена для быстрой проверки большого числа файлов.
--list-keys [names]
--list-public-keys [names]
Выводит все ключи из связки открытых ключей, или только указанные в командной строке.
--list-secret-keys [names]
Выводит все ключи из связки секретных ключей, или только указанные в командной строке.
--list-sigs [names]
То же, что и --list-keys, но дополнительно выводит подписи на ключах.
--check-sigs [names]
То же, что и --list-sigs, но подписи проверяются.
--fingerprint [names]
Выводит все ключи и их отпечатки. Это тот же вывод, что и у --list-keys, но для каждого ключа добавляется строка, содержащая его отпечаток. Может использоваться совместно с --list-sigs или --check-sigs. Если команда задана дважды, то выводятся отпечатки и для подчинённых ключей.
--list-packets
Выводит список пакетов. Используется, в основном, для отладки.
--gen-key
Генерирует новую пару ключей. Данная команда, как правило, используется только интерактивно.
Имеется экспериментальная возможность, позволяющая генерировать ключи в пакетном режиме. Подробности в файле doc/DETAILS в исходном дистрибутиве.
--edit-key name
Предоставляет меню, позволяющее выполнять все задачи по управлению ключами:
sign

 Подписать ключ пользователя name. Если ключ не был ещё подписан ключом пользователя по умолчанию ( или пользователя заданного параметром -u), то программа выводит информацию о ключе, вместе с отпечатком и запрашивает подтверждение на подпись ключа. Подтверждение запрашивается для каждого пользователя, заданного параметром -u.
lsign
То же, что и --sign, но подпись помечается как неэкспортируемая и никогда не передаётся другим пользователям. Может использоваться, чтобы сделать ключи действительными только в локальном окружении.
nrsign
То же, что и --sign, но подпись помечается как неотзываемая.
nrlsign
Объединяет функциональность nrsign и lsign, создавая неотзываемые и неэкспортируемые подписи.
revsig
Отозвать подпись. GnuPG запрашивает подтверждение генерации отзывающего сертификата для каждой подписи, которая была сделана одним из доступных секретных ключей.
trust
Изменить уровень доверия владельцу ключа. Обновляет базу данных доверия немедленно, не требуя сохранения.
disable
enable
Пометить ключ как неиспользуемый (disable) или снять пометку (enable). Ключ помеченный как неиспользуемый не может использоваться для шифрования.
adduid
Создать альтернативный идентификатор пользователя.
addphoto
Добавить фотографический идентификатор пользователя.
deluid
Удалить идентификатор пользователя.
addkey
Добавить подключ к текущему ключу.
delkey
Удалить подключ.
revkey
Отозвать подключ.
expire
Изменить срок действия ключа. Если имеется выбранный ключ, то изменяется срок действия этого ключа. Если ни один ключ не выбран, то изменяется срок действия первичного ключа.
passwd
Изменить пароль, которым защищён секретный ключ.
primary
Пометить текущий идентификатор пользователя, как первичный. Если первичным устанавливается фотографический идентификатор пользователя, то он становится первичным по отношению к остальным фотографическим идентификаторам. Если устанавливается регулярный идентификатор, то он становится первичным по отношению к остальным регулярным идентификаторам.
uid n
Установить/снять выбор идентификатора с номером n. Значение 0 отменяет выбор всех идентификаторов.
key n
Установить/снять выбор ключа с номером n. Значение 0 отменяет выбор всех ключей.
check
Проверить выбранные (все, если ни один не выбран) идентификаторы пользователя.
showphoto
Отобразить выбранный фотографический идентификатор пользователя.
pref
Вывести список предпочтений.
showpref
Вывести подробный список предпочтений.
setpref string
Устанавливает список предпотений для идентификатора пользователя в string. string должна быть строкой подобной той, что выводится командой "pref". Используя пустую строку можно сбросить список предпочтений к установкам по умолчанию, используя значение "none" можно обнулить список предпочтений. Можно использовать только доступные алгоритмы. Данная команда только инициализирует внутренний список и ничего не изменяет, пока не будет выполнена другая команда, которая изменяет самоподписи.
updpref
Изменяет список предпочтений для всех идентификаторов пользователя (или только для выбранных) в соответствии с текущим списком предпочтений. Метка времени для всех затронутых изменением самоподписей увеличивается на одну секунду.
toggle
Переключение между открытым и секретным ключами.
save
Сохранит все изменения в наборе ключей и выйти.
quit
Выйти из программы не сохраняя изменения в наборе ключей.
Листинг показывает Вам ключ с его подключами и всеми идентификаторами пользователя. Выбранные ключи или идентификаторы пользователя указаны звёздочкой. Значение доверия выводится рядом с первичным ключом: первый символ обозначает уровень доверия, присвоенный владельцу ключа, а второй вычисленное значение достоверности ключа. Символы имеют следующее значение:
-
доверие не присвоено / достоверность не вычислена.
e
Вычисление достоверности завершилось с ошибкой; возможно из-за просроченного ключа.
q
Не достаточно информации для вычисления.
n
Нет доверия ключу.
m
Средний уровень доверия/достоверности.
f
Полное доверие/достоверность.
u
Безоговорочное доверие/достоверность.
--sign-key name
Подписать открытый ключ Вашим секретным ключом. То же, что и подкоманда "sign" команды --edit-key.
--lsign-key name
Подписать открытый ключ Вашим секретным ключом локально. То же, что и подкоманда "lsign" команды --edit-key.
--nrsign-key name
Подписать открытый ключ Вашим секретным ключом и пометить подпись как неотзываемую. То же, что и подкоманда "nrsign" команды --edit-key.
--delete-key name
Удалить ключ из набора открытых ключей.
--delete-secret-key name
Удалить ключ из наборов секретных и открытых ключей.
--delete-secret-and-public-key name
То же, что и --delete-key, но если существует секретный ключ, то сначала будет удалён он.
--gen-revoke
Генерировать отзывающий сертификат для всего ключа. Для отзыва подключа или подписи используйте команду --edit-key.
--export [names]
Либо экспортировать все ключи из всех наборов ключей (наборов по умолчанию и тех которые зарегистрированы при помощи параметра --keyring), или, если задано хотя бы одно имя, те ключи имена которых заданы в командной строке. Полученный в результате набор ключей выводится на стандартный вывод или в файл заданный параметром "output". Если Вы намерены отправить ключи по почте, то используйте совместно с параметром --armor.
--send-keys [names]
То же, что и --export но посылает ключи на сервер ключей. Для задания имени сервера ключей должен использоваться параметр --keyserver. Не отправляйте на сервер свой набор ключей полностью - выберите только те ключи, которые были добавлены или изменены Вами.
--export-all [names]
То же, что и --export, но позволяет экспортировать ключи не совместимые со стандартом OpenPGP.
--export-secret-keys [names]
--export-secret-subkeys [names]
То же, что и --export, но экспортирует секретные ключи. Используется редко и рискована с точки зрения безопасности. Вторая форма команды делает секретную часть первичного ключа, в выводимом результате, непригодной; это расширение GNU для стандарта OpenPGP и другие реализации не смогут успешно импортировать такие ключи.

Обратите внимание на параметр --simple-sk-checksum, если Вы хотите импортировать полученный результат в старую реализацию OpenPGP.

--import [files]
--fast-import [files]
Импортировать/объединить ключи. Эта команда добавляет выбранные ключи к набору ключей. --fast-import, в настоящее время является просто синонимом для --import.
Имеется несколько параметров, контролирующих работу команды. Наиболее значимый среди них - параметр --merge-only, который предотвращает добавление новых ключей и допускает только добавление новых подписей, идентификаторов пользователя и подключей к уже имеющимся ключам.
--recv-keys key IDs
Импортировать ключи с заданным идентификатором с сервера ключей. Для указания сервера ключей должен использоваться параметр --keyserver.
--search-keys [names]
Поиск по указанным именам на сервере ключей. Несколько имён, заданных в командной строке, объединяются вместе для создания строки поиска. Для указания сервера ключей должен использоваться параметр --keyserver.
--update-trustdb
Используется для поддержки базы данных доверия. Данная команда просматривает все имеющиеся ключи и строит сеть доверия (Web-of-Trust). Данная команда является интерактивной, т.к. она может запрашивать о Вашем уровне доверия владельцам ключей. Пользователь может указать насколько он доверяет владельцу указанного ключа в вопросах проверки и сертификации (подписи) других ключей. Запрос выдаётся только в том случае, если данному ключу ещё не было присвоено значение доверия. При помощи команды --edit-key можно позже изменить данное значение.
--check-trustdb
Выполняет проверку базы данных доверия без взаимодействия с пользователем. Периодически база данных доверия должна обновляться, чтобы отслеживать истёкшие ключи и вносить изменения в сеть доверия. GnuPG по возможности отслеживает такие ситуации и обновляет базу неявно, данная команда используется для выполнения проверки принудительно. Выполняемые действия аналогичны тем, которые выполняет --update-trustdb, но ключи с неприсвоенным уровнем доверия пропускаются.
При запуске с помощью cron, данная команда может использоваться с параметром --batch, в этом случае проверка выполняется только если она запланирована. Для принудительного запуска в этом случае используется параметр --yes.
--export-ownertrust [file]
Сохраняет присвоенные значения доверия в файле file (или выводит на стандартный вывод, если файл не задан). Применима в целях архивации, т.к. эти значения единственное, что не может быть восстановлено в случае повреждения базы данных доверия.
--import-ownertrust [files]
Вносит в базу данных доверия значения сохранённые в файле files (или считывает со стандартного ввода, если файл не задан); существующие значения перезаписываются.
--print-md algo [files]
--print-mds [files]
Выводит значение хэш-функции ALGO для каждого из заданных файлов или для стандартного ввода. Вторая форма (или "*" в качестве algo в первом случае) выводит значения всех доступных хэш-функций.
--gen-random 0|1|2              [count]
Выводит COUNT случайных байт с заданным уровнем качества. Если параметр
COUNT не задан или равен нулю, то выводится бесконечная последовательность случайных байт. ПРЕДУПРЕЖДЕНИЕ! Не используйте эту команду без необходимости; это может уменьшить число случайных данных доступных системе!
--gen-prime mode                bits           [qbits]
Генерирует простое число. Подробности см. в исходных текстах.
--version
Выводит информацию о версии программы и список поддерживаемых алгоритмов.
--warranty
Выводит информацию о гарантиях.
-h, --help
Выводит краткую справку по использованию команды. Список довольно длинный, хотя и не включает описания всех параметров.

ПАРАМЕТРЫ

Длинные формы параметров могут использоваться в файле параметров (по умолчанию "~/.gnupg/options"). В этом случае не указывайте два начальных дефиса, просто имя параметра и требуемые аргументы. Строки начинающиеся символом "#" (возможно после нескольких пробелов) игнорируются. Команды так же могут помещаться в этот файл, но они не будут использоваться.

gpg распознаёт следующие параметры:

-a, --armor
Создаёт вывод в ASCII формате.
-o, --output file
Сохраняет результат в файле file.
-u, --local-user name
Использует name в качестве идентификатора пользователя при подписи. Параметр игнорируется для остальных команд и может использоваться в файле параметров.
--default-key name
Использует name как основной идентификатор пользователя при подписи. Если данный параметр не используется, то основным идентификатором пользователя считается первый идентификатор пользователя найденный в секретном наборе ключей.
-r, --recipient name
Шифровать для пользователя name. Если данный параметр не указан, и не задан параметр --default-recipient, то GnuPG запрашивает идентификатор пользователя.
--default-recipient name
Использовать name как получателя по умолчанию, если не задан парметр --recipient и не выдавать запрос о получателе если значение name является допустимым. name не может быть пустым.
--default-recipient-self
Использовать ключ по умолчанию как получателя, если не задан параметр --recipient, и не выдавать запрос о получателе если значение ключа является допустимым. Ключ по умолчаню - это первый в секретном наборе ключей или тот, который задан параметром --default-key.
--no-default-recipient
Отменяет действие параметров --default-recipient и --default-recipient-self.
--encrypt-to name
То же, что и --recipient, но предназначен для использования в файле параметров и может использоваться с Вашим собственным идентификатором пользователя. Заданные ключи используются только в том случае, если используется параметр --recipient или после того как был запрошен идентификатор получателя. Для указанных ключей не производится проверка достоверности и могут использоваться даже те, которые отключены.
--no-encrypt-to
Отменяет действие параметра --encrypt-to.
-v, --verbose
Увеличивает детальность вывода информации. Если используется дважды, то детально описываются и входные данные.
-q, --quiet
Уменьшает количество выводимой информации насколько это возможно.
-z n
Устанавливает уровень сжатия равным n. Значение 0 отключает сжатие. По умолчанию используется уровень сжатия установленный по умолчанию для zlib (обычно 6).
-t, --textmode
Использовать канонический тексовый режим. Если -t (но не --textmode) используется совместно с --armor и --sign, то создаётся прозрачная подпись. Этот параметр необходим для совместимости с PGP; как правило Вы должны использовать --sign или --clearsign для выбора типа подписи.
-n, --dry-run
Не делать никаких изменений (реализован не полностью).
-i, --interactive
Выводить запрос перед перезаписью файлов.
--batch
Использовать пакетный режим. Не выводятся никакие запросы, не допускаются интерактивные команды.
--no-tty
Не использовать TTY (терминал) для вывода информации. Параметр необходим в некоторых случаях, т.к. GnuPG иногда выводит предупреждения на TTY при использовании параметра --batch.
--no-batch
Отключает пакетный режим. Может использоваться если --batch включен в файле параметров.
--yes
Предполагает утвердительный ответ на большинство вопросов.
--no
Предполагает отрицательный ответ на большинство вопросов.
--default-cert-check-level n
Устанавливает уровень проверки ключа по умолчанию при его подписи.
0 означает, что Вы не будете указывать насколько тщательно проверили ключ перед тем, как его подписывать.
1 означает, что Вы верите в достоверность ключа, но не проверяли или не можете проверить это. Применим для подписи ключей тех лиц, с которыми Вы знакомы только по переписке.
2 означает, что вы произвели поверхностную проверку ключа. Например, Вы проверили отпечаток ключа и сверили идентификатор пользователя на ключе с его фотографическим идентификатором.
3 означает, что Вы тщательно проверили достоверность ключа. Например, Вы сверили отпечаток имеющейся у Вас копии ключа с тем, который лично сообщил Вам владелец ключа, проверили по документам личность владельца ключа и сверили его имя с тем, которое указано в идентификаторе пользователя на ключе, и, наконец, убедились (путём переписки), что указанный в идентификаторе ключа адрес электронной почты, принадлежит владельцу ключа.
Заметим, что приведённые выше примеры для уровней 2 и 3 это только примеры. В конечном счёте, решение вопроса о том какая проверка является поверхностной, а какая тщательной остаётся за Вами.
Этот параметр по-умолчанию равен 0.
--trusted-key long key ID
Предполать, что указанный ключ (который должен быть задан полным 8ми байтовым идентификатором ключа) достоверен, как один из Ваших секретных ключей. Данный параметр применим если Вы не хотите хранить Ваши секретные ключи (или один из них) на данном компьютере, но хотите сохранить возможность проверять достоверность ключей Ваших корреспондентов.
--always-trust
Пропустить процедуру проверки достоверности ключа и полагать, что все используемые ключи достоверны. Вы не должны использовать данный параметр если только не используете какую-либо внешнюю схему проверки достоверности ключей. Данный параметр, также, подавляет вывод сообщения "[uncertain]" при проверке подписи, когда нет свидетельств того, что ключ принадлежит указанному в нём владельцу.
--keyserver name
Использовать сервер ключей name. Это сервер который будет использоваться для получеения, отправки и поиска ключей при использовании команд --recv-keys, --send-keys и --search-keys. Формат name это URI: `scheme:[//]keyservername[:port]' Схема -- это тип сервера ключей: "hkp" для Horowitz (или совместимого), "ldap" для NAI LDAP keyserver, "mailto" для Horowitz email keyserver. Заметим, что конкретная инсталяция GnuPG может допускать и другие типы серверов ключей.
Большинство серверов ключей синхронизируются друг с другом, т.о. нет необходимости посылать ключи более чем на один сервер. Используя команду "host -l pgp.net | grep wwwkeys" Вы получите список серверов ключей HKP.
--keyserver-options parameters
Данная строка содержит список разделённых пробелами или запятыми параметров сервера ключей. Параметры могут предваряться префиксом `no-' для получения обратного значения. Не все параметры допустимы для любого типа сервера ключей. Основные параметры следующие:
include-revoked
При запросе или поиске ключей, учитывать и те ключи, которые помечены на сервере ключей как отозванные. Заметим, что данный параметр всегда установлен при использовании серверов NAI HKP, т.к. данный сервер не делает разницы между отозванными и неотозванными ключами.
include-disabled
При запросе или поиске ключей, учитывать и те ключи, которые помечены на сервере ключей как неиспользуемые. Заметим, что данный параметр не используется HKP серверами, т.к. они не поддерживают неиспользуемые ключи.
use-temp-files
На большинстве Unix-подобных платформ GnuPG взаимодействует с программой обращения к серверу ключей через каналы, которые являются наиболее эффективным методом. Данный параметр заставляет GnuPG использовать для взаимодействия временные файлы. На некоторых платформах (таких как Win32 и RISC OS) данный параметр используется всегда.
keep-temp-files
Указывает, что при включеном параметре `use-temp-files' временные файлы не должны удаляться после их использования. Данный параметр удобен для изучения протокола взаимодействия с сервером ключей.
verbose
Указывает программе взаимодействия с сервером ключей выводить более подробную информацию. Может повторяться несколько раз для увеличения детальности вывода.
honor-http-proxy
Для серверов ключей которые используют HTTP (таких как HKP), использовать доступ через прокси-сервер указанный в переменной окружения "http_proxy".
auto-key-retrieve
Данный параметр разрешает автоматическое получение ключей с сервера при проверке подписей сделанных ключами, которых нет в локальном наборе ключей.
--show-photos
Приводит к тому, что команды --list-keys, --list-sigs, --list-public-keys, и --list-secret-keys выводят фотографические идентификаторы пользователя связанные в ключом, если таковые имеются. См. также --photo-viewer.
--no-show-photos
Отменяет действие параметра --show-photos.
--photo-viewer string
Определяет командную строку, которая должна быть выполнена для просмотра фотографического идентификатора. "%i" раскрывается в имя файла, содержащего фотографию. "%I" делает то же самое, но файл не будет удалён после выхода из программы просмотра. "%k" заменяется идентификатором ключа, "%K" -- длинным идентификатором ключа, "%f" -- отпечатком ключа, "%t" -- расширением для данного типа изображений (напр., "jpg"), "%T" -- MIME типом изображения (напр., "image/jpeg"), и "%%" -- знаком процента. Если не используется ни "%i", ни "%I", то фотография передаётся на стандартный ввод команды просмотра.
Значение по умолчанию: "xloadimage -fork -quiet -title 'KeyID 0x%k' stdin"
--show-keyring
Приводит к тому, что команды --list-keys, --list-public-keys, и --list-secret-keys выводят имя набора ключей в котором хранится ключ. Применим в тех случаях, когда выводится конкретный ключ или множество ключей. Не оказывает воздействия при выводе всех ключей.
--keyring file
Добавить file к списку наборов ключей. Если file начинается с тильды или символа косой черты, то они заменяются значением переменной окружения HOME. Если имя файла не содержит символа косой черты, то предполагается, что файл находится в каталоге homedir ("~/.gnupg" если параметр --homedir не используется). Имя файла может предваряться префиксом scheme:
"gnupg-ring:" схема по умолчанию.
Выбор схемы имеет значение при использовании совместно с параметром --no-default-keyring.
--secret-keyring file
То же, что и --keyring но для наборов секретных ключей.
--homedir directory
Установить имя домашнего каталога равным directory Если данный параметр не установлен, то по умолчанию используется "~/.gnupg". Игнорируется в файле параметров. Перекрывает значение переменной окружения "GNUPGHOME".
--charset name
Установить используемый набор сиволов. Используется при преобразовании некоторых строк в кодировку UTF-8. Допустимые значения name:
iso-8859-1
Набор символов Latin 1, используемый по умолчанию.
iso-8859-2
Набор символов Latin 2.
koi8-r
Русская кодировка (rfc1489).
utf-8
Не выполнять преобразования и полагать, что OS использует кодировку UTF-8.
--utf8-strings
--no-utf8-strings
Полагать, что аргументы заданы как строки в кодировке UTF8. По умолчанию (--no-utf8-strings), предполагается что строки закодированы в наборе символов определённом параметром --charset. Данный параметр оказывает влияние на все последующие аргументы. Оба параметра могут присутствовать в командной строке произвольное число раз.
--options file
Считать параметры из файла file и не пытаться использовать файл по умолчанию. Данный параметр игнорируется если он указан в файле параметров.
--no-options
Сокращение для "--options /dev/null". Данный параметр определяется до открытия файла параметров. Предотвращает, также, создание каталога "~./gnupg".
--load-extension name
Загрузить модуль расширения. Если name не содержит косой черты, то модуль ищется в каталоге "/usr/local/lib/gnupg".
--debug flags
Установить отладочные флаги. Все флаги объединяются при операцией OR и flags может быть задан в стиле C (напр., 0x0042).
--debug-all
Установить все используемые отладочные флаги.
--status-fd n
Выводить строки состояния в файл с дескриптором n. См. файл DETAILS в документации.
--logger-fd n
Выводить журнал в файл с дескриптором n, а не на стандартный вывод.
--no-comment
Не записывать пакеты коментариев. Данный параметр влияет только на генерацию секретных ключей. Заметьте, что он не оказывает никакого влияния на коментарии в прозрачных подписях.
--comment string
Использовать string как комментарий в прозрачных подписях. По умолчанию строка коментария отсутствует.
--default-comment
Принудительно вывести стандартный комментарий в прозрачной подписи. Используется для перезаписи --comment из файла параметров. Данный параметр устарел, т.к. комментарий по умолчанию больше не используется.
--no-version
Не выводить строку версии в прозрачной подписи.
--emit-version
Вывести строку версии в прозрачной подписи. Используется для перезаписи параметра --no-version из файла конфигурации.
-N, --notation-data name=value
Поместить пару имя - значение в подпись, как примечание. name должно содержать только алфавитные символы, цифры и знак подчеркивания; первый символ не должен быть цифрой. value может содержать любые печатные символы; эта строка будет закодирована в UTF8, так что Вы сможете проверить корректность установки Вашего параметра --charset. Если Вы предварите name восклицательным знаком, то примечание будет помечено как критическое (rfc2440:5.2.3.15).
--show-notation
Показать примечания в подписях на ключах при выполнении команд --list-sigs и --check-sigs.
--no-show-notation
Не показывать примечания в подписях на ключах при выполнении команд --list-sigs и --check-sigs.
--set-policy-url string
Использовать string в качестве Policy URL для подписи (rfc2440:5.2.3.19). Если Вы предварите его восклицательным знаком, то пакет с URL будет помечен как критический.
--show-policy-url
Показывать policy URL при выполнении команд --list-sigs и --check-sigs.
--no-show-policy-url
Не показывать policy URL при выполнении команд --list-sigs и --check-sigs.
--set-filename string
Использовать string как имя файла в котором хранится сообщение.
--for-your-eyes-only
Устанавливает в сообщении флаг `for your eyes only'. Это приводит к тому, что GnuPG не сохраняет расшифрованный файл если не указан параметр --output, а PGP использует "secure viewer" для вывода сообщения. Данный параметр перекрывает значение параметра --set-filename.
--no-for-your-eyes-only
Отменяет параметр --for-your-eyes-only.
--use-embedded-filename
Попытаться создать файл с именем содержащимся в данных. Может быть небезопасной, т.к. позволяет перезаписывать файлы.
--completes-needed n
Число подписей на ключе, сделанных пользователями которым Вы полностью доверяете, необходимых для признания ключа достоверным (по умолчанию 1).
--marginals-needed n
Число подписей на ключе, сделанных пользователями которым Вы доверяете не полностью, необходимых для признания ключа достоверным (по умолчанию 3).
--max-cert-depth n
Максимальная длина цепочки сертификации (по умолчанию 5).
--cipher-algo name
Использовать алгоритм шифрования name. Запуск программы с командой --version выводит список поддерживаемых алгоритмов шифрования. Если данный параметр не используется, то алгоритм шифрования выбирается из указанных в списке предпочтений ключа.
--digest-algo name
Использовать хэш-функцию name. Запуск программы с командой --version выводит список поддерживаемых хэш-функций. Заметьте, что использование данного параметра может нарушать требования OpenPGP относительно использования 160битной хэш-функции совместно с алгоритмом DSA.
--s2k-cipher-algo name
Использовать для защиты секретного ключа алгоритм шифрования name. По умолчанию используется BLOWFISH. Данный алгоритм используется, также, для симметричного шифрования, в случае если не задан параметр --cipher-algo.
--s2k-digest-algo name
Использовать хэш-функцию name для обработки ключевой фразы. По умолчанию использется RIPE-MD-160. Данный алгоритм используется, также, при симметричном шифровании, в случае если не задан параметр --digest-algo.
--s2k-mode n
Определяет метод обработки ключевой фразы. Если n равен 0, то ключевая фраза не обрабатывается (не рекомендуется), если 1 (по умолчанию), добавляется соль к ключевой фразе и если 3, то весь процесс повторяется несколько раз. Данный параметр используется, также, при симметричном шифровании, если не указан параметр --rfc1991.
--simple-sk-checksum
Целостность секретных ключей защищена при помощи контрольной суммы SHA-1. Данный метод будет являться частью расширенной спецификации OpenPGP, но GnuPG уже использует его в качестве контрмеры против некоторых атак. Старые приложения не понимают новый формат, и данный параметр может использоваться для передачи секретных ключей таким приложениям. Использование данного параметра рисковано с точки зрения безопасности.
--compress-algo n
Использовать алгоритм сжатия n. По умолчанию равен 2 (алгоритм описанный в RFC1950). Вы можете использовать 1 для старой версии zlib (RFC1951), которая используется PGP. 0 отключает сжатие. Алгоритм используемый по умолчанию может давать лучшие результаты, т.к. не ограничивает размер окна 8кб. Если данный параметр не задан, то используются параметры описанные в OpenPGP, т.е. алгоритм сжатия выбирается из списка предпочтений ключа; заметим, что это может быть сделано только при шифровании данных.
--disable-cipher-algo name
Никогда не использовать алгоритм шифрования name. Заданное имя не проверяется, поэтому алгоритм загруженный позже останется отключенным.
--disable-pubkey-algo name
Никогда не использовать алгоритм с открытым ключом name. Заданное имя не проверяется, поэтому алгоритм загруженный позже останется отключенным.
--no-sig-cache
Не кэшировать информацию о состоянии проверки подписей. Кэширование значительно увеличивает производительность при выводе списка ключей. Однако, если Вы сомневаетесь в защищенности Вашего набора открытых ключей от изменений, то можете использовать данный параметр для отключения кэширования. Вероятно данная операция лишена особого смысла, поскольку если кто-либо имеет доступ на запись в Ваш набор открытых ключей, то он может выполнить любые виды повреждений.
--no-sig-create-check
GnuPG, как правило, проверяет каждую подпись после её создания для защиты от ошибок и сбоев аппаратной части, которые могут привести к изменению битов секретного ключа. Эта дополнительная проверка занимает некоторое время (около 115% для DSA ключей). Данный параметр используется для отключения проверки. Однако, поскольку создание подписи происходит в интерактивном режиме, выигрыш времени от установки данного параметра будет незаметен в большинстве конфигураций.
--auto-check-trustdb
Если GnuPG полагает, что информация в сети доверия должна быть обновлена, то она автоматически запускает команду --check-trustdb. Процесс обновления может занимать некоторое время.
--no-auto-check-trustdb
Отменяет действие параметра --auto-check-trustdb.
--throw-keyid
Не помещать идентификатор ключа в зашифрованный пакет. Данный параметр скрывает получателя сообщения и является контрмерой против анализа траффика. Расшифровка сообщения может происходить медленнее, поскольку GnuPG будет пытаться использовать все доступные секретные ключи до нахождения правильного.
--not-dash-escaped
Данный параметр изменяет правила создания прозрачных подписей таким образом, что они могут использоваться для патчей. Вы не должы посылать такие файлы электронной почтой, т.к. при подписи учитываются все пробелы и символы перевода строки. Вы не можете использовать данный параметр для данных содержащих строки начинающиеся с пяти дефисов. В начало подписи добавляется специальный заголовок, указывающий GnuPG на использование данного параметра.
--escape-from-lines
Поскольку многие почтовые агенты меняют "From " в начале строк на "<From ", то разумно обрабатывать такие строки особым образом при создании прозрачных подписей. Все прочие реализации PGP делают это таким эе образом. Данный параметр не включен по умолчанию поскольку противоречит rfc2440.
--passphrase-fd n
Считать ключевую фразу из файла с дескриптором n. Если Вы используете 0 для n, то пароль будет считан со стандартного ввода. Данный параметр может использоваться в случае если требуется только одна ключевая фраза. Не используйте данный параметр если можете избежать этого.
--command-fd n
Это замена для нерекомендуемого режима разделяемой памяти IPC. Если параметр задан, то ввод команд пользователя считывается не с терминала, а из файла с указанным дескриптором. Рекомендуется использовать совместно в --status-fd. См. файл doc/DETAILS в исходном дистрибутиве для более подробного описания.
--use-agent
По возможности использовать GnuPG-Agent. Заметьте, что данный агент находится в стадии разработки. Если параметр установлен, то GnuPG сначала пытается использовать agent, а если это не удаётся, то запрашивает пароль.
--gpg-agent-info
Перекрывает значение переменной окружения GPG_AGENT_INFO. Используется только при включенном параметре --use-agent.
--rfc1991
Быть более совместимым с RFC1991 (PGP 2.x).
--pgp2
Устанавливает все параметры в режим максимальной совместимости с PGP 2.x. Если выполняемые действия приводят к созданию сообщения которое не может быть обработано PGP 2.x (напр., шифрование не RSA ключом), то выдаётся соответствующее предупреждение. Заметим, что под `PGP 2.x' здесь подразумевается реализация 'MIT PGP 2.6.2'.
Данный параметр неявно предполагает `--rfc1991 --no-openpgp --disable-mdc --no-force-v4-certs --no-comment --escape-from --force-v3-sigs --no-ask-sig-expire --no-ask-cert-expire --cipher-algo IDEA --digest-algo MD5 --compress-algo 1'
--no-pgp2
Отменяет действие параметра --pgp2.
--pgp6
Устанавливает все параметры в режим максимальной совместимости с PGP 6. Это ограничивает наборы симметричных алгоритмов IDEA, 3DES и CAST5, хэш-функций MD5, SHA1 и RIPEMD160 и алгоритмов сжатия none и ZIP. Параметр отключает, также, подпись сообщений подписывающими подключами, т.к. PGP не распознаёт такие подписи.
Данный параметр неявно предполагает
 `--disable-mdc --no-comment --escape-from --force-v3-sigs --no-ask-sig-expire --compress-algo 1'
--no-pgp6
Отменяет действие параметра --pgp6.
--openpgp
Приводит значения всех параметров, определяющих форматы пакетов, алгритмы шифрования и хэш-функции в соответствие стандарту OpenPGP. Используйте данный параметр для сброса всех ранее установленных параметров, таких как --rfc1991, --force-v3-sigs, --s2k-*, --cipher-algo, --digest-algo и --compress-algo в значения совместимые со стандартом OpenPGP. Все установки используемые для совместимости с PGP также отключаются.
--force-v3-sigs
Стандарт OpenPGP рекомендует, чтобы приложения генерировали подписи v4, но PGP версий 5 и выше распознаёт такие подписи только на ключах. Данный параметр принуждает GnuPG использовать для подписи данных подписи v3.
--no-force-v3-sigs
Отменяет действие параметра --force-v3-sigs.
--force-v4-certs
Всегда использовать v4 подписи на ключах, даже если это v3 ключи. Данный параметр, кроме того, меняет используемую по умолчанию хэш-функцию для v3 RSA ключей с MD5 на SHA-1.
--no-force-v4-certs
Отменяет действие параметра --force-v4-certs.
--force-mdc
Принуждает GnuPG использовать шифрование с добавлением управляющего кода. Всегда используется с более новыми шифрами (с размером блока более 64 бит).
--allow-non-selfsigned-uid
Разрешает импорт и использование ключей с несамоподписанным идентификатором пользователя. Не рекомендуется для использования, т.к. такой идентификатор пользователя легко подделать.
--no-allow-non-selfsigned-uid
Отменяет действие параметра --allow-non-selfsigned-uid.
--allow-freeform-uid
Отключает проверку формата идентификатора пользователя при его создании. Данный параметр рекомендуется использовать только в особых случаях, т.к. он не гарантирует являющийся стандартом де-факто формат идентификатора пользователя.
--ignore-time-conflict
GnuPG, обычно, проверяет правдоподобность значений меток времени, связанных с ключами и подписями. Однако, иногда подпись оказывается старше ключа из-за проблем с часами. Данный параметр позволяет ограничиваться в подобных случаях предупреждением.
--ignore-valid-from
GnuPG, как правило, не позволяет выбирать и использовать ключи созданные в будущем. Данный параметр разрешает использование таких ключей. Вы не должны использовать данный параметр если у Вас нет серьёзных проблем с часами.
--ignore-crc-error
ASCII формат, используемый OpenPG защищается контрольной суммой для защиты от ошибок при передаче. Периодически эта контрольная сумма нарушается при передаче сообщения, но сама информация (защищенная протоколом OpenPGP) остаётся достоверной. Данный параметр позволяет игнорировать ошибки контрольной суммы.
--lock-once
Блокировать базы данных при первом запросе и не снимать блокировку до завершения процесса.
--lock-multiple
Снимать блокировку каждый раз когда она больше не нужна. Используется для перезаписи --lock-once из файла конфигурации.
--lock-never
Полностью отменить блокировки. Данный параметр должен использоваться только в очень специфических средах, когда можно быть уверенным, что только один процесс имеет доступ к файлам. Загрузочная дискета с системой шифрования на ней может служить примером использования данного параметра. Неправильное использование донного параметра может привести к повреждению ключей и данных.
--no-random-seed-file
GnuPG использует файл для хранения внутреннего пула случайных чисел между запусками. Это ускоряет генерацию случайных чисел; однако в некоторых случаях операции записи не допускаются. Данный параметр может быть использован в такой ситуации ценой замедления генерации случайных чисел.
--no-verbose
Сбросить уровень детальности вывода в 0.
--no-greeting
Подавляет вывод сообщения об авторских правах.
--no-secmem-warning
Подавляет вывод предупреждения об использовании незащищенной памяти.
--no-permission-warning
Подавляет вывод предупреждения о небезопасных правах доступа к файлам.
--no-armor
Предполагать, что входные данные не в ASCII формате.
--no-default-keyring
Не добавлять наборы ключей по умолчанию к списку наборов ключей.
--skip-verify
Пропустить проверку подписи. Этот параметр может использоваться для ускорения расшифрования если проверка подписи не требуется.
--with-colons
Вывести список ключей в виде полей разделённых двоеточиями. Заметьте, что вывод будет закодирован в UTF-8 независимо от значения параметра --charset.
--with-key-data
Вывести список ключей в виде полей разделённых двоеточиями (как и при использовании --with-colons) и вывести данные открытых ключей.
--with-fingerprint
То же, что и --fingerprint но изменяет только формат вывода и может использоваться с другой командой.
--fast-list-mode
Ускоряет работу команд выводящих список ключей; за счёт сокращения объёма выводимой информации. Некоторым приложениям не нужен идентификатор пользователя и информация об уровне доверия. Используя данный параметр они могут ускорить вывод списка. Точное поведение данной команды может измениться в будущих версиях.
--fixed-list-mode
Не объединять идентификатор пользователя и первичный ключ при выводе в режиме --with-colon и выводить все метки времени в секундах с 1970-01-01.
--list-only
Изменяет работу некоторых команд. Схожа с --dry-run, но отличается в некоторых случаях. Семантика параметра может в будущем быть расширена. В настоящее время он только пропускает дешифрование и поэтому ускоряет вывод списка ключей шифрования.
--no-literal
Параметр не предназначен для обычного использования. Подробности применения смотрите в исходных текстах программы.
--set-filesize
Параметр не предназначен для обычного использования. Подробности применения смотрите в исходных текстах программы.
--emulate-md-encode-bug
GnuPG версий до 1.0.2 содержала ошибку в алгоритме кодирования подписи. Данный параметр позволяет проверять такие подписи. Ошибка возникает только в подписях ElGamal, которые используются сравнительно редко.
--show-session-key
Показать сеансовый ключ, использованный для зашифровки данного сообщения. См. также --override-session-key.
Данный параметр может использоваться в случае если Вас принуждают открыть содержимое отдельного сообщения. Используя данный параметр Вы можете получить сеансовый ключ, которым зашифровано сообщение. При помощи сеансового ключа Вы можете открыть сообщение не компрометируя остальные сообщения, зашифрованные для того же секретного ключа. НЕ ИСПОЛЬЗУЙТЕ ДАННЫЙ ПАРАМЕТР БЕЗ КРАЙНЕЙ НЕОБХОДИМОСТИ.
--override-session-key string
Не использовать сеансовый ключ зашифрованный открытым ключом, а воспользоваться ключом string. Формат параметра аналогичен выводимому при использовании --show-session-key. Данный параметр используется в том случае, если Вас принуждают открыть содержимое зашифрованного сообщения; используя данный параметр Вы можете это сделать без использования секретного ключа.
--ask-sig-expire
При подписи данных запрашивать срок действия подписи. Если параметр не задан, то подпись бессрочная.
--no-ask-sig-expire
Отменяет действие параметра --ask-sig-expire.
--ask-cert-expire
При подписи ключа запрашивать срок действия подписи. Если параметр не задан, то подпись бессрочная.
--no-ask-cert-expire
Отменяет действие параметра --ask-cert-expire.
--expert
Позволяет пользователю выполнять некоторые нелепые или бессмысленные операции, например, подписывать просроченные и отозванные ключи, или операции нарушающие совместимость, например, добавлять более одного фотографического идентификатора к единственному ключу. В общем, данный параметр только для специалистов. Если Вы не понимаете полностью зачем нужен этот параметр, лучше оставьте его отключенным.
--no-expert
Отменяет действие параметра --expert.
--merge-only
Не добавлять новые ключи при импорте. Добавляются только новые подписи и идентификаторы пользователей к уже имеющимся ключам.
--allow-secret-key-import
Устаревший параметр, больше не используется.
--try-all-secrets
Не обращать внимания на идентификатор ключа в сообщении, но перепробовать все имеющиеся секретные ключи пока не найдётся правильный ключ для расшифрования сообщения. Данный параметр принудительно устанавливает режим используемый при расшифровке сообщений для анонимных получателей (созданных с помощью --throw-keyid) и может быть полезен в случае если зашифрованное сообщение содержит неправильный идентификатор ключа.
--enable-special-filenames
Данный параметр включает режим в котором имена файлов вида -&n, где n -- неотрицательное десятичное число, обозначают файл с дескриптором n.
--no-expensive-trust-checks
Только для экспериментального использования.
--preserve-permissions
Не изменять права доступа к файлу с набором секретных ключей в режим доступа чтения/записи только для владельца. Используйте данный параметр только в том случае, если действительно понимаете зачем Вам это нужно.
--preference-list string
Установить список предпочтений равным string, этот список должен быть строкой подобной той, которая выводится командой "pref" режима редактирования.

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

Имеется несколько способов указания идентификатора пользователя для GnuPG; ниже приведено несколько примеров:
    

234567C4
0F34E556E
01347A56A
0xAB123456
Это идентификатор ключа заданный в обычной коротком формате.
234AABBCC34567C4
0F323456784E56EAB
01AB3FED1347A5612
0x234AABBCC34567C4
Здесь идентификатор ключа задан в длинном формате, как в OpenPGP (Вы можете получить длинный идентификатор ключа используя параметр --with-colons).
1234343434343434C434343434343434
123434343434343C3434343434343734349A3434
0E12343434343434343434EAB3484343434343434
0xE12343434343434343434EAB3484343434343434
Наилучший способ задания ключа -- это использование его отпечатка. Это предотвращает любые неоднозначности в случае одинаковых идентификаторов ключей (которые крайне редки для длинных идентификаторов ключей).
=Heinrich Heine <heinrichh@uni-duesseldorf.de>
Используется точное соответствие строке. Это указывается знаком равенства.
<heinrichh@uni-duesseldorf.de>
Используется точное соответствие адреса электронной почты. Левая угловая скобка указывает, что используется ражим адреса электронной почты.
+Heinrich Heine duesseldorf
Все слова должны точно соответствовать указанным (регистр символов не имеет значения) но могут присутствовать в идентификаторе пользователя в любом порядке. Слова могут быть любыми последовательностями букв, цифр, знаков подчеркивания и символов с установленным 7-м битом.
Heine
*Heine
Идентификатор должен содержать заданную подстроку (регистр символов не имеет значения). Этот режим используется по умолчанию, но можно дополнительно задать его поместив символ звёздочки в начале.

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

ВОЗВРАЩАЕМОЕ ЗНАЧЕНИЕ

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

ПРИМЕРЫ

gpg -se -r Bob file
подписать и зашифровать для пользователя Bob
gpg --clearsign file
создать прозрачную подпись
gpg -sb file
создать отделённую подпись
gpg --list-keys user_ID
показать ключ
gpg --fingerprint user_ID
показать отпечаток ключа
gpg --verify pgpfile
gpg --verify sigfile [files]
Проверить подпись на файле, но не выводить его содержимое. Вторая форма может использоваться для отделённых подписей, где sigfile --- отделённая подпись (двоичная или в ASCII формате), а [files] подписанные данные; если имя файла не задано, то оно образуется удалением расширения (".sig" или ".asc") у имени sigfile или запрашивается у пользователя.

ПЕРЕМЕННЫЕ ОКРУЖЕНИЯ

HOME
Домашний каталог пользователя.
GNUPGHOME
Каталог, заменяющий "~/.gnupg".
GPG_AGENT_INFO
Используется для определения местоположения gpg-agent; используется только если установлен параметр --use-agent. Значение состоит из 3 полей, разделённых двоеточиями. Первое -- путь к доменному сокету UNIX, второе -- идентификатор процесса gpg-agent, и третье -- версия протокола, которая должна быть равна 1. При запуске gpg-agent, как описано в документации, данной переменной присваивается корректное значение. Параметр --gpg-agent-info может использоваться для перекрытия значения данной переменной.
http_proxy
Используется только если установлен параметр --honor-http-proxy.

ФАЙЛЫ

~/.gnupg/secring.gpg
Набор секретных ключей
~/.gnupg/secring.gpg.lock
и его файл блокировки
~/.gnupg/pubring.gpg
Набор открытых ключей
~/.gnupg/pubring.gpg.lock
и его файл блокировки
~/.gnupg/trustdb.gpg
База данных доверия
~/.gnupg/trustdb.gpg.lock
и её файл блокировки
~/.gnupg/random_seed
используется для хранения внутреннего пула случайных чисел
~/.gnupg/options
Файл в котором хранятся параметры
/usr[/local]/share/gnupg/options.skel
Проотип файла параметров
/usr[/local]/lib/gnupg/
Каталог, в котором по умолчанию хранятся модули расширения

ПРЕДУПРЕЖДЕНИЯ

Используйте *хорошие* пароли для Вашей учетной записи и *хорошие* ключевые фразы для защиты Вашего секретного ключа. Ключевая фраза является самой слабой частью всей системы. Несложно создать программу, которая произведёт словарную атаку на Ваш набор секретных ключей, поэтому тщательно защищайте свой каталог "~/.gnupg/".

Помните, что если Вы используете эту программу через сеть (например, используя telnet), то *очень* легко перехватить Вашу ключевую фразу!

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

ОШИБКИ

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

ПЕРЕВОД

Перевод на русский язык: Павел Шайдо <zwon@e-mail.ru>

Index

НАЗВАНИЕ
СИНТАКСИС
ОПИСАНИЕ
КОМАНДЫ
ПАРАМЕТРЫ
Как задать идентификатор пользователя
ВОЗВРАЩАЕМОЕ ЗНАЧЕНИЕ
ПРИМЕРЫ
ПЕРЕМЕННЫЕ ОКРУЖЕНИЯ
ФАЙЛЫ
ПРЕДУПРЕЖДЕНИЯ
ОШИБКИ
ПЕРЕВОД