id: Гость   вход   регистрация
текущее время 08:06 29/03/2024
Владелец: ДаняНадь редакция от 27/08/2006 21:18 (автор: SATtva) Печать
создать
просмотр
редакции
ссылки

Это старая редакция страницы Библиотека / Руководства / Управление Ключами / Подключи Open P G P за 27/08/2006 21:18.


Создание и использование ключа OpenPGP с подключами

Основы


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


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


Позже в стандарт была включена концепция подключей (subkeys), и типичный ключ состоял из «главного» ключа подписи и сертификации (обычно DSA) и подключа для шифрования (обычно Elgamal). В данном случае разглашение закрытого ключа для шифрования влечёт за собой отзыв и замену данного подключа, без утраты сертификаций. С другой стороны, утрата секретности закрытой пары главного ключа требует полной замены при том, что ключ DSA досточно уязвим к утечке при частом использовании из-за мелких, трудно обнаруживаемых ошибок реализации алгоритма подписи или из-за недобросовестной реализации алгоритма DSA, что тоже непросто обнаружить. Ограниченный размер модуля тоже снижает стойкость.


В этой статье предлагается конструкция ключа, минимизирующая риск утраты главного ключа. В приведённом примере используется программа GPG (она же GnuPG, или GNU Privacy Guard), но в других современных реализациях стандарта OpenPGP тоже есть возможность создания и использование такого ключа.

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


Создавать ключ следует на сменном накопителе (например, на USB-брелке), используя персональный компьютер, не подключённый к сети.


Сначала создадим новую папку на брелке и установим переменную GNUPGHOME так, чтобы она указывала на эту папку.
Пример (unix, брелок монтирован на /mnt/pen):



Пример (DOS/Windows, брелок на E:):



Далее все примеры будут в unix, но единственное существенное различие в том, что в DOS/Windows программа gpg обычно называется gnupg.


Следующий шаг — генерирование мощного пароля. Этот пароль будет использоваться редко, и его следует записать и хранить при себе или в сейфе. Ни в коем случае не записывайте его в файл.



Теперь генерируем главный ключ сертификации RSA:



Выбираем (5) RSA (sign only) и размер ключа как минимум 2048 бит. Выбор ключей с модулем более 2048 бит (до 4096) безопаснее в долгосрочной перспективе (порядка десяти лет), но может создать проблемы с совместимостью.


Главный ключ может быть бессрочным (выбор 0 = key does not expire). Указываем имя и фамилию без адреса электронной почты и записанный пароль. Через несколько минут ключ готов. Запишем его идентификатор (например, 0x1234ABCD)


Алгоритм RSA выбирается потому, что там нет скрытого канала, через который может произойти утечка в случае недобросовестной или просто некачественной реализации. Адрес электронной почты опускается, чтобы не терять сертификации в случае его замены (позже можно добавить и почтовый адрес и даже фотографию). Этот ключ (и пароль) долгосрочный, использоваться будет крайне редко.


Затем редактируем ключ:



Добавляем дополнительные идентификаторы (можно с адресом электронной почты) командой adduid и подключи командой addkey. Важно, что ключ для шифрования должен быть один, ключей для подписи можно добавить несколько (но как минимум один). Эти ключи должны меняться регулярно, и для них стоит заранее установить срок действия в год или два. Ключей для подписи должно быть столько, на скольких системах вы ими желаете пользоваться (например, один домой, один на работу).


продолжение следует