Поиск  Пользователи  Правила 
Закрыть
Логин:
Пароль:
Забыли свой пароль?
Войти
 
Страницы: 1
RSS
MD5 ?
 
Неужели(мало того, что алгоритм шифрования необратим)результат не однозначен???

============================================
Пересено из Программирования в Криптографию
============================================
 
не понял вашего вопроса.
что значит не однозначен?

так, начинаем перечислять и исправлять допущенные вами в одном предложении ошиПки:

MD5, как и следует из название не алгоритм шифрования, а "Message-Digest Algorithm" см. одноимённый RFC 1321.
Т.е. необратимая свёртка.

Применяются подобные алгоритмы для контроля целостности сообщения: digest = MD5(message)

Результат digest всегда является однозначной функией от message, т.е. зависит только от message, и ни от чего более. В этом плане он однозначен.

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

Соответственно, нормальна ситуация, когда разным message, соответствует один digest, т.е. :
MD5(message0) = MD5(message1) = MD5(message2) = ...

Это называется коллизиями.

Соответственно, если вы ставите себе задачу, найти по digest оригинальное message0 (т.е. обратить алгоритм), то очевидно, что вы можете найти другое messageX.
В таком случае вам нужно искать message, такое что не только digest = MD5(messageX), но и выполняющее ряд других ограничений, уже не имеющих отношения собственно к MD5.
Например - начинаться с определённых символов, быть опр. длины, не содержать опр. символом и т.п.
Страницы: 1
Читают тему