Показать сообщение отдельно

  #6  
Старый 20.01.2009, 02:30
NFM
Постоянный
Регистрация: 16.01.2006
Сообщений: 598
Провел на форуме:
5120686

Репутация: 531


По умолчанию

Почитал на вики про алгоритм мд5
Цитата:
Шаг 3. Инициализация буфера Для вычислений инициализируются 4 переменных размером по 32 бита и задаются начальные значения шестнадцатеричными числами: А = 01 23 45 67; В = 89 AB CD EF; С = FE DC BA 98; D = 76 54 32 10.
то есть если я правильно дальше понял, хеш обьязательно у нас получается составленным из букв и цифр вместе. То есть нету такого входного значения, хеш которого будет составлен или только из цифр или только из букв, что сужает намного нашу область

или я неправильно понял?
--
а вот еще дальше прочитал


Цитата:
оллизии MD5 Коллизия хеш-функции — это получение одинакового значения функции для разных сообщений и идентичного начального буфера. В отличие от коллизий, псевдоколлизии определяются как равные значения хеша для разного значения начального буфера, причем сами сообщения могут совпадать или отличаться. В 1996 году Ганс Доббертин, нашел псевдоколлизии в MD5, используя определенные инициализирующие векторы, отличные от стандартных. Оказалось, что можно для известного сообщения построить второе, такое что оно будет иметь такой же хеш как и исходное. C точки зрения математики это означает MD5(IV,L1) = MD5(IV,L2), где IV начальное значение буфера, а L1 и L2 различные сообщения. Ханс Доббертин нашел такие значения. Например если взять начальное значение буфера: A = 0x12AC2375 В = 0x3B341042 C = 0x5F62B97C D = 0x4BA763ED и задать входное сообщениеAA1DDABE D97ABFF5 BBF0E1C1 32774244 1006363E 7218209D E01C136D 9DA64D0E 98A1FB19 1FAE44B0 236BB992 6B7A779B 1326ED65 D93E0972 D458C868 6B72746A то, добавляя число 29 к определенному 32-разрядному слову в блочном буфере, можно получить второе сообщение с таким же хешем. Ханс Доббертин представил такую формулу: Тогда MD5(IV, L1) = MD5(IV, L2) = BF90E670752AF92B9CE4E3E1B12CF8DE. В 2004 году китайские исследователи Ван Сяоюнь (Wang Xiaoyun), Фен Дэнгуо (Feng Dengguo), Лай Сюэцзя (Lai Xuejia) и Юй Хунбо (Yu Hongbo) объявили об обнаруженной ими уязвимости в алгоритме, позволяющей за небольшое время (1 час на кластере IBM p690) находить коллизии.[5][6] В 2005 году Ван Сяоюнь и Юй Хунбо из университета Шаньдун в Китае опубликовали алгоритм, который может найти две различные последовательности 128 байт, которые дают одинаковый MD5 хеш. Одна из таких пар:d131dd02c5e6eec4693d9a0698aff95c 2fcab58712467eab4004583eb8fb7f89 55ad340609f4b30283e488832571415a 085125e8f7cdc99fd91dbdf280373c5b d8823e3156348f5bae6dacd436c919c6 dd53e2b487da03fd02396306d248cda0 e99f33420f577ee8ce54b67080a80d1e c69821bcb6a8839396f9652b6ff72a70 иd131dd02c5e6eec4693d9a0698aff95c 2fcab50712467eab4004583eb8fb7f89 55ad340609f4b30283e4888325f1415a 085125e8f7cdc99fd91dbd7280373c5b d8823e3156348f5bae6dacd436c919c6 dd53e23487da03fd02396306d248cda0 e99f33420f577ee8ce54b67080280d1e c69821bcb6a8839396f965ab6ff72a70 Каждый их этих блоков дает MD5 хеш равный 79054025255fb1a26e4bc422aef54eb4.
ну итам дальше описано
ps: криво вошло =( короч http://ru.wikipedia.org/wiki/MD5
 
Ответить с цитированием