Можно ли создать файл с заданным размером и хешем MD5? - PullRequest
6 голосов
/ 25 марта 2010

Конечно, я знаю, возможно ли создать файл определенного размера и как это сделать. Но возможно ли создать файл с определенным размером, а также с определенным отпечатком MD5?

Ответы [ 6 ]

4 голосов
/ 25 марта 2010

Невозможность найти файл с определенным хешем является одним из определяющих свойств криптографической хеш-функции, такой как md5.

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

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

Для этого требуется в среднем 2 64 (2 128/2 ) операций хэширования, что намного больше, чем мы можем получить на современных компьютерах.

В Википедии также есть статья об атаках перед изображениями:
http://en.wikipedia.org/wiki/Preimage_attack

4 голосов
/ 25 марта 2010

Просто создать файл с данным хешем MD5 достаточно сложно без добавления требования к размеру.

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

3 голосов
/ 25 марта 2010

MD5 - криптографический алгоритм хеширования. Единственная причина в том, что создать файл с определенным хешем нелегко.

Сказав это, исследователи недавно обнаружили недостатки в алгоритме. На странице Википедии есть информация .

3 голосов
/ 25 марта 2010

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

2 голосов
/ 25 марта 2010

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

1 голос
/ 25 марта 2010

Каждый файл, который вы создаете, будет иметь определенный размер и определенный MD5 хеш.

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...