Неожиданные события последних дней в криптоанализе хэш-функц
Неожиданные события последних дней в криптоанализе хэш-функций.
1996 г. – Доббертин открыл частичные коллизии MD5 c измененным вектором
инициализации (атака не имеет практического значения, но свидетельствует
о некоторой нестойкости).
2004.07.12 – обещают премию 10000$ за нахождение полной коллизии MD5
http://www.certainkey.com/news/?12
2004.07.22 – Бихам находит значительные предколлизии в sha0
(sha1 отличается только одним циклическим сдвигом)
http://eprint.iacr.org/2004/146
Статья наделала много шума...
2004.08.12 – Antoine Joux(*) (DCSSI Crypto Lab)
Patrick Carribault (Bull SA)
Christophe Lemuet, William Jalby
(Universit'e de Versailles/Saint-Quentin en Yvelines)
http://www.md5crk.com/sha0col/
находят коллизию для sha0 за 2^50 операций и 50000
часов машинного времени.
2004.08.16
создатель AES-Rijndael в специальном интервью предупреждает о серьезных
проблемах, если
взлом хэш-функций подвердится – цифровые подписи, сертификаты,
многие банковские протоколы будут недействительны.
(эту ссылку я где-то потерял :-(.
http://www.freedom-to-tinker.com/archives/000661.html
2004.08.16 – Китайцы нашли способ найти коллизии в MD5 за 15 сек – 5 мин
на PC
http://eprint.iacr.org/2004/199.pdf
За 2^6 операций "взламывается" HAVAL и RIPEMD.
MD4 "взламывается" на калькуляторе или на бумаге.
http://www.tcs.hut.fi/~mjos/md5/
http://www.freedom-to-tinker.com/archives/000662.html
2004.08.18 – китайцы выкладывают исправленную версию статьи выступают
на конференции rump Crypto-session. Идет прямая трансляция в Интернете.
Обещают "взломать" SHA-1 – нужно только незначительно переделать алгоритм.
http://www.iacr.org/conferences/crypto2004/rump.html
Простите за некоторые неточности и сумбурность обзора – все события интересны тем, что
происходят в реальном времени.
Вроде бы пока повода для паники нет – подделать подпись на основе коллизии невозможно,
но этого достаточно для доказательства нейстойкости хэш-функций с далеко идущими
последствиями.
На основе SHA был создан шифр SHACAL, который прошел конкурс крипто-NESSI.
Какова будет теперь судьба некоторых блочных (и потоковых) шифров, если
у считавшихся стойкими хэш-функций найдены дифференциальные характеристики,
распространяющиеся через все раунды?
Но если дело так и дальше пойдет... то можно будет легко подделывать
цифровые сертификаты, ключи PGP, подписи.
Все боялись краха RSA, а проблема возникла в другой части протокола.
комментариев: 9796 документов: 488 редакций: 5664
(Вот что значит закрытый дизайн по критериям проектирования, хотя код и открыт – спросить не с кого, все только ломают голову над тем, чтобы это все значило?).
http://eprint.iacr.org/2004/253.pdf
комментариев: 63 документов: 5 редакций: 0
Хотелось бы узнать мнение сообщества (на русском :)) по поводу практических последствий реального(?) взлома MD5 и очень вероятного потенциального взлома SHA-1.
MD5 – это практически все пароли (в ОС в том числе) и цифровые подписи. Например, цифровая подпись и парольная защита секретного ключа во внутренней реализации OpenPGP в составе Bat'а.
SHA-1 – это цифровая подпись в последних версиях оригинального PGP и GnuPG. Насчёт парольной защиты секретного ключа – не знаю, но предполагаю.
Вообще, насколько надёжна парольная защита секретного ключа в PGP?
Какие последствия для протоколов шифрования трафика TLS/SSL/SSH ?
комментариев: 11558 документов: 1036 редакций: 4118
Ответ о последствиях взлома можно дать, только определившись, что понимается под "взломом". Взлом хэш-функции может проходить по двум направлениям: получение коллизий и восстановление прообраза. Свободное получение коллизий означает полный крах современной системы ЭЦП. Свободное восстановление прообразов — крах систем аутентификации, основанных на хэшированных паролях. Всё, что известно на данный момент, касается только коллизий. О свободе выработки речи не идёт — удаётся получать идентичных хэш для некоторых одиночных входных блоков.
http://www.pgpru.com/faq/tech.htm#pgptech_6
Как было сказано, если будет предложен способ свободного нахождения коллизий, то для подпротоколов аутентификации последствия будут самыми плачевными. На шифровании, как таковом, это едва ли скажется. Таким образом, даже при самом пессимистичном развитии событий большого риска не возникает. Спуфинг и атаки "человек в середине" для трафика реального времени не видятся мне первостепенными угрозами просто из-за сложности их проведения.
комментариев: 9796 документов: 488 редакций: 5664
Атаки такого рода относятся к категории "sqare root based", потому что они помогают сократить число подобранных вариантов на квадратный корень. Одно дело, когда мы просто пассивно полагаемся на существование коллизий, другое дело, когда их можно создавать целенаправленно.
На основе хэш-функций было создано некоторое количество шифров, возможно они окажутся менее стойкими, чем ожидалось. Правда такие шифры особого распространения не получили.
2). В протоколах, аналогичных SSL, код аутентичности сообщения вычисляется через HMAC (эта функция в свою очередь основана на комбинации SHA-1 и MD5).
Но кроме этого, используется еще и аналогичная функция PRF, для получения псевдослучайных значений, из которых, например, генерируются сеансовые ключи. Если создать некоторую сложную коллизию, то значения выхода такой функции будут неслучайными.
Практического значения это вроде не имеет, ведь исходные случайные значения выбирает сам пользователь. Но для последующего криптоанализа это может пригодится.
3) Насчет "спуфинга" и атак "человек посредине". Все относительно. Да, сейчас проще взломать сервер через дыры в программном обеспечении, неправильные настройки, плохие пароли и т.д. Поэтому никто с такого рода атаками и не заморачивается.
Но то, что такие атаки сложные – это заблуждение. Уже давно существуют (и даже входят в состав некоторых Линукс-дистрибутивов) такие "админско-хакерские" утилиты как dsniff, sshmitm, webmitm. Примеры использования таких утилит разобраны на соотвествующих сайтах. Можете сами потренироваться в локальной сети и увидеть, как легко быть в роли Мэллори.
комментариев: 9796 документов: 488 редакций: 5664
Это конечно не "мнение сообщества на русском", но здесь частично воспроизведена и исследована технология, которую использовал Wang для нахождения коллизий. Даны оценки сложности проведения реальных аттак.
Рассмотрены и атаки на HMAC с известным и неизвестным ключом.
Примерный результат такой, что подмножество коллизий очень ограничено, продемонстрированные блоки обладают определенной, специально сконструированной структурой и использовать их для того, чтобы вставить в какие-нибудь реальные файлы (документы или ключи) пока представляется мало возможным.
Пока этот взлом носит чисто лабораторный, сертификационный характер. Но для постепенного отказа от алгоритмов близких к MD5, этого конечно уже достаточно .
http://eprint.iacr.org/2004/264
Cryptology ePrint Archive: Report 2004/264
Musings on the Wang et al. MD5 Collision
Philip Hawkes and Michael Paddon and Gregory G. Rose
комментариев: 9796 документов: 488 редакций: 5664
Хотя все атаки конечно же чисто теоретические... Но впомним как быстро от недавних теоретических атак MD5 дело перешло к практике.
http://eprint.iacr.org/2004/304/
!!(green) Cryptology ePrint Archive: Report 2004/304
Second Preimages on n-bit Hash Functions for Much Less than 2^n Work
John Kelsey and Bruce Schneier
!!
http://eprint.iacr.org/2004/304.pdf
комментариев: 9796 документов: 488 редакций: 5664
http://www.doxpara.com/md5_someday.pdf
Подписи дистрибутивов, пароли, аудит файлов и много других протоколов с этой функцией становятся все более и более уязвимыми.
Авторы заявляют, что последствия взлома MD5 от теоретических могут быстро перейти к катастрофическим.
комментариев: 9796 документов: 488 редакций: 5664
Скоро можно будет переименовать тему в "долгожданные события в криптоанализе хэш-функций"
комментариев: 9796 документов: 488 редакций: 5664
http://eprint.iacr.org/2004/364/
комментариев: 11558 документов: 1036 редакций: 4118
комментариев: 9796 документов: 488 редакций: 5664
комментариев: 11558 документов: 1036 редакций: 4118
Если бы в ближайшее время NIST объявил открытый конкурс, что-то вроде ASH — Advanced Hash Standard, то успел бы закончить как раз к намеченному сроку.
комментариев: 9796 документов: 488 редакций: 5664
Коллизии в MD5 и фальшивые подписи для сертификатов.
комментариев: 11558 документов: 1036 редакций: 4118
Мне думается – с шифрованием все таки понятно – это просто гигантское количество ключей… А с хешами? Есть алгоритм, который можно изучить, и даже не имея возможности из хеша восстановить начальное значение можно найти определенные закономерности по поиску определенных условий из блоков начальных данных, хотя бы примерно приближающий результат функции к искомому значению. Алгоритм то всегда один, а в шифровании ключи всегда разные и при выборе ключа качественный алгоритм выбирает действительно абсолютно случайный ключ.
Вот возьмем однонаправленную функцию. Я нахожусь на вершине горы, форма которой есть алгоритм hash-функции. Я кинул вниз камень (запустил хеш функцию). Этот камень ударился о другой камень, далее эти два камня ударились в следующие камни (провожу аналогию – на вход хеш функции поступили следующие строки текста) и через некоторое время и расстояние вниз полетела уже целая лавина разных камней, больших и маленьких, которые ударяясь друг о друга и о поверхность горы, организовали огромное число различных случайных комбинаций, действующих в свое время одна на другую в дико накопительной прогрессии. Это однонаправленная функция? Исходя из полученной в результате картины определить точно сам первый камень и куда я его бросил невозможно (возможно конечно, если сделать несоразмерное гигантское количество обратных вычислений по построенным моделям отскоков камней друг от друга, где начальными условиями будет являться местоположение камней после схода лавины и т.п. но это супер сложно и требует сильнейшей математической и исследовательской в данном случае по физическим свойствам камней подготовки, или же полным перебором разных вариантов), хотя результат очевиден, и этот результат получился по вполне очевидным причинам – камни вниз летели и ударялись друг о друга по законам физики, известным со школы, провожу аналогию – хеш считает то же по определенному алгоритму. Если бы лавина летела вниз на другой день, то и результат бы был другой, к примеру потому, что была бы другая температура окружающего воздуха (а значит другая упругость и крепость камней, соответственно другие отскоки камней друг от друга и т.п.), провожу аналогию – в тексте изменили одну букву.
Теперь о том, к чему я все это писал. Мы имеем совершенно определенную картину после схода лавины. Можно ли повторить эту картину. В точности нет, однако изучив общие закономерности полета камней можно построить хотя бы приближенную картину, и такие модели по видимому (по крайней мере я так думаю) существуют. Таким образом получаем, что для поиска коллизий нет смысла работать полным перебором, достаточно построить определенную модель работы функции, существенно сужающую количество начальных условий, по аналогии о нашей горе – построив определенную модель можно без большого труда определить зимой шла лавина или летом, поскольку начальные условия сильно отличны, а при более детальной проработке может определить и время суток к примеру.
//В целом для лучшего представления я конечно привел слишком упрощенную картину, можно было бы расписать все немного подробнее, например так, хотя это тоже упрощенно:
Количество камней на склонах горы – разрядность выходного значения hash функции (пусть к примеру у нас будет 1000 камней, для легкости представления можно представить, что это камни весом более 100 кГ, но остальные камни то же принимают участие в процессе)
Высота горы и ее форма – алгоритм hash функции,
Запуск функции – падение первого камня с определенным весом с высоты 100 метров точно на вершину горы, или куда-нибудь вблизи от нее.
Все остальное – входные параметры для hash функции (температура, плотность и влажность воздуха, неоднородность нагрева склонов горы солнечной энергией, данный параметр можно рассматривать не как один, а разложив его на многократные градации по поверхности, упругость и прочность пород, состояние растительности в различные промежутки времени года, наличие и вид атмосферных осадков и т.д, таких параметров может быть очень очень много).//