id: Гость   вход   регистрация
текущее время 11:21 25/04/2024
Владелец: unknown (создано 04/06/2009 09:15), редакция от 06/06/2009 18:50 (автор: SATtva) Печать
Категории: криптография, криптоанализ, хэширование, атаки
https://www.pgpru.com/Новости/2009/ОпубликованаРаботаПоНахождениюКоллизийВSHA-1
создать
просмотр
редакции
ссылки

04.06 // Опубликована работа по нахождению коллизий в SHA-1 за 252 шагов


После краткого анонса на конференции Eurocrypt-2009 Cameron McDonald, Philip Hawkes и Josef Pieprzyk опубликовали работу Differential Path for SHA-1 with complexity $O(2^{52})$.


Рассмотрев все известные ранее способы нахождения коллизий и применив комплексный подход, объединяющий обычный дифференциальный анализ с его разновидностью в виде бумеранг-атак, ранее применявшихся только для блочных шифров, авторам удалось найти атаку на нахождение коллизии в SHA-1 за время O(252).


Напомним, что теоретический предел стойкости SHA-1 к нахождению коллизий 280, а продемонстрированная ранее самая успешная атака имела сложность 263. Такое снижение времени нахождения коллизий является существенным прогрессом в криптоанализе и приближает к возможному осуществлению практических атак на SHA-1


Источник: Cryptology ePrint Archive


 
— Гость (08/06/2009 02:18)   <#>
Такое снижение времени нахождения коллизий является существенным прогрессом в криптоанализе и приближает к возможному осуществлению практических атак на SHA-1
А разве 2^52 – не практическая атака?
— unknown (08/06/2009 11:17, исправлен 08/06/2009 11:18)   профиль/связь   <#>
комментариев: 9796   документов: 488   редакций: 5664
Практически практическая :)

Смотря насколько точно оценить время из абстрактных шагов в O в реальных затратах.
— Гость (08/06/2009 13:15)   <#>
Еще больше практичности добавляет вычислительные умения современных бытовых игровых видеокарт. См google:CUDA+brute+forcer. И с этим ещё можно устроить распределённые вычисления.
— Гость (26/06/2009 19:04)   <#>
м.б. дурацкий вопрос: а как быть с используемой по умолчанию в LUKS sha1? Планируется ли переход на более стойкую функцию?
— SATtva (26/06/2009 19:29)   профиль/связь   <#>
комментариев: 11558   документов: 1036   редакций: 4118
Ни SHA-1, ни даже MD5 не ослаблены к нахождению прообраза. Коллизионная уязвимость в данном случае роли не играет.
— Мухтар (26/06/2009 23:34)   профиль/связь   <#>
комментариев: 155   документов: 20   редакций: 5
Хотелось бы получить более менее подробные сведения о механизме преобразования пароля в ключ шифрования. А то имею об этом теоретические представления, вроде как хеш от пароля является ключем к расшифровке ключа блочного шифра.

И тут есть один момент. Какова длина хеша, используемого для расшифровки ключа? А то я так понимаю, прообраз прообразом, но чисто из моего представления о коллизиях, выходит, что на ограниченном прообразе число возможных вариантов хеша не может быть равно 2^N Да и в Википедии вы найдете одинаковые по длине (и короткие) прообразы с коллизией.
— SATtva (27/06/2009 18:56)   профиль/связь   <#>
комментариев: 11558   документов: 1036   редакций: 4118
Вот здесь по шагам расписан принцип String-to-Key.

А то имею об этом теоретические представления, вроде как хеш от пароля является ключем к расшифровке ключа блочного шифра.

Нет, хэш пароля сам и является ключом.
— Мухтар (27/06/2009 20:39)   профиль/связь   <#>
комментариев: 155   документов: 20   редакций: 5
на ограниченном прообразе число возможных вариантов хеша не может быть равно 2^N

Наверное, я бы предложил следующую схему: 48 символьный пароль сжимается в 256 битное число по принципу base64. Если же просто вычислить хеш, аналогичной стойкости не получим. Затем в цикле многократно вычисляем блочный шифр от самого себя, с добавлением соли. Если вычислять многократно хеш на прообразе, равном длине хеша, получим коллизии, и в конечном счете, меньшее число комбинаций. Этот вопрос не однократно поднимался на этом сайте.
Нет, хэш пароля сам и является ключом.

Как минимум, в bestcrypt можно менять пароль контейнера, без перешифрования всего контейнера.
— SATtva (27/06/2009 20:48)   профиль/связь   <#>
комментариев: 11558   документов: 1036   редакций: 4118
Наверное, я бы предложил следующую схему: 48 символьный пароль сжимается в 256 битное число по принципу base64. Если же просто вычислить хеш, аналогичной стойкости не получим.

А если пароль не 48 бит, то чем дополнять? А если шифр не 256-битовый, а 128, то жертвовать энтропией пароля?

Как минимум, в bestcrypt можно менять пароль контейнера, без перешифрования всего контейнера.

Это уже нюансы конкретной реализации. S2K, как таковой, просто преобразует пароль в симметричный ключ; что с полученным ключом делают дальше — не важно.
Ваша оценка документа [показать результаты]
-3-2-1 0+1+2+3