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