Действительно ли возможно создать подделанный файл, который имеет те же контрольные суммы с помощью двух различных алгоритмов?

Попробуйте это:

echo "a,b"|sed 's/,/\r\n/'
8
задан Mauli 24 July 2009 в 12:47
поделиться

5 ответов

"Возможно ли это вообще?" - да, если общий размер контрольных сумм меньше, чем общий размер файла, невозможно избежать коллизий.

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

См. wikipedia о конкатенации криптографических хэш-функций , что также является полезным термином для google для.

С той страницы:

"Однако для хеша Меркла-Дамгарда функции, объединенная функция настолько силен, насколько лучше компонент, не сильнее. Жу отметил что 2-столкновения приводят к n-коллизии: если это возможно найти два сообщения с одинаковым MD5 хеш, его фактически больше нет трудно найти столько сообщений, сколько злоумышленник желает идентичного MD5 хеши. Среди n сообщений с тот же хеш MD5, скорее всего быть коллизией в SHA-1. В дополнительная работа, необходимая для поиска Коллизия SHA-1 (за пределами экспоненциальный поиск дня рождения) полином. Этот аргумент резюмировал Финни. "

7
ответ дан 6 December 2019 в 00:58
поделиться

Я спросил себя, будет ли можно создать файл A ', который имеет тот же размер, та же сумма md5 и та же сумма sha1, что и в исходном файле A.

Да, сделайте копию файла.

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

Вы можете подумать примерно так:

Если размер файла увеличивается на n, вероятность возможной подделки увеличивается, но вычислительные затраты, необходимые для проверки комбинаций, возрастают экспоненциально на 2 ^ n.

Таким образом, чем больше ваш файл, тем более вероятно, что там обман, но тем менее вероятно, что вы его найдете.

-1
ответ дан 6 December 2019 в 00:58
поделиться

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

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

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

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

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

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

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

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

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

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

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

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

0
ответ дан 6 December 2019 в 00:58
поделиться

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

-2
ответ дан 6 December 2019 в 00:58
поделиться

Теоретически да, вы можете получить это, на практике это адский сговор. На практике никто даже не может создать сговор SHA1, не говоря уже о MD5 + SHA1 + Size одновременно. Эта комбинация просто невозможна прямо сейчас, если не задействовать всю компьютерную мощь мира и не запустить ее на некоторое время.

Хотя в ближайшем будущем мы можем увидеть больше уязвимостей в SHA1 и MD5. А с поддержкой лучшего оборудования (особенно GPU) почему бы и нет.

-1
ответ дан 6 December 2019 в 00:58
поделиться
Другие вопросы по тегам:

Похожие вопросы: