Рейтинг:0

Значение термина «необратимый» для хэширования

флаг in

У меня была интересная дискуссия с Джоном Скитом на StackOverflow. Он указал, что хэши необратимы, но распространил это на некриптографические хэши. Хеш-функция имеет определенный размер вывода, в то время как функция может обрабатывать сообщения любого размера. Так что, если рассуждать с этой точки зрения, хэш всегда необратим, поскольку существует множество сообщений с одинаковым хэшем.

Однако мне интересно, правильно ли это определение «необратимого». В криптографии необратимость означает, что мы не можем установить правильное сообщение с большой долей уверенности, или это означает, что мы не можем найти Любые информацию о сообщении, кроме как при сравнении его с известными парами сообщение/хэш?

Рейтинг:1
флаг my

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

Таким образом, мы обычно не рассматриваем «утечку информации», когда говорим о хеш-функциях; то есть, как правило, нас не беспокоит, не приведет ли изучение хэш-вывода к утечке информации об исходном сообщении. Вместо этого нас беспокоит сложность поиска сообщения, которое генерирует этот хэш (либо устойчивость к прообразу, устойчивость к второму прообразу, либо устойчивость к коллизиям), потому что это напрямую связано с предположениями о безопасности, которые нам обычно требуются от хеш-функций.

Тем не менее, если кто-то обнаружит утечку в (скажем) SHA3, например, изучив хэш, мы сможем определить длину сообщения, ну, это будет довольно тревожно (и мы, вероятно, начнем осуждать SHA3). ); мы иногда хотим рассматривать наши хеш-функции как случайный оракул, и это будет означать, что он не действует как таковой [1]. Однако вероятность такой утечки представляется маловероятной.

[1]: Да, я знаю, что атаки с увеличением длины показывают, что SHA-2 не действует как случайный оракул; это хорошо понятно, и мы просто избегаем использования SHA-2 таким образом, где применима эта конкретная атака.

Maarten Bodewes avatar
флаг in
Я вижу здесь ваши рассуждения и согласен с ними.Тем не менее, если бы мы использовали криптографический хэш в качестве примитива для хэша пароля или KDF, и если хэш приводит к утечке частей сообщения, разве это не создало бы проблемы? Должны ли мы тогда предположить, что оно *должно* действовать как случайный оракул и, таким образом, не допускать утечки информации о сообщении?
poncho avatar
флаг my
@MaartenBodewes: ну, если мы предположим, что перестановка Кекчака является «случайной перестановкой», то я считаю, что просто показать, что SHA-3 не пропускает никакой информации об изображении (и аналогично SHA-2 и операция сжатия хэша). Это достаточно хорошо?
Maarten Bodewes avatar
флаг in
Конечно, этого достаточно для этой цели. Мой вопрос таков: «*если* они будут передавать данные, скажем, установлен ли последний бит или нет, будем ли мы по-прежнему считать их «необратимыми»?» требования к хеш-функциям, так что, возможно, мы просто выходим за рамки научной терминологии — и все.
poncho avatar
флаг my
@MaartenBodewes: хммм, проблема в том, что «необратимый» не имеет стандартного согласованного определения в криптосообществе, и поэтому трудно сказать, будет ли такая хеш-функция соответствовать этому определению. С другой стороны, для SHA-2/3 это будет означать, что операция сжатия/перестановки хэша не соответствует предположениям о безопасности, и из-за этого мы не должны доверять этой хэш-функции в целом...

Ответить или комментировать

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