Использование GPA для авторизации

From bitcoin-otc wiki

(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search

GNU Privacy Assistant (GPA) – это графический интерфейс для GnuPG.

Установка

Windows

Gpg4win – это пакет криптопрограмм на основе GnuPG.

Качаем и устанавливаем: http://www.gpg4win.org/download.html

Из этого пакета нам понадобятся GnuPG и GPA, остальные программы можно установить по желанию.

При установке можно пропустить этап "S/MIME configuration", и сразу отметить опцию "Root certificate defined or skip configuration".

Linux

Устанавливаем пакет "gpa" из репозиториев, или собираем из исходников.

Создание ключа

Если GPG раньше не использовался, при первом запуске GPA будет предложено создать персональный ключ – соглашаемся. (Создать новый ключ можно также в любое время из меню: KeysNew key... или нажав Ctrl+N.) Следуем инструкциям мастера генерации ключа.

Вводимая информация будет публично доступна. После генерации будет запрос на установку пароля. Секретные ключи хранятся в файле secring.gpg (Windows: %APPDATA%\gnupg\secring.gpg, POSIX: $HOME/.gnupg/secring.gpg) в зашифрованном виде, и воспользоваться ими можно только зная пароль. Однако, короткий или легко угадываемый (например, одно слово или число) пароль можно подобрать, имея лишь файл secring.gpg. Создавать резервную копию секретного ключа имеет смысл, если сразу же скопировать её в надёжное место. Учтите, что резервная копия не зашифрована, в отличие от secring.gpg. При потере или повреждении файла secring.gpg, а также при потере пароля, секретные ключи можно восстановить только из резервной копии, так что рекомендуется всё же её сделать.

Публикация ключа

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

Выделяем наш ключ в списке и выбираем в меню ServerSend keys... Запоминаем, на какой сервер был отправлен ключ, по умолчанию это keys.gnupg.net. Указать другой сервер можно в настройках GPA.

Регистрация открытого ключа

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

/query gribble

Для того, чтобы работала авторизация, надо присутствовать на канале #bitcoin-otc, #bitcoin-otc-foyer, #bitcoin-otc-ru или #bitcoin-otc-eu. Уходя с этих каналов, Вы теряете авторизацию.

Чтобы зарегистрировать ключ, создадим учётную запись с помощью бота и команды gpg eregister. Команда имеет следующие аргументы:

  • ник: Ваше имя в базе данных бота. Оно не обязательно должно совпадать с Вашим ником в IRC или именем, указанным в ключе PGP. Однако, для удобства, большинство людей использует то же имя, что и в IRC.
  • идентификатор ключа: 16-значный "длинный" идентификатор. В GPA под списком ключей расположена область отображения информации. Выделяем ключ и смотрим поле "Отпечаток". Копируем последние 16 цифр (4 группы по 4 цифры) и убираем пробелы между ними. Таким образом, получаем требуемый идентификатор. (В поле "ID ключа" отображается "короткий" 8-значный идентификатор, он нам не подойдёт.)
  • сервер ключей: здесь указываем сервер, на котором мы опубликовали открытый ключ. Этот параметр может быть опущен, тогда бот попытается найти ключ на серверах pgp.surfnet.nl и pgp.mit.edu.

Итак, отправляем команду боту в канале или в окне приватной беседы, например:

;;gpg eregister BobJones 81898844A1BF37D6 keys.gnupg.net

Одноразовый пароль

В ответ на запрос регистрации или авторизации бот пришлёт URL страницы с зашифрованным документом, содержащим одноразовый пароль.

Открываем окно буфера в GPA кнопкой Clipboard на панели инструментов или из меню Windows. Вставляем зашифрованный текст и нажимаем Decrypt, получаем одноразовый пароль. Сообщаем его боту командой gpg everify, например:

;;gpg everify freenode:#bitcoin-otc:6132ffd1c3c4468e40303d844f3e30661bc34617054f7cc5e3fa03c8b41c376e

Нет необходимости держать одноразовый пароль в секрете. Он действителен только для Вашего ника и только в течение 10 минут.

Авторизованный статус сохраняется, пока пользователь не покинет IRC, каналы OTC (#bitcoin-otc, #bitcoin-otc-foyer, #bitcoin-otc-ru и #bitcoin-otc-eu), или бот отсоединится от IRC. Для того, чтобы снять авторизацию вручную, можно использовать команду gpg unauth.

Авторизация

В следующий раз нам не придётся заново регистрироваться, вместо этого будем использовать команду gpg eauth, например:

;;gpg eauth BobJones

Далее – смотрим пункт "одноразовый пароль".