Пред: , Вверх: Команды GPG   [Содержание][Указатель]


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

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

--quick-generate-key идентификатор пользователя [алг [назначение [срок]]]
--quick-gen-key

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

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

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

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

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

--quick-set-expire отп срок [*|отп.подключей]

Когда даны два аргумента, установить непосредственно время истечения срока действия первичного ключа, на который указывают отп, равным значинию аргумента срок. Чтобы установить бессрочное действие, используйте 0. Когда аргументов три, а последний равен «*», срок действия всех неотозванных и еще не просроченных подключей устанавливается равным значению аргумента срок. Если аргументов три, а последний представляет собой список отпечатков, срок действия всех неотозванных подключей, соответствующих этим отпечаткам, устанавливается равным значению аргумента срок.

--quick-add-key отп [алг [[назначение] [срок]]]

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

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

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

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

--generate-key
--gen-key

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

--full-genenerate-key
--full-gen-key

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

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

--generate-revokation имя
--gen-revoke имя

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

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

--generate-designated-revocation имя
--desig-revoke имя

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

--edit-key

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

uid n

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

key n

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

sign

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

lsign

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

nrsign

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

tsign

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

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

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

delsig

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

revsig

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

check

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

adduid

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

addphoto

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

showphoto

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

deluid

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

revuid

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

primary

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

keyserver

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

notation

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

pref

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

showpref

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

setpref строка

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

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

addkey

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

addcardkey

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

keytocard

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

bkuptocard файл

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

delkey

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

revkey

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

expire

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

trust

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

disable
enable

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

addrevoker

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

passwd

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

toggle

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

clean

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

minimize

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

change-usage

Изменить признаки назначения (возможности) первичного ключа или подключей. Эти признаки назначения, напр. Certify (подпись ключа), Sign (подпись данных) Authenticate (удостоверение личности), Encrypt (шифрование) устанавливаются во время создания ключа. Иногда полезно иметь возможность изменять их (например, добавить удостоверение личности) после создания. Делайте это с осторожностью; допустимые признаки назначения зависят от алгоритма ключа.

cross-certify

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

save

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

quit

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

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

--sign-key имя

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

--lsign-key имя

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

--quick-sign-key отп [имена]
--quick-lsign-key отп [имена]

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

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

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

--quick-add-uid идентификатор пользователя новый идентификатор пользователя

Эта команда добавляет к существующему ключу новый идентификатор пользователя. В отличие от диалоговой подкоманды adduid --edit-key, новый идентификатор пользователя добавляется буквально, удаляются только пробелы из начала и конца строки, предполагается кодировка UTF-8, форма идентификатора не проверяется.

--quick-revoke-uid идентификатор пользователя отзываемый идентификатор пользователя

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

--quick-set-primary-uid идентификатор пользователя новый идентификатор

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

--change-passphase идентификатор пользователя
--passwd идентификатор пользователя

Поменять фразу-пароль секретного ключа, принадлежащего сертификату, указанному как идентификатор пользователя. Это сокращение подкоманды passwd --edit-key. При использовании с параметром --dry-run фраза-пароль в действительности не меняется, но проходит проверка, совпадает ли введенная фраза-пароль с текущей.


Пред: , Вверх: Команды GPG   [Содержание][Указатель]