Можно ли создать файл с заданным размером и MD5 хэш?

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

6 ответов


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


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

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

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

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

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


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

вы можете попробовать Радужный таблице, но это требует длительного времени для создания и огромного объема памяти для хранения.


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

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


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


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

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