1

У меня есть один ключ GPG на моем компьютере, чей идентификатор "jviotti@openmailbox.org".

Я использую команду --encrypt для шифрования фиктивного текстового файла, добавляя себя в качестве получателя, но с опечаткой в моем ID:

$ echo "Hello World" > foo
$ gpg --recipient jviotti@openmailbox.or --encrypt foo

Теперь, если я попытаюсь расшифровать его с помощью gpg -d foo.gpg , появится обычный экран с паролем, на котором будет отображен Juan Cruz Viotti <jviotti@openmailbox.org> . Если я правильно поставил свой пароль, файл расшифровывается просто отлично.

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

1 ответ1

0

GPG соответствует первой части получателя, которую вы ввели:

jviotti@openmailbox.or     # was typed in
jviotti@openmailbox.org    # ID that was matched

Только последнее письмо отсутствовало. Он должен даже работать только с вводом j, поскольку он будет соответствовать единственному ключу, который у вас есть (аналогично "tab complete" в терминале).

Попробуйте ввести команду, не просто пропустив последнюю букву, но изменив неправильную букву в письме; это не должно совпадать.

Причина заключается в том, что режимом по умолчанию для указания идентификатора пользователя является совпадение подстроки, поэтому введенный вами частичный адрес электронной почты совпадает с полным адресом электронной почты идентификатора пользователя. На справочной странице GPG есть раздел "Как указать идентификатор пользователя":

   By substring match.
          This is the default mode but  applications  may
          want to explicitly indicate this by putting the
          asterisk in front.  Match is  not  case  sensi‐
          tive.

     Heine
     *Heine

Вот немного другая сокращенная версия на GnuPG.org:

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

Существуют разные способы указания идентификатора пользователя для GnuPG; Вот некоторые примеры:

  • :: Используется для поиска домашнего каталога по умолчанию.
  • Здесь идентификатор ключа указан в обычной краткой форме.
  • 234AABBCC34567C4, 0F323456784E56EAB, 01AB3FED1347A5612, 0x234AABBCC34567C4 :: Здесь идентификатор ключа дается в полной форме, используемой OpenPGP.
  • 1234343434343434C434343434343434, 123434343434343C3434343434343734349A3434, 0E12343434343434343434EAB3484343434343434, 0xE12343434343434343434EAB3484343434343434 :: ID ключа является лучшим способом указать ключ. Это позволяет избежать двусмысленности в случае наличия дублированных идентификаторов ключей (которые действительно редки для длинных идентификаторов ключей).
  • Использование точного соответствия строки. Знак равенства указывает на это.
  • Используя часть адреса электронной почты, которая должна точно соответствовать. Левая угловая скобка указывает этот режим адреса электронной почты.
  • Все слова должны точно соответствовать (без учета регистра), но могут отображаться в любом порядке в идентификаторе пользователя. Слова - это любые последовательности букв, цифр, подчеркивания и всех символов с установленным битом 7.
  • Используя локальный идентификатор. Это метод очень низкого уровня и должен использоваться только приложениями, которые действительно нуждаются в нем. Хэш-символ указывает на этот метод. Приложение не должно предполагать, что это только число.
  • По нечувствительному к регистру соответствию подстроки. Это режим по умолчанию, но приложения могут явно указать это, поставив звездочку впереди.

И с любой командой gpg она учитывает подробные флаги (-v), вы можете добавить несколько флагов, чтобы получить больше "многословия" / больше информации, я думаю, что 10 - максимум, поэтому попробуйте добавить -vvvvvvvvvv

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .