Переставить UID в GPG

18

В GPG можно ли переместить UID вверх или вниз в списке UID в ключе PGP?

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

pub   4096R/0xAABBD62D0BA66C66 2014-09-02
uid                 [ultimate] Mr. Foo Bar <fourth@example.com>
uid                 [ultimate] Mr. Foo Bar <first@example.com>
uid                 [ultimate] Mr. Foo Bar <third@example.com>
uid                 [ultimate] Mr. Foo Bar <second@example.com>
IQAndreas
источник

Ответы:

22

Вы можете заставить UID появляться в верхней части списка, сделав его основным. Затем верхний UID перемещается во второй слот, и все остальное сдвигается на одну позицию вниз. Кажется, что этот «сдвиг» происходит только после того, как вы saveизмените ключ.

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

Команды для этого следующие (текст следующий $и то gpg>, что вы вводите в консоль):

$ gpg --edit-key 0xAABBD62D0BA66C66
gpg (GnuPG) 1.4.16; Copyright (C) 2013 Free Software Foundation, Inc.
 # irrelevant output removed #
[ultimate] (1). Mr. Foo Bar <fourth@example.com>
[ultimate] (2)  Mr. Foo Bar <first@example.com>
[ultimate] (3)  Mr. Foo Bar <third@example.com>
[ultimate] (4)  Mr. Foo Bar <second@example.com>
gpg> uid 3
[ultimate] (1). Mr. Foo Bar <fourth@example.com>
[ultimate] (2)  Mr. Foo Bar <first@example.com>
[ultimate] (3)* Mr. Foo Bar <third@example.com>
[ultimate] (4)  Mr. Foo Bar <second@example.com>
gpg> primary
[ultimate] (1)  Mr. Foo Bar <fourth@example.com>
[ultimate] (2)  Mr. Foo Bar <first@example.com>
[ultimate] (3)* Mr. Foo Bar <third@example.com>
[ultimate] (4)  Mr. Foo Bar <second@example.com>
gpg> save

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

IQAndreas
источник
Это не очень эффективное решение, поэтому я надеюсь, что кто-то другой знает лучший метод.
IQAndreas
3
GPG не очень эффективное решение, но оно (технически) работает!
Конорш
3

Единственное гарантированное поведение - первичный UID указан первым.

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

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

Саймон Рихтер
источник
1

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

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

Таким образом, вы можете минимизировать количество самоподписей, создавая файлы, содержащие только один UID, удаляя ключ (не забудьте сначала сделать резервную копию закрытых ключей!), И импортируйте UID в нужном порядке.

Вы можете создать эти файлы с gpgsplitили, удалив все UID, кроме одного, и экспортировав оставшийся UID, импортировав файл со всеми UID, удалив все, кроме одного, и так далее.

Хауке Лагинг
источник