id: Гость   вход   регистрация
текущее время 19:38 16/12/2017
Автор темы: thesis, тема открыта 16/07/2008 01:34 Печать
Категории: разное, офф-топик
https://www.pgpru.com/Форум/Офф-топик/СтранныйКлючМнеПопался
создать
просмотр
ссылки

странный ключ мне попался


Hello all.


В ходе "экспериментов" (я только что поставил ПГП и развлекаюсь) я увидел ключ (или это сертификат?) id=0xCF73EC4C, который показался мне удивительным.


Вот так он смотрится в ключинце.


Владелец подписал сам свой ключ, отозвал подпись, еще раз подписал тем же ключом. И это еще не все. Ниже по списку это есть еще 7 отозванных автоподписей и 8 легальных. Везде один и тот же ID ключа, имя и е-мейл.


У меня используется gpg 6.5.8, его "ключница" не позволяет подписать чей-либо ключ более одного раза. Допустим, что какой-то другой софт это позволяет – почему бы и нет. Однако зачем это могло понадобиться владельцу?


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


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



 
Комментарии
— SATtva (16/07/2008 09:40)   профиль/связь   <#>
комментариев: 11516   документов: 1035   редакций: 4048
Ключ принадлежит Уиллу Прайсу, главе инженерного подразделения PGPCorp.

У меня используется gpg 6.5.8, его "ключница" не позволяет подписать чей-либо ключ более одного раза. Допустим, что какой-то другой софт это позволяет – почему бы и нет.

Стандарт OpenPGP не запрещает переподписание аннулированного UID. Также он не регламентирует, может ли более новая подпись владельца сделать прежнее аннулирование недействительным. Интерпретировать спецификацию по этим вопросам должны сами реализации. По-видимому, как PGP, так и GnuPG оценивают достоверность каждого UID по наиболее свежей подписи владельца, но состояние ключа в целом — по наличию или отсутствию сертификата аннулирования (тип 20). И это правильно. Также от самих реализаций зависит, позволять или не позволять пользователю переподписывать аннулированные или просроченные ключи. В GnuPG для этого есть опция --expert. PGP этого не позволяет, но не забывайте, что Уилл — разработчик PGP, так что мог сделать это любым удобным ему способом (хоть в hex-редакторе нужен пакет к ключу приписать).

Однако зачем это могло понадобиться владельцу?

Может лучше его об этом спросить? :-) Возможно, экспериментировал. Возможно, собирался отказаться от данного мэйл-адреса, но потом передумал. Возможно, что-то другое.

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

Эти серверы устроены по-разному. Последние просто собирают и хранят ключи в том виде, в каком их загружали. Первый — ещё и пингует мэйл-адреса ключа и сохраняет только те, которые подтвердил владелец. Также keyserver.pgp.com не сохраняет подписи от ключей, которых нет в его базе.

P.S. Подумайте о том, чтобы обновить программу хотя бы до восьмой версии.
— thesis (17/07/2008 01:15)   профиль/связь   <#>
комментариев: 26   документов: 8   редакций: 2
Эти серверы устроены по-разному. Последние просто собирают и хранят ключи в том виде, в каком их загружали. Первый — ещё и пингует мэйл-адреса ключа и сохраняет только те, которые подтвердил владелец. Также keyserver.pgp.com не сохраняет подписи от ключей, которых нет в его базе.

А кроме того кейсервер на pgp.com не зеркалит базы с остальными кейсерверами, еяпп.

P. S. Подумайте о том, чтобы обновить программу хотя бы до восьмой версии.

Думал, последняя версия 9.5, однако меня смущает фраза "30-Day Free Trial" на http://www.pgp.com/downloads/index.html
Ведь версия 6.5.8 – это последняя свободная?

Заменил на версию 8.10, эта про триальный период ничего не говорит, функциональность такая же, за одним исключением:
я отправил сам себе письмо, закрыв его своим же ключом, использовав pgp658
расшифровка у pgp658 проблем не вызвала
а вот pgp810 полагает, что письмо зашифровано для меня и еще для кого-то – с неизвестным системе ключом, id которого 0x106DAFE6 не найти ни на одном сервере
Некая несовместимость между версиями, быть может?
— thesis (17/07/2008 01:43, исправлен 17/07/2008 01:44)   профиль/связь   <#>
комментариев: 26   документов: 8   редакций: 2
BTW, не подскажете ли как устроен механизм апдейта сертификатов на кейсервере?

Допустим, некто "А" разместил свой ключ на сервере. Его знакомые "В" и "С" получили этот ключ, каким-то образом удостоверились в его подлинности, подписали и в разное время отправили на сервер ключей, который, таким образом, получил два обновления ключа "А" — одно с подписью "В", а другое с подписью "С".

Как, рассуждая теоретически, будет выглядеть сертификат "А" после этого?


Или же допустим другую ситуацию: я через некоторое время захочу добавить к своему сертификату еще какие-то поля – новый адрес, заметку, фото. Или же напротив – убрать какие-то из ранее созданных полей. Будет ли кейсервер хранить совместно старые и обновленные значения полей? Удалит из сертификата те поля, которые удалил я?

В силу принципиальной невозможности удаления ключа с сервера заниматься такими экспериментами не мне хочется :))
— SATtva (17/07/2008 10:04)   профиль/связь   <#>
комментариев: 11516   документов: 1035   редакций: 4048
А кроме того кейсервер на pgp.com не зеркалит базы с остальными кейсерверами, еяпп.

Именно так, это совершенно самостоятельный сервис.

Думал, последняя версия 9.5, однако меня смущает фраза "30-Day Free Trial" на http://www.pgp.com/downloads/index.html
Ведь версия 6.5.8 – это последняя свободная?

PGP был свободной программой только до версии 2.x. Открытый исходный код не означает, что этот код свободный. "30-Day Free Trial" в 9.x означает только то, что в эти 30 дней Вам будут доступны все функции программы, включая работу с криптоконтейнерами и полное шифрование дисков. Затем функциональность будет сокращена до freeware, т.е. тех же возможностей, что в 6.5.8.

а вот pgp810 полагает, что письмо зашифровано для меня и еще для кого-то – с неизвестным системе ключом, id которого 0x106DAFE6 не найти ни на одном сервере
Некая несовместимость между версиями, быть может?

А версия аутентичная или затрояненная? :-) Это нештатное действие, такого не должно быть. Подпись с дистрибутива сверяли? Какой отпечаток у ключа, которым заверен дистрибутив? Также интересно было бы взглянуть на полученный шифртекст.

Как, рассуждая теоретически, будет выглядеть сертификат "А" после этого?

Будет содержать обе подписи. Сертификат ключа OpenPGP — это не монолит. Он состоит из отдельных элементов, называемых пакетами: пакет ключевого материала, пакет подписи и пр. (более детальное описание формата можете найти здесь). Многие типы пакетов можно добавлять и убирать без ущерба для работоспособности ключа. Именно так серверы ключей аккумулируют изменения в сертификатах — просто добавляя новые пакеты.

Будет ли кейсервер хранить совместно старые и обновленные значения полей? Удалит из сертификата те поля, которые удалил я?

Изменения только накапливаются, удалить оттуда ничего нельзя. Все изменения, которые вы вносите в сертификаты, напоминают изменения в wiki. Скажем, если вы меняете список предпочтительных алгоритмов или срок действия ключа, это создаёт новую direct key signature (особый тип автоподписи), содержащую все заданные параметры. При этом первая подпись такого типа, созданная при генерации ключа, никуда не девается, но OpenPGP-программы Ваших корреспондентов будут брать параметры из новой подписи просто потому, что она новее. Так оно всё и хранится на серверах ключей.

А записи сертификата (uid) надо не удалять, а аннулировать. (Технически, это тоже создаёт на данном uid особый вид подписи — revocation signature, и если программа обнаруживает такую подпись, то считает uid отменённым. Как у Уилла в примере выше.)
— thesis (17/07/2008 14:53)   профиль/связь   <#>
комментариев: 26   документов: 8   редакций: 2
Версия 658 при установке никаких лицензионных ключей не просила, а сама о себе писала "freeware PGP 6.5.8". В лицензинное соглашение я, разумеется, вчитываться не стал, но подумал, что раз уж написано freeware, так значит свободное ПО.

Затем функциональность будет сокращена до freeware, т.е. тех же возможностей, что в 6.5.8.

Спасибо, надо будет попробовать :)

Версия 658 включала в себя еще и pgpnet – если я правильно понял, то это шифрование IP-траффика на лету. В восьмой версии его нет, на "девятку" посмотреть надо ...

Я наткнулся на еще одно отличие между 6.5.8 и 8.1. Вот, например ключ 0xB572F501.
Ключница 658 показывала, что подписи на его пакетах (?) повреждены. Вот так:


Версия 8.10, которая "унаследовала" от 658 весь keyring, показывала тоже самое. Однако, если ключницей уже версии 8.10 еще раз поискать этот ключ на серверах, то подписи оказываются уже не поврежденными, а вполне себе исправными. Вот так:


Мало того, на разных серверах этот на ключ хранится разное количество полей (пакетов?). Например вот здесь 2 поля, а не 4:



А версия аутентичная или затрояненная? :-) Это нештатное действие, такого не должно быть. Подпись с дистрибутива сверяли? Какой отпечаток у ключа, которым заверен дистрибутив? Также интересно было бы взглянуть на полученный шифртекст.


Оба дистрибутива – 658 и 810 – подписаны. Первый этим

0xD77B2094
8F17 2486 8BD7 90AE D073 1823 13A0 85FC D77B 2094


второй этим
0xE8F99DB2
5343 AD1A 95CC 5593 D090 ECB3 5636 72C6 E8F9 9DB2

А шифротекст выглядит вот так:


Вы не подскажете ли, что же такое Key ID – это какая-то функция от имени владельца ключа?
— SATtva (17/07/2008 19:06, исправлен 17/07/2008 19:08)   профиль/связь   <#>
комментариев: 11516   документов: 1035   редакций: 4048
В лицензинное соглашение я, разумеется, вчитываться не стал, но подумал, что раз уж написано freeware, так значит свободное ПО.

Freeware — это бесплатная программа. Не универсально бесплатная; обычно на такую бесплатность налагается множество ограничений. PGP Freeware, например, можно использовать только дома, в образовательной сфере и в НКО, но не в коммерческих целях. Свободное ПО (то, что распространяется под лицензиями BSD, GPL и пр.) такие требования не предъявляет.

Версия 658 включала в себя еще и pgpnet – если я правильно понял, то это шифрование IP-траффика на лету. В восьмой версии его нет, на "девятку" посмотреть надо ...

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

Вы не подскажете ли, что же такое Key ID – это какая-то функция от имени владельца ключа?

Это последние 8 (или 16) байт отпечатка ключа. Отпечаток — это хэш-значение материала ключа.

Да, отмеченные Вами ID ключей, которыми заверены дистрибутивы, аутентичны. Значит, дело в чём-то другом.

Разбираться с другими вопросами сейчас некогда.
Ваша оценка документа [показать результаты]
-3-2-1 0+1+2+3