Хранение ключей


Здравствуйте!
Есть идея хранить файлы ключей на сменном носителе (например CD), что бы было меньше вероятности кражи секретного ключа программой шпионом. Т.е. на винчестере ключ не хранится совсем, а на то время, когда ключ нужен для использования диск вставляется в привод на небольшое время. Эта же идея на мой взгляд актуальна и для PGP.
Можно ли как-то реализовать эту идею?


Комментарии
— Lustermaf (02/01/2006 15:32)   
Вий, можно. Путь до папки с ключами и настройками GnuPG указывается через реестр или системную переменную:
[quote:dff4cfca6c="GnuPG 1.4.2 README-W32.txt"]Home directory:
=
[...]
Being only a default, it may be changed by setting the name of the home directory into the Registry under the key HKEY_CURRENT_USER\Software\GNU\GnuPG using the name "HomeDir". If an environment variable "GNUPGHOME" exists, this even overrides the registry setting. The command line option "--homedir" may be used to override all other settings of the home directory.

]>
Потом дайте команду gpg --version и проверьте значение Home:.
— Вий (04/01/2006 18:28)   
Спасибо! :)
— az (09/01/2006 11:57)   
Привет всем, я тут новенький...

У меня вот вдогонку вопрос.
Чем вообще чревато попадание в чужие руки моего секретного ключа?
— Вий (09/01/2006 12:20)   
Здавствуйте!
Чем вообще чревато попадание в чужие руки моего секретного ключа?

Тем, что вся Ваша шифрованная этим ключом (точнее говоря открытым ключом, соответствущим данному секретному ключу) информация может быть прочитана посторонними людьми. Правда секретный ключ еще и сам пор себе зашифрован, и без применения пароля им не воспользуешься, но все равно принято считать именно так (Ваш пароль могли украсть еще до кражи ключа например, или подобрать, если Вы применили короткий или легко угадываемый вариант). Читайте раздел "Управление ключами"[link1].
Кроме того это может грозить тем, что похитители ключа смогут проставлять ЭЦП от Вашего имени.
Гость (09/01/2006 15:05)   
Вий:

Кроме того это может грозить тем, что похитители ключа смогут проставлять ЭЦП от Вашего имени.

Это возможно даже без знания пароля(ключеврй фразы)? Или знать его всё-же злоумышленнику необходимо?
— Observer (09/01/2006 17:17)   
Да, знать пароль необходимо. Сикреткей бесполезен без знания пароля. Обратите внимание – при генерации ключей вас не просят ввести password, вас просят ввести passphrase.
или подобрать, если Вы применили короткий или легко угадываемый вариант

Подобрать фразу весьма.... весьма... в отличии от простого пароля.

Кроме этого, если взломщик измудрился поставить сниффер к вам на комп, то он сворует и секретный ключ при первом же запуске его с CD. Буквы набранные на клавиатуре ведь вроде бы тоже улетают в атмосфэру... И тем не менее их можно отловить и направить в отдельный файл. Почему же то же самое нельзя проделать и с секретным ключом? При всём при этом, при инсталляции PGP он нахально создаёт директорию с ключами в архиизвестной папке Мои документы, а не предлагает выбрать дискету (предлагает указать место, если ключи уже есть).

Мне кажется, тема надумана и не повышает безопасность системы.

http://www.pgpru.com/forum/viewtopic.php?t=1296
см. сообщение 23:01:23 07.01.06
— unknown (09/01/2006 19:31)   


Мне кажется, тема надумана и не повышает безопасность системы.



Съёмные носители с ключевой информацией используют обычно:

1) Для расшифрования диска до загрузки основной части ОС.

2) Для расшифрования домашней директории сразу после удачного логина в систему.

3) В системах с жестким контролем доступа к устройствам.

Ключи PGP попадают только в третий пункт.
А вот попадает ли под них сама система?
— Мыколка (12/01/2006 15:26)   
Здравствуйте!

Скажите пожалуйста, какие файлы нужно копировать из директории C:\Program Files\GNU\GnuPG, чтобы перенести секретные ключи на съёмный носитель?

Нужно переносить и секретные и открытые ключи?

Можно ли перенести их на токен?


С уважением.
— Kent (13/01/2006 20:20)   
secring.gpg – файл секретных ключей
pubring.gpg – файл открытых ключей
gpg.conf – файл конфигурации

И файлы отзыва ключей, если имеются.
— Мыколка (13/01/2006 23:22)   
Kent, спасибо за ответ.

Получается, на съёмный носитель нужно переносить и откырые, и закрытые ключи.

А если на токен перенести – там до 64 кб памяти?

pubring.gpg файл занимает 147 кб.
— Observer (14/01/2006 00:01)   
pubring – это связка открытых ключей тех лиц, с которыми вы можете вести крипто-общение. Когда вы шифруете письмо г-ну Х, то его паблик-кей вы берёте именно из этой связки. Проведите там ревизию и выкиньте все не нужные вам паблик-ключи.
— SATtva (14/01/2006 00:03)   
Токен, смарт-карта (аппаратный ключ)[link2] — это не просто носитель данных, на него нельзя просто скопировать файлы ключей, чтобы всё заработало.

Во-первых, GnuPG поддерживает только смарт-карты OpenPGP. Мне их в открытой продаже встречать не приходилось, только по заказам из g10. Во-вторых, если уж дело доходит до работы со смарт-картами, то на них импортируется (или генерируются непосредственно на карте) только материал ключей, а не сертификаты ключей, которые и занимают на диске большего всего места.
— Мыколка (14/01/2006 16:28)   
Observer, SATtva,

Спасибо Вам за ответы.
— Вий (15/01/2006 10:45)   
Observer:
Обратите внимание – при генерации ключей вас не просят ввести password, вас просят ввести passphrase.

При генерации ключа pgp действительно просит ввести passphrase, но при этом допускает ввод не менее 8 символов, т.е. среднестатистический пользователь на свое усмотрение может применить и обычный пароль. По своему опыту могу сказать, что я угадал пароль (правда не фразу) своего друга, который при этом был уверен, что это сделать крайне сложно (он сам произносил его не единожды в контексте посторонних бесед!). Все было оформлено спором на бутылку коньяка, правда бутылку пили все равно вместе. :) (да и покупали то же)
Что касается тотального перебора, то я думаю, что здесь дело так же в алгоритме, который преобразует пароль/фразу в ключ. В моем видении грамотно построенный алгоритм перебора ключей должен перебирать ключи определенными последовательностями. У Шнайера написано:
8-и байтовый пароль (36 строчных букв + цифры) вскрывается грубой силой 33 дня
8-и байтовый пароль (95 печатаемых символов) вскрывается грубой силой за 210 лет. Но это при 1000000 проверок в секунду.
Значит алгоритм должен первым делом проверить те ключи, которые могут попасть в поле 33-дневного поиска и т.д.
Observer:
Подобрать фразу весьма.... весьма... в отличии от простого пароля.

Согласен, однако при этом к подбору парольной фразы то же нужен правильный подход. Например думаю нетрудно угадать фразу "Учиться, учиться и еще раз учиться!" или "Молилась ли ты на ночь, Дездемона?".
Если я правильно понял то, что написано у Шнайера, то думаю для достижения очень надежной защиты информации должно быть так:
Если хеш, перемалывающий фразу в ключ имеет выходную длину 128 бит, то и длина фразы должна быть соответствющей для достижения достаточной энтропии полученного ключа при обязательном условии случайности фразы.
Шнайер:

Вопрос о точном смысле выражения "достаточная длина" остается открытым. Теория информации утверждает, что информационная значимость стандартного английского языка составляет 1,3 бита на символ. Для 64-и битового ключа достаточной будет ключевая фраза, состоящая примерно из 49 символов, или 10-и обычных английских слов.

— ivlad (15/01/2006 21:26)   
Мыколка:

Получается, на съёмный носитель нужно переносить и откырые, и закрытые ключи.

А если на токен перенести – там до 64 кб памяти?

pubring.gpg файл занимает 147 кб.

ну, перенесите на флешку
— Мыколка (16/01/2006 00:42)   
ivlad,
спасибо.

Думаю, так и сделаю.

С уважением.
— Вий (16/01/2006 12:58)   
С токена украсть ключ очень сложно (если не физически украсть сам токен конечно), с флешки копируется самым обычным образом. Это то же учитывайте.
— Мыколка (16/01/2006 20:21)   
Здравствуйте, Вий.

Вий:
С токена украсть ключ очень сложно (если не физически украсть сам токен конечно), с флешки копируется самым обычным образом.

Скажите, разве GnuPG поддерживает работу с токенами?
— Lustermaf (16/01/2006 21:36)   
Мыколка:
Скажите, разве GnuPG поддерживает работу с токенами?

Aladdin eToken — нет.
GnuPG поддерживает только такие смарт-карты[link3].
Гость (17/01/2006 14:35)   
Мыколка, здравствуйте.
Об использовании смарт карт[link4] очень хорошо написано в руководстве, почитайте и очень хорошо будете понимать суть вопроса.
Гость (17/01/2006 14:39)   
Данный сайт вообще отличает наличие хорошо прописанных для понимания руководств + форум, где можно получить очень квалифицированную помощь. Но обязательно читайте руководства, просто из них Вы почерпнете наибольшее количество знаний.
— Мыколка (17/01/2006 22:51)   
Здравствуйте, Гость,

Прочитал – спасибо Вам за ссылку.
Вопрос о совместимости GnuPG с токенами и смарткартами для меня прояснился.

Lustermaf написал, что GnuPG поддерживает только OpenPGP смарт-карты.

Получается, что главная сложность – достать такую карту.
— Мыколка (17/01/2006 22:53)   
Anonymous:
Данный сайт вообще отличает наличие хорошо прописанных для понимания руководств...
... Но обязательно читайте руководства, просто из них Вы почерпнете наибольшее количество знаний.

Понял, но всё равно спасибо, что ответили.
— Мыколка (18/01/2006 03:04)   
Kent:
secring.gpg – файл секретных ключей
pubring.gpg – файл открытых ключей
gpg.conf – файл конфигурации

И файлы отзыва ключей, если имеются.

gpg.conf – это файл из папки Application Data\GnuPG?
Но ведь всё его содержимое – слово comment ""

Если использовать флеш-память, то нужно переместить эти 3 файла, внести в GnuPG новое значение Home – и всё? Ключи будут храниться на флеш-памяти, но не на компьютере?


Конечно извините, что надоедаю расспросами.
— Kent (19/01/2006 00:22)   
У меня в файле gpg.conf 17 строк. Туда можно много чего написать.

HomeDir прописана в реестре по адресу:
HKCU\Software\GNU\GnuPG\\HomeDir
Впишите туда путь к съёмному носителю (флешке) и переместите файлы.
— Мыколка (19/01/2006 01:35)   
Kent, спасибо!
Гость (19/01/2006 14:39)   
IMHO, в контексте безопасности лучше на cd запистаь не только файлы таблиц ключей, но и файл настроек плюс сам GnuPG.
Это снизит еще и вероятность подмены исполнимых файлов.
Секретный ключ поможет защитить хорошая пароольная фраза.
— Мыколка (25/06/2006 00:14)   
Кстати говоря, а GnuPG поддерживает такие смарт-карты?
http://www.aladdin.ru/catalog/.....rds/cards/etoken.php[link5]

Или только: http://g10code.com/p-card.html

С уважением.
— SATtva (03/07/2006 16:08)   
Пока только карты OpenPGP.
— Мыколка (03/07/2006 17:35)   
SATtva, по ходу, такую карту очень сложно достать.
Ключ есть ключ, и хотелось по-возможности надежно его хранить.

На карте openPGP RSA только 1024 бит. Этот параметр указан для генерации ключевой пары?
— SATtva (03/07/2006 22:29)   
Ёмкость памяти карты OpenPGP рассчитана на хранение трёх 1024-битовых ключей RSA. Так сказано на официальном сайте.

Ссылки
[link1] http://www.pgpru.com/manuals/guide/03.shtml

[link2] http://www.pgpru.com/forum/viewtopic.php?p=8134#8134

[link3] http://g10code.com/p-card.html

[link4] http://www.pgpru.com/manuals/guide/03.shtml#2_8

[link5] http://www.aladdin.ru/catalog/smart_cards/cards/etoken.php