Добрый день всем!

Предлагаю провести во время конференции GnuPG Keysigning Party.
Можно совместить по времени и месту с предложенным ранее чаепитием.
Можно разбить обмен ключами на несколько встреч.

Зачем это нужно? Для установления или сокращений путей доверия
между разработчиками и для усиления сети доверия комьюнити (Web of
Trust). Попадание вашего ключа в сильный набор:
https://en.wikipedia.org/wiki/Web_of_trust#Strong_set

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

Когда проводить? Можно совместить с чаепитием.

Что для этого нужно?

1) Подготовка:
1.1) Убедится, что ваш ключ отгружен на публичный PGP-сервер,
проверить можно тут:
https://pgp.surfnet.nl/

Загрузить можно с помощью:

gpg2 --keyserver hkps://hkps.pool.sks-keyservers.net --send-key $id

где $id — id вашего ключа, посмотеть можно через --list-keys $email$
загружать можно на любой сервер, они за сутки все
синхронизируются, на практике обычно за несколько часов.

1.2) Распечатать листочки с id вашего ключа и его uid-ами. Если ключ
отгружен и разошёлся по серверам, сгенерировать слипы можно
с помощью данного сревиса:
https://openpgp.quelltextlich.at/slip.html

Там на выходе есть как TeX, так и PDF.

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

2) Signing party :)
Все обмениваются слипами с хешами своих ключей и по желанию
проверяют документы.

3) После этого нужно:
3.1) По указанным на листочках key id нужно скачать в свой
локальный keyring соответствующие ключи, если их там ещё нет:
gpg2 --recv-key $fingerprint

3.2) Нужно подписать каждый подключ своим ключём. Лучше завести для
этого отдельный keyring, скопировав туда свой локальный и затем:
gpg2 --no-default-keyring --keyring ../own.gpg --ask-cert-level
  --edit-key $id
        uid ...
        sign
        save
Рекомендуется указать в gpg.conf опцию ask-cert-level или задать её
параметром gpg, она позволяет указать уровень доверия к
подписываемому ключу.

3.3) Выделить сделанные подписи в отдельные файлы:
gpg2 --no-default-keyring --keyring ../own.gpg --export-filter
keep-uid="uid =~ $email" --export $keyid > $keyid_$email.asc

3.4) На каждый uid (обычно это e-mail адрес) каждому участнику нужно
выслать вашу подпись данного uid, полученную командой выше.
Отправлять следует письмами, зашифрованными ключём получателя,
который Вы подписали. Таким образом проверяется, что получатель
владеет секретным ключём.

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

По этой же причине для подписей используется временный keyring,
чтоб они случайно не попали в основной раньше времени.

3.5) Все полученные вами подписи со всех ящиков нужно загрузить
с помощью --import $filename и отправить на любой понравившийся
сервер с помощью --send-key $your_keyid.

3.6)
Шаги 3.1-3.5 достаточно утомительны, поэтому можно использовать:

3.6.1) готовый инструмент caff для их автоматизации:
https://pgp-tools.alioth.debian.org/

В ряде дистрибутивов он упакован как signing-party.

3.6.2) Есть и другой инструмент для решения это задачи — pius:
https://www.phildev.net/pius/

Во многих дистрибутивах он и упакован как pius.

Субъективно, pius проще в использовании, чем caff. Но я уже
настроил caff и мне лень что-то менять :)

4) Посмотреть детальную статистику по своему ключу после его
попадания в сильный набор ключей можно на https://pgp.cs.uu.nl/
Обновляется раз в неделю по воскресеньям.

Сильный набор ключей (strong keyset) — это наибольшее множество
ключей, где между любыми двумя ключами есть двунаправленный путь
доверия.

Best regards,
Andrew Savchenko

Attachment: pgpdiZemCa7kZ.pgp
Description: PGP signature

_______________________________________________
Talks mailing list
Talks@lvee.org
http://lists.lvee.org/mailman/listinfo/talks

Reply via email to