Два PGP-ключа, один адрес электронной почты, генерирующий другой открытый ключ.

Вопрос или проблема

Я ищу объяснение ситуации, с которой я столкнулся. Я создал две образцы пар ключей с одинаковым именем и электронной почтой, используя gpg (GnuPG).

pub   ed25519 2024-12-14 [SC]
      EE1D0421E762941939DAD2ED5BA3B96F99C01CFC
uid           [ultimate] RIZER <[email protected]>
sub   cv25519 2024-12-14 [E]

pub   ed25519 2024-12-14 [SC]
      66B887039701E1A7240DA351978108403A6EAC64
uid           [ultimate] RIZER <[email protected]>
sub   cv25519 2024-12-14 [E]

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

$ gpg --export --armor EE1D0421E762941939DAD2ED5BA3B96F99C01CFC
-----BEGIN PGP PUBLIC KEY BLOCK-----

mDMEZ12hQxYJKwYBBAHaRw8BAQdAu4oDAR1I1vF/tylEe+Wyl2LsfTsnVbuyQTr7
O0s/K5O0EVJJWkVSIDxyaUByaS5jb20+iJMEExYKADsWIQTuHQQh52KUGTna0u1b
o7lvmcAc/AUCZ12hQwIbAwULCQgHAgIiAgYVCgkICwIEFgIDAQIeBwIXgAAKCRBb
o7lvmcAc/FOEAP41KebXdjckjaYF3RaHrjfiAu/camf5eVREQ+IbFTk9PgEA5Lzv
+27b+RklnjGtg9AYA/3hLb1zA3iZQ/29d49bjgS4OARnXaFDEgorBgEEAZdVAQUB
AQdASDZkuhP46oAaA3QVAMAK6IFCIeg5hh7sp00kf/zOwgEDAQgHiHgEGBYKACAW
IQTuHQQh52KUGTna0u1bo7lvmcAc/AUCZ12hQwIbDAAKCRBbo7lvmcAc/CaBAP9/
rq+Qbkb0KP0mYCCyBAk2AjIwQt8GlGzt/FwLHRFn/wD+IohR6z2CZ69F/j57IuJ2
kscd++rxnBYMCFAibYEwGQ8=
=CDXc
-----END PGP PUBLIC KEY BLOCK-----

$ gpg --export --armor 66B887039701E1A7240DA351978108403A6EAC64
-----BEGIN PGP PUBLIC KEY BLOCK-----

mDMEZ12hjxYJKwYBBAHaRw8BAQdAvyjh5dsrmN1jvh8fOxtpvpG6SQPaw9UbOfv5
yu3TX6G0EVJJWkVSIDxyaUByaS5jb20+iJMEExYKADsWIQRmuIcDlwHhpyQNo1GX
gQhAOm6sZAUCZ12hjwIbAwULCQgHAgIiAgYVCgkICwIEFgIDAQIeBwIXgAAKCRCX
gQhAOm6sZHtwAQDXeHnHAZeHn9bHz57o/lD6DypILq9BPKLDg+2TIAWVpgEAr5wL
kfr+p3nB4HBVS/G7EfH+9AQFH+aMeMo3XYNZcQS4OARnXaGPEgorBgEEAZdVAQUB
AQdAt2V3KIEbWGN/9DTiLOu9jqb8pe2guhlOjdRktKVp7UgDAQgHiHgEGBYKACAW
IQRmuIcDlwHhpyQNo1GXgQhAOm6sZAUCZ12hjwIbDAAKCRCXgQhAOm6sZI+DAQD3
aA0w9ytbiqg74j2ZPMm0kqPKJdEgRND6OCYXHbuNlQD/T3BLq+S8cxCAbfQUOeNl
gTEyPoOVHRgaUDuFf+PpbQ4=
=iryh
-----END PGP PUBLIC KEY BLOCK-----

Теперь, если я попробую экспортировать, используя электронную почту в качестве аргумента, я получаю что-то совершенно иное по сравнению с двумя выше.

$ gpg --export --armor [email protected]
-----BEGIN PGP PUBLIC KEY BLOCK-----

mDMEZ12hQxYJKwYBBAHaRw8BAQdAu4oDAR1I1vF/tylEe+Wyl2LsfTsnVbuyQTr7
O0s/K5O0EVJJWkVSIDxyaUByaS5jb20+iJMEExYKADsWIQTuHQQh52KUGTna0u1b
o7lvmcAc/AUCZ12hQwIbAwULCQgHAgIiAgYVCgkICwIEFgIDAQIeBwIXgAAKCRBb
o7lvmcAc/FOEAP41KebXdjckjaYF3RaHrjfiAu/camf5eVREQ+IbFTk9PgEA5Lzv
+27b+RklnjGtg9AYA/3hLb1zA3iZQ/29d49bjgS4OARnXaFDEgorBgEEAZdVAQUB
AQdASDZkuhP46oAaA3QVAMAK6IFCIeg5hh7sp00kf/zOwgEDAQgHiHgEGBYKACAW
IQTuHQQh52KUGTna0u1bo7lvmcAc/AUCZ12hQwIbDAAKCRBbo7lvmcAc/CaBAP9/
rq+Qbkb0KP0mYCCyBAk2AjIwQt8GlGzt/FwLHRFn/wD+IohR6z2CZ69F/j57IuJ2
kscd++rxnBYMCFAibYEwGQ+YMwRnXaGPFgkrBgEEAdpHDwEBB0C/KOHl2yuY3WO+
Hx87G2m+kbpJA9rD1Rs5+/nK7dNfobQRUklaRVIgPHJpQHJpLmNvbT6IkwQTFgoA
OxYhBGa4hwOXAeGnJA2jUZeBCEA6bqxkBQJnXaGPAhsDBQsJCAcCAiICBhUKCQgL
AgQWAgMBAh4HAheAAAoJEJeBCEA6bqxke3ABANd4eccBl4ef1sfPnuj+UPoPKkgu
r0E8osOD7ZMgBZWmAQCvnAuR+v6necHgcFVL8bsR8f70BAUf5ox4yjddg1lxBLg4
BGddoY8SCisGAQQBl1UBBQEBB0C3ZXcogRtYY3/0NOIs672Opvyl7aC6GU6N1GS0
pWntSAMBCAeIeAQYFgoAIBYhBGa4hwOXAeGnJA2jUZeBCEA6bqxkBQJnXaGPAhsM
AAoJEJeBCEA6bqxkj4MBAPdoDTD3K1uKqDviPZk8ybSSo8ol0SBE0Po4Jhcdu42V
AP9PcEur5LxzEIBt9BQ542WBMTI+g5UdGBpQO4V/4+ltDg==
=y6+c
-----END PGP PUBLIC KEY BLOCK-----

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

Вопросы

  • Является ли третий ключ смесью первых двух?
  • Могу ли я шифровать, используя третий ключ?
  • Если третий ключ может зашифровать файл, можем ли мы расшифровать файл, используя закрытый ключ любого из первых двух ключей?

Ответ или решение

В данной ситуации, описанной пользователем, важно помнить, что ключи PGP (Pretty Good Privacy) уникальны не только по своему содержимому, но и по связи с идентификаторами, такими как имя и адрес электронной почты. Давайте разберем возникшие вопросы по порядку.

1. Является ли третий ключ смесью первых двух?

Ответ: Нет, третий ключ не является смесью первых двух ключей.

Когда вы экспортируете ключи с помощью gpg, вы используете разные аргументы для получения информации о конкретных ключах. В вашем случае, когда вы экспортируете ключи, используя их идентификаторы (EE1D0421E762941939DAD2ED5BA3B96F99C01CFC и 66B887039701E1A7240DA351978108403A6EAC64), вы получаете два разных ключа. Однако, когда вы экспортируете ключ, используя свою электронную почту или имя, GnuPG пытается искать ключ, связанный с этим идентификатором, что приводит к ситуации, когда он может возвращать первичный ключ (или один из ключей), что создает впечатление смешивания.

2. Могу ли я использовать третий ключ для шифрования?

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

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

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

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

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

Заключение

Ваша ситуация с PGP ключами подчеркивает важность понимания механизма работы системы. PGP ключи могут создаваться с одинаковыми идентификаторами, но каждый из них остается уникальным. Необходимо правильно управлять этими ключами, чтобы избежать путаницы и обеспечить безопасность данных. Таким образом, всегда рекомендуется проверять ваши ключи и связи перед использованием, чтобы убедиться в том, что вы отправляете и получаете шифрованные данные именно тем способом, который вы намеревались.

Оцените материал
Добавить комментарий

Капча загружается...