Здравствуйте, necr0n0mic0n, Вы писали:
N>I need a program that, given a MD5 or SHA-1 hash, will return all possible data that could create that hash.
Если нет никаких дополнительных условий, то задача элементарно решается прямым перебором по всем наборам данных, начиная от 1-байтных и до бесконечно больших.
Здравствуйте, dimgel, Вы писали:
D>Здравствуйте, necr0n0mic0n, Вы писали:
N>>I need a program that, given a MD5 or SHA-1 hash, will return all possible data that could create that hash.
D>Если нет никаких дополнительных условий, то задача элементарно решается прямым перебором по всем наборам данных, начиная от 1-байтных и до бесконечно больших.
очень смешно, ну удачи...
з.ы.
дополнительные требования:
It just needs to be a simple program where I supply a hash, select if it is either MD5 or SHA-1, and the program will return, within a few minutes runtime, all possible data that would equal that hash if it were run through the same hashing algorithm.
N>It just needs to be a simple program where I supply a hash, select if it is either MD5 or SHA-1, and the program will return, within a few minutes runtime, all possible data that would equal that hash if it were run through the same hashing algorithm.
N>
Дураков везде хватает... Хорошо, когда их можно определить сразу.
Здравствуйте, Kubyshev Andrey, Вы писали:
KA>ребята, вы остали от жизни, такое вполне написуемо. KA>подбирает за секунды.
Простите, подбирает что именно?
return all possible data that could create that hash
К этому моменту у меня внутри 0.5, 0.7, 0.33 (с) НС
Здравствуйте, necr0n0mic0n, Вы писали:
N>Здравствуйте, Kubyshev Andrey, Вы писали:
KA>>ребята, вы остали от жизни, такое вполне написуемо. KA>>подбирает за секунды.
N> а можно поподробней, как имея sha-1 или md5 получить хотя-бы один дата сэмпл имеющий такой хэш N>а то я не математик, и как-то не верится
Ну вроде как в этих алгоритмах нашли дырки, так что один сэмпл подобрать вполне реально. Но вот все возможные...
Здравствуйте, Flamer, Вы писали:
F>Здравствуйте, Kubyshev Andrey, Вы писали:
KA>>ребята, вы остали от жизни, такое вполне написуемо. KA>>подбирает за секунды.
F>Тролль моде он
та неправ, подобрать набор данных, дающий тот-же самый MD5 реально за секунды. Погугли — есть готовые исходники.
Здравствуйте, necr0n0mic0n, Вы писали:
N>Здравствуйте, Kubyshev Andrey, Вы писали:
KA>>ребята, вы остали от жизни, такое вполне написуемо. KA>>подбирает за секунды.
N> а можно поподробней, как имея sha-1 или md5 получить хотя-бы один дата сэмпл имеющий такой хэш N>а то я не математик, и как-то не верится
Вы хоть сами читали это? По первой ссылке автор демонстрирует 2 разных сообщения, имеющие один и тот-же MD5 (что тут удивительного?). Но сгенерировать другие сообщения, имеющие один хеш, он не сможет.
Здравствуйте, 0K, Вы писали:
0K>Для SHA1 ничего такого нет и в ближайшие 5-10 лет не будет.
В SHA1 есть потенциальные уязвимости, так что всё возможно.
Здравствуйте, 0K, Вы писали:
0K>Вы хоть сами читали это? По первой ссылке автор демонстрирует 2 разных сообщения, имеющие один и тот-же MD5 (что тут удивительного?). Но сгенерировать другие сообщения, имеющие один хеш, он не сможет.
вас что на гугле забанили ? или псевдоуверенность в том что МД5 непоколебим затмила все ?
Здравствуйте, 0K, Вы писали:
0K>Для MD5 кажись где-то была таблица на 30 Гб, по которой можно было подобрать сообщение по его хешу. Но далеко не для всех сообщений.
см выше
0K>Для SHA1 ничего такого нет и в ближайшие 5-10 лет не будет.
mike_rs,
_>та неправ, подобрать набор данных, дающий тот-же самый MD5 реально за секунды. Погугли — есть готовые исходники.
Не совсем верно. Пока возможно только такое: для любого массива A существуют (и вычисляются за разумное время от |A|) массивы X и Y, такие что Md5(A.X)=Md5(A.Y), где . — операция конкатенации. Подобрать такой B, что Md5(A)=Md5(B) по-прежнему трудно.
Опять! Коллизии периодически обнаруживают. Но это сложно назвать взломом. 6^69 -- это очень много. Причем о практическом облегчении взлома благодаря коллизиям умалчивают.
Все эти статьи пишутся по понятным причинам: людям нужно что-то делать. Если 100 лет подряд использовать RSA/SHA1 -- зряплату платить никто не будет. Нужно громко кричать о взломанном алгоритме и необходимости внедрять новый (время стричь купоны). Один хрен никто не будет эти статьи читать.
Здравствуйте, Lazy Cjow Rhrr, Вы писали:
LCR>mike_rs,
_>>та неправ, подобрать набор данных, дающий тот-же самый MD5 реально за секунды. Погугли — есть готовые исходники.
LCR>Не совсем верно. Пока возможно только такое: для любого массива A существуют (и вычисляются за разумное время от |A|) массивы X и Y, такие что Md5(A.X)=Md5(A.Y), где . — операция конкатенации. Подобрать такой B, что Md5(A)=Md5(B) по-прежнему трудно.
Я понял что вроде не так, а наоборот. Если есть X и Y, такие что Md5(X)=Md5(Y), то Md5(X.A)=Md5(Y.A).
Здравствуйте, Lazy Cjow Rhrr, Вы писали:
LCR>mike_rs,
_>>та неправ, подобрать набор данных, дающий тот-же самый MD5 реально за секунды. Погугли — есть готовые исходники.
LCR>Не совсем верно. Пока возможно только такое: для любого массива A существуют (и вычисляются за разумное время от |A|) массивы X и Y, такие что Md5(A.X)=Md5(A.Y), где . — операция конкатенации. Подобрать такой B, что Md5(A)=Md5(B) по-прежнему трудно.
Зря вы разочаровываете юных хацкров. Они должны быть уверенны, что сломать можно что угодно в течение нескольких минут .
Здравствуйте, necr0n0mic0n, Вы писали:
N>я имел ввиду что алгоритмы конкретно перелопачены и обнаружены их слабые места.
N>хотя, несомненно, данный бид реквест в его текущем виде — фуфло полнейшее, найти все варианты да еще и за несколько минут
Здравствуйте, Lazy Cjow Rhrr, Вы писали:
LCR>Не совсем верно. Пока возможно только такое: для любого массива A существуют (и вычисляются за разумное время от |A|) массивы X и Y, такие что Md5(A.X)=Md5(A.Y), где . — операция конкатенации. Подобрать такой B, что Md5(A)=Md5(B) по-прежнему трудно.
Этого вполне достаточно для полной компрометации использования MD5 в качестве хеша электронной подписи документов, файлов, сертификатов и т.п. Сертификат кстати уже подделали — это гуглится.
Здравствуйте, mike_rs, Вы писали:
_>Здравствуйте, 0K, Вы писали:
0K>>Вы хоть сами читали это? По первой ссылке автор демонстрирует 2 разных сообщения, имеющие один и тот-же MD5 (что тут удивительного?). Но сгенерировать другие сообщения, имеющие один хеш, он не сможет.
_>вас что на гугле забанили ? или псевдоуверенность в том что МД5 непоколебим затмила все ?
_>http://www.stachliu.com.nyud.net:8090/md5coll.c _>http://damagelab.org/lofiversion/index.php?t=5617
Вообще, насколько я понял статьи, получать исходное сообщение по МД5 хэшу ещё не научились (кроме как по словарю) — а именно это требует автор забавного бида из исходного сообщения.
В статьях просто показано, как для какого-то известногохэша для известного файла, получить вредный файл с тем же хэшем — к исходной задаче это не имеет никакого отношения
Здравствуйте, 0K, Вы писали:
0K>Зря вы разочаровываете юных хацкров. Они должны быть уверенны, что сломать можно что угодно в течение нескольких минут .
не стоит так переживать — лично ваши MD5 хеши не взломают минимум лет 5-10
Здравствуйте, alexqc, Вы писали:
A>Здравствуйте, necr0n0mic0n, Вы писали:
N>>я имел ввиду что алгоритмы конкретно перелопачены и обнаружены их слабые места.
N>>хотя, несомненно, данный бид реквест в его текущем виде — фуфло полнейшее, найти все варианты да еще и за несколько минут
A>...особенно учитывая, что "все" === ?
ну, предположим, что "строго равно бесконечности" оно только в математическом смысле...
mike_rs,
LCR>>Не совсем верно. Пока возможно только такое: для любого массива A существуют (и вычисляются за разумное время от |A|) массивы X и Y, такие что Md5(A.X)=Md5(A.Y), где . — операция конкатенации. Подобрать такой B, что Md5(A)=Md5(B) по-прежнему трудно.
_>Этого вполне достаточно для полной компрометации использования MD5 в качестве хеша электронной подписи документов, файлов, сертификатов и т.п. Сертификат кстати уже подделали — это гуглится.
Calm down, его уже давно не используют в качестве электронной подписи. А для проверки целостности пересылки файлов вполне годится.
Здравствуйте, Lazy Cjow Rhrr, Вы писали:
LCR>mike_rs,
LCR>>>Не совсем верно. Пока возможно только такое: для любого массива A существуют (и вычисляются за разумное время от |A|) массивы X и Y, такие что Md5(A.X)=Md5(A.Y), где . — операция конкатенации. Подобрать такой B, что Md5(A)=Md5(B) по-прежнему трудно.
_>>Этого вполне достаточно для полной компрометации использования MD5 в качестве хеша электронной подписи документов, файлов, сертификатов и т.п. Сертификат кстати уже подделали — это гуглится.
LCR>Calm down, его уже давно не используют в качестве электронной подписи. А для проверки целостности пересылки файлов вполне годится.
имхо для таких целей crc32 (или crc64) лучше подойдет (плюс вычислять его намного быстрей)
Здравствуйте, Lazy Cjow Rhrr, Вы писали:
LCR>Calm down, его уже давно не используют в качестве электронной подписи. А для проверки целостности пересылки файлов вполне годится.
MD5 в качестве цифровой подписи НИКОГДА не использовался -- это алгоритм хеширования.
LCR>>Calm down, его уже давно не используют в качестве электронной подписи. А для проверки целостности пересылки файлов вполне годится.
0K>MD5 в качестве цифровой подписи НИКОГДА не использовался -- это алгоритм хеширования.
А разве в ЭЦП не используют алгоритмы хеширования?
Как тогда поступают с данными которые нужно подписать/проверить ЭЦП, объем которых очень разнится?
Предоставьте мне любую строку, MD5 хэш которой равен заранее заданному значению, к примеру, состоит из одних единиц (двоек, троек.., F) и я поверю, что алгоритм взломан. А эти псевдофокусы с якобы разными файлами имеющими одинаковый хэш, я и сам умею показывать.
Здравствуйте, de Niro, Вы писали:
DN>Предоставьте мне любую строку, MD5 хэш которой равен заранее заданному значению, к примеру, состоит из одних единиц (двоек, троек.., F) и я поверю, что алгоритм взломан.
Какое это имеет отношение к взлому SHA-1? Напоминаю, на сегодняшний день неизвестно ни одной реальной коллизии этого алгоритма.
DN>А эти псевдофокусы с якобы разными файлами имеющими одинаковый хэш, я и сам умею показывать.
Ну-ну. В студию, "псевдофокус" для SHA-1.
Обобщение алгоритма нахождения парной коллизии для блочных хэш-алгоритмов с MD5-завершением потянет на диссертацию по криптографии.
Здравствуйте, ivanU, Вы писали:
LCR>>>Calm down, его уже давно не используют в качестве электронной подписи. А для проверки целостности пересылки файлов вполне годится.
0K>>MD5 в качестве цифровой подписи НИКОГДА не использовался -- это алгоритм хеширования.
U>А разве в ЭЦП не используют алгоритмы хеширования? U>Как тогда поступают с данными которые нужно подписать/проверить ЭЦП, объем которых очень разнится?
Используют, конечно. И в ГОСТ алгоритмах используют.
Здравствуйте, Andir, Вы писали:
DN>>Предоставьте мне любую строку, MD5 хэш которой равен заранее заданному значению, к примеру, состоит из одних единиц (двоек, троек.., F) и я поверю, что алгоритм взломан.
A>Какое это имеет отношение к взлому SHA-1? Напоминаю, на сегодняшний день неизвестно ни одной реальной коллизии этого алгоритма.
A> Ну-ну. В студию, "псевдофокус" для SHA-1.
Я разве упоминал SHA-1? Кто такой Студебеккер? Это ваш родственник
Студебеккер? Папа ваш Студебеккер? Знатоки! Убивать надо таких знатоков! "Студебеккер" ему подавай!
Здравствуйте, tyger, Вы писали:
T>Здравствуйте, ivanU, Вы писали:
LCR>>>>Calm down, его уже давно не используют в качестве электронной подписи. А для проверки целостности пересылки файлов вполне годится.
0K>>>MD5 в качестве цифровой подписи НИКОГДА не использовался -- это алгоритм хеширования.
U>>А разве в ЭЦП не используют алгоритмы хеширования? U>>Как тогда поступают с данными которые нужно подписать/проверить ЭЦП, объем которых очень разнится? T>Используют, конечно. И в ГОСТ алгоритмах используют.
Здравствуйте, de Niro, Вы писали:
A>> Ну-ну. В студию, "псевдофокус" для SHA-1.
DN>Я разве упоминал SHA-1? Кто такой Студебеккер? Это ваш родственник DN>Студебеккер? Папа ваш Студебеккер? Знатоки! Убивать надо таких знатоков! "Студебеккер" ему подавай!
Зачем тогда отвечаете мне? Я лично только упомянул про новую атаку на SHA-1.
А, понял, кажется. У вас, видимо, "деревом" отображается, а я просто-напросто ткнул "ответить" на последнем сообщении темы, получилось как бы ответил вам, и из-за этого весь сыр-бор.
Здравствуйте, mike_rs, Вы писали:
N>> :wow: а можно поподробней, как имея sha-1 или md5 получить хотя-бы один дата сэмпл имеющий такой хэш N>>а то я не математик, и как-то не верится :xz:
_>да элементарно, епт
Слышу айфон, да не знаю, где он. Различай атаки на коллизии от атак на прообразы.
Здравствуйте, 0K, Вы писали:
0K>Здравствуйте, tyger, Вы писали:
T>>Здравствуйте, ivanU, Вы писали:
LCR>>>>>Calm down, его уже давно не используют в качестве электронной подписи. А для проверки целостности пересылки файлов вполне годится.
0K>>>>MD5 в качестве цифровой подписи НИКОГДА не использовался -- это алгоритм хеширования.
U>>>А разве в ЭЦП не используют алгоритмы хеширования? U>>>Как тогда поступают с данными которые нужно подписать/проверить ЭЦП, объем которых очень разнится? T>>Используют, конечно. И в ГОСТ алгоритмах используют.
0K>Используют, но не в качестве цифровой подписи.
Здравствуйте, 0K, Вы писали:
0K>Здравствуйте, Lazy Cjow Rhrr, Вы писали:
LCR>>Calm down, его уже давно не используют в качестве электронной подписи. А для проверки целостности пересылки файлов вполне годится.
0K>MD5 в качестве цифровой подписи НИКОГДА не использовался -- это алгоритм хеширования.
А что по-Вашему есть цифровая подпись? Это зашифрованный закрытым ключом хэш тела документа (чтобы каждый мог расшифровать открытым ключом и проверить). Так вот, по классике, например, PGP 2.* этим хэшом был именно MD5. А так как одна из возможностей игрищ с подписью — это создать два разных документа с одинаковым хэшом и затем предъявить в разных случаях разные версии — то MD5 и оказался за бортом в этой роли.
RFC4880:
2.2. Authentication via Digital Signature
The digital signature uses a hash code or message digest algorithm,
and a public-key signature algorithm. The sequence is as follows:
1. The sender creates a message.
2. The sending software generates a hash code of the message.
3. The sending software generates a signature from the hash code
using the sender's private key.
4. The binary signature is attached to the message.
5. The receiving software keeps a copy of the message signature.
6. The receiving software generates a new hash code for the received
message and verifies it using the message's signature. If the
verification is successful, the message is accepted as authentic.
Здравствуйте, 0K, Вы писали:
0K>Здравствуйте, tyger, Вы писали:
T>>Здравствуйте, ivanU, Вы писали:
LCR>>>>>Calm down, его уже давно не используют в качестве электронной подписи. А для проверки целостности пересылки файлов вполне годится.
0K>>>>MD5 в качестве цифровой подписи НИКОГДА не использовался -- это алгоритм хеширования.
U>>>А разве в ЭЦП не используют алгоритмы хеширования? U>>>Как тогда поступают с данными которые нужно подписать/проверить ЭЦП, объем которых очень разнится? T>>Используют, конечно. И в ГОСТ алгоритмах используют.
0K>Используют, но не в качестве цифровой подписи.
Ну ладно, неправильно выразился.
Используют хеширование в тепочке процеса подписи на тех данных, объем которых велик и в таком случае подписывают только хеш от данных.