Почему нельзя публиковать закрытые openPGP Ключи?


Я не понимаю почему нельзя публиковать закрытый ключ и распространять его публично, если он защищен стойким симметричным блочным шифром?

Люди очень часто сталкивают с проблемой утери копии закрытого ключа, и теряют ценную информацию.

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

Нильс Фергюсон и Брюс Шнайер в книге "Практическая Криптография" упомянули о том:
Глава 4 – "Блочные Шифры" стр. 62
Существует обширная литература посвященная блочным шифрам, а сами они являются одной из наиболее изученных областей криптографии.

Например если сравнивать его с стойкость RSA...

Так если асимметричная система зашифрования защищена более сильной, симметричной получается укрытие закрытого ключа это эффект бутылочного горлышка?

Комментарии
— SATtva (01/11/2006 19:58)   
Никто не говорил, что нельзя. Можно. Вот только нужно ли?

Вот с какими проблемами Вы можете столкнуться:
  1. Текущий пароль недостаточно стойкий и поддаётся перебору. Это самый очевидный вариант.
  2. Ваш чрезвычайно удачный и надёжный пароль оказывается скомпрометированным (причины могут быть любые). Как Вы поступите в такой ситуации? В обычных условиях Вы, узнав об этом, должны только раньше потенциального противника добежать до своего ключа и сменить парольную фразу. Но если какие-то копии ключа Вам неподконтрольны, ситуация может обернуться трагедией.
  3. Обнаруживаются некоторые уязвимости:
    1. в симметричном шифре, которым защищён ключ;
    2. в протоколе OpenPGP и схеме защиты ключевого материала (такая проблема однажды имела место: известная атака Климы-Росы).

Могут быть и другие ситуации. Это просто первое, что пришло в голову. Если Вы согласны подвергать себя подобным рискам — валяйте, публикуйте закрытый ключ.
— Serghan (01/11/2006 20:02)   
SATtva, я иммел ввиду не публиковать открыто, вот ха, ха, ха, я опубликовал свой закрытый ключ, а допустим, пускай валяется на сайте например, куда особого доступа для обычных пользователей нет.
— spinore (01/11/2006 20:37)   
Вообще, в частности ещё и потому, что пароль, обладающей той же энтропией что и ключ будет раным с ним размером обладать и запомнить его будет нереально
— Serghan (01/11/2006 20:41)   
SATtva, закрытый ключ также можно засунуть с файл-контейнер допустим, TrueCrypt, зашифровать тремя последовательно оперирующими блочными шифрами что даст 768 битный ключ, и чрезвычайно медленны перебор.

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

Зато никогда не обломаешься что посеял eTonkey, Flash Drive или упал HDD.
— Serghan (01/11/2006 20:43)   
spinore, лично у меня проблем с запоминанием сверхдлинных паролей не возникает, а вот потенциальная угроза утери ключа присутствует по мойму у всех.
— SATtva (01/11/2006 21:23)   
Когда вещь находится у меня под рукой в физическом смысле слова, я чувствую её под большим своим контролем. Возможно, это дело привычки или инстинкта, но, как известно, система с меньшим числом взаимодействий объективно более устойчива. Почему резервную копию нельзя с тем же успехом хранить на CD в задвижке стола или в сейфе? Зачем размещать её удалённо? Вот, что я не пойму...
— Serghan (01/11/2006 21:41)   
SATtva, чем больше копий ключа тем меньше вероятность его потери.
Стол может сгореть, например в последствии пожара, с сейфом может
произойти тоже самое, он может сильно нагреться и содержимое будет
уничтожено.

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

С точки зрения безопасности мне не приходит в глову почему моя схема
удалённого хранения потенциально или теоритически уязвима.

мне кажется, что сломать 1024 битный DH ключ, или подделать его подпись
теоретически проще.
— Serghan (01/11/2006 21:43)   
P. S. А вообще, получить доступ в закрытому ключю если компьютер подключён к сети намного проще чем первое и второе :-)
— Serghan (01/11/2006 21:45)   
P. P. S. Если удачно получил доступ к машине можно и пароль удачно угнать вместе в ключом.
— spinore (01/11/2006 22:21, исправлен 02/11/2006 05:31)   


Я просто взял сейчас типичный открытый ключ, первую его треть. Он выглядит как:



Ещё вопросы по запомнанию наизусть ключа есть?


Скажем так, если бы хотели privacy, вы бы разбирались с методами и с ОС. Если у вас на десктопе стоит OpenBSD со вполне не идиотскими настройками, то специалисты менее чем за 1.000.000$ даже и пытаться не будут её ломать.
— Serghan (01/11/2006 22:31)   
spinore, ну вообще можно было и в ACSII отобразить.
Нет, к сожалению у меня дома не OpenBSD :-)

Если крутой профи даже бы нашёл уязвимость в,
OpenBSD систем, я думаю что бы он её публиковать
скорее всего не стал.

Сетевая Машина не может быть 100% защищена, и именно
по этому подписания файлов в некоторых случаях проводят
именно на компах которые не имеют доступа в сеть.
— Serghan (01/11/2006 22:33)   
P. S. А про запоминания ключа что-то я не всосал, какое ещё за понимание ключ?
— spinore (01/11/2006 22:49)   


Я не знаю как это сделать быстро в шелле. По умолчанию на терминал пишется именно так :)


В этом нет ничего страшного. И у меня она не срождения там стоит. Я не компьюторщик. Я просто осознал, что если хочу защиты, то надо начинать. В свободное время прочитал книжку по UNIX и начал. И ничего смертельно-страшного в этом нет. Это не квантовая теория поля и тем более не суперструны, для занятия которыми нужно активно обучаться в течение многих лет, отдавая всё свободное время.

OpenBSD систем, я думаю что бы он её публиковать
скорее всего не стал.

У вас не правильная модель. OpenBSD как и любая система с открытым кодом, публикует ошибки о своей информационной безопасности, и это делается сразу, чтобы все юзеры приняли меры. Если ошибку найдёт кто-либо другой потом, и воспользуется ею в корыстных целях, репутация OpenBSD пострадает.
Случай, более того, о каком вы говорите, уже был. Это было один-единственный раз за 10 лет её существования. Тогда они наняли разработчиков из Debian и совместно с ними за несколько часов написали новую версию OpenSSH. Птом они сообщили всем о том, что в OpenSSH есть серьёзная уязвимость, и чтобы все обновились немедленно. Через ещё какое-то время, когда предположительно все обновились, ониопубликовали код ошибки. Но это был сверхнеординарный случай в мире OpenSource, о нём ходят легенды. Тогда, обнаружение этой уязвимости потенциально могло бы дать любому человеку root-права на любой машине, на которой поднят ssh-сервер. Тогда это была настоящая катастрофа но, к счастью, никто не пострадал.
Её надёжность такова, что минобороны США хотели начать её активно спонсировать, однако либер OpenBSD упомянул про кровянные деньги Ирака, и правительство порекомендовало оборонке не вкладываьть эти деньги в OpenBSD. В настоящее время, как ходят слухи, OpenBSD стоит в качестве шлюза даже на некоторых магистральных каналоах между странами. она считается самой надёжной и стабильной ОС, хотя и не самой производительной (но разумеется, намного более производительной по ср. с Windows :-))

по этому подписания файлов в некоторых случаях проводят
именно на компах которые не имеют доступа в сеть.

даже банки хронят свои активвы на машинах, имеющих доступ к сети. Только об Windows XP сначала забудьте и сразу начнёте спать спокойно :)


Я привёл пример того сколько и чего вам потребуется запомнить наизусть, чтобы криптостойкость вашей пассфразы не уменьшала криптостойкости самого ключа (для этого понадобится фактически запомнить ещё один такой же ключ).
— spinore (01/11/2006 22:54)   
да, ещё я слышал о том, что один чел нашёл серьёзную ошибку в cisco. Говорят, его обещали убить если он опубликует её в интернете. Пока в мире на cisco много что завязано, но она не с открытым кодом. У cisco как любят выражаться, "security through obscurity".
— Serghan (01/11/2006 23:13)   
Я привёл пример того сколько и чего вам потребуется запомнить наизусть, чтобы криптостойкость вашей пассфразы не уменьшала криптостойкости самого ключа

Не понял. Вы имеете ввиду парольные фразу или что?
— Serghan (01/11/2006 23:16)   
Я привёл пример того сколько и чего вам потребуется запомнить наизусть, чтобы криптостойкость вашей пассфразы не уменьшала криптостойкости самого ключа

Не понял. Вы имеете ввиду парольные фразу или что? Почему, нет смысла применять парольную фразу больче чем размер хеша, это значит что вот токого пароля хватило бы с избытком: (40 символов)

Wer=Kos-Pil312LoR\Sma|KoR0@$WaE075&6#Tun

для обеспечение 256-битовой стойкости
— spinore (02/11/2006 01:03)   


Когда вы генерите на своей машине пару публичный/приватный ключ, у вас запрашивают пассфразу. Чтобы криптостойкость закрытого ключа, зашифрованного вашей пассфразой не уменьшилась для взломщика, получившего доступ к вашему приватному ключу, потребуется, чтобы ваша пассфраза была длинее чем то что я опубликовал в 3 раза и выглядеть она должна не проще.
— spinore (02/11/2006 01:07)   


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


А с чего вы решили что хэш – это 40 символов? У меня вот некоторые пароли под сто символов длиной, и ничего.
— Serghan (02/11/2006 01:29, исправлен 02/11/2006 01:41)   


40 символов это 40 байт, что равносильно 320 битам.
Каждый символ даёт примерно 7 бит (реальных) поскольку
ASCII стандарт не затрагивает всю таблицу.
Значит это будет 280 бит, с запасом.

Если мы возьмём современные блочные шифры например:
AES-256 или TwoFish или Serpent максимальная длинна их ключа
составляет 256 бит.

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

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

Следовательно если пароль достаточно сложен, в нём нет например последовательно чередующихся симовлов, и в нём есть буквы разного регистра, цыфры и спец сиволы, тогда нет смысла применять пароли более 40 символом, поскольку в таком случае, слабым звеном уже будет являться выходное хеш значение.
— spinore (02/11/2006 02:01)   


В любом случае, запомнить длинную фразу с малой энтропией проще чем маленькую фразу с большой энтропией. Поэтому я предпочитаю может и не такие сложные, но длинные пароли.
— Serghan (02/11/2006 02:20)   
Dа, но энтропия понятие растяжимое. Кстати не плохо проверяется при архивации. Только вот поскольку у архиватором сам большой формат файла, служебная информация об архиве советую использовать для проверки энтропии в пароле PPMD.
Если файл более 32 байт пожалуй PPMD можно не плохо это сделать, поскольку у него в представленной автором реализации у файла практически отсутствует какой либо формат, только маленький заголовок.
Чем меньше степень сжатия тем лучше пароль. Лучше использовать PPMONSTR.

Можно найти здесь:
ftp.elf.stuba.sk/pub/pc/pack

Хотя, если намётан глаз можно и так не плохо определять :-)
Гость (02/11/2006 04:04)   
хотя я раньше не задумывался особо сколько обычных символов нужно для создания той же криптостойкости в асимметричной криптографии
— spinore (02/11/2006 05:42)   


Нет, ну Вы-то, SATtva, наверняка задумывались? :-)
— SATtva (02/11/2006 05:45)   
Официально уведомляю: сообщение от 02/11/2006 04:04 было опубликовано не мной. По неустановленной причине один из пользователей при логине перехватил мою предыдущую сессию и получил права администратора, о чём немедленно мне сообщил. Ошибка в настоящий момент выясняется и устраняется.
— spinore (02/11/2006 06:14)   
ну я больше так не буду делать! :-( © из детства
— unknown (02/11/2006 09:07)   
По неустановленной причине один из пользователей при логине перехватил мою предыдущую сессию и получил права администратора, о чём немедленно мне сообщил. Ошибка в настоящий момент выясняется и устраняется.

Похоже на наглядный пример работы сообщества Open Source.

2 spinore: для экспортирования ключей в ASCI-формате в GnuPG есть опция --armor.

Я также слышал, что под BSD есть клон GnupG – BPG, написанный при поддержке Google. Смысл клонирования – написать код с нуля под BSD лицензией. Если что-то интересное можете про это рассказать, то подробнее можете развивать эти темы пока в Linux разделе.
— ParanoidAnt (02/11/2006 10:57)   
http://netbsd-soc.sourceforge.net/projects/bpg/ та версия которую видел я еще не работала.
— spinore (02/11/2006 19:56)   


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


Спасибо :)


Нет, я не слышал. Как мне казалось, то и сами разработчики BSD используют именно gpg для подписи сообщений.
— SATtva (02/11/2006 20:55)   
<offtopic>
Пока так и не выяснили в чём была ошибка?

Некоторые экстренные меры уже принял и жду от Вас ответов на ряд вопросов, гражданин. :-) Шутка. Но ящик на мэйл.ру проверьте. Чем больше будет фактов, тем лучше. Пока, к сожалению, вынужден полагаться только на собственные предположения и домыслы.
</offtopic>
— spinore (03/11/2006 00:44, исправлен 03/11/2006 02:28)   
Да, SATtva, спасибо, я прочитал. В меру своих скудных познаний я написал Вам всё что мог на sattva@vladmiller.info

P>S: на данный момент отправлено 3 сообщения на ваш ящик не считая самого первого с mail.ru.