мд5

Тема в разделе "PHP", создана пользователем sultan347, 26 янв 2010.

Статус темы:
Закрыта.
Модераторы: latteo
  1. sultan347

    sultan347

    Регистр.:
    25 апр 2009
    Сообщения:
    230
    Симпатии:
    7
    насколько длинную строку md5 может хешировать (не может же он целую книгу в 32 символа спрятать)?
     
  2. adrock

    adrock Создатель

    Регистр.:
    3 фев 2009
    Сообщения:
    20
    Симпатии:
    0
    Это контрольная сумма а не метод архивации, ты не правильно понял суть
     
  3. sultan347

    sultan347

    Регистр.:
    25 апр 2009
    Сообщения:
    230
    Симпатии:
    7
    ясно. То есть ему безразницы, насколько длинный входящий массив. Тогда же различные входящие после мд5 могут быть идентичны... Теоретически.
     
  4. Mongolor

    Mongolor

    Регистр.:
    5 дек 2007
    Сообщения:
    157
    Симпатии:
    29
    теоретически(очень строгие условия и т.д.) да, практически нет.
     
  5. saxel

    saxel Постоялец

    Регистр.:
    4 дек 2007
    Сообщения:
    118
    Симпатии:
    23
    чтобы немного понять алгоритм и саму теорию МД5() - почитайте:
    http://ru.wikipedia.org/wiki/MD5
     
  6. potuga

    potuga

    Регистр.:
    22 сен 2009
    Сообщения:
    376
    Симпатии:
    91
    практически как раз таки и могут. Подумайте сами, если большие объемы информации представляются в 128 битах, то определенно возникнут коллизии. Дело не в том, что они есть, а в том, что такие коллизии довольно трудно подобрать (до некоторого времени считалось невозможным для алгоритма md5).

    абсолютно любую. Длина входных данных ничем не ограничена, т.к. данные не нужно держать постоянно в памяти. Алгоритму по ходу выполнения подсовывается по одному символу, который далее в алгоритме не используется. А это значит, что, напрмер, можно читать с диска только один символ и хранить в памяти только последний прочитанный символ.
     
  7. Mongolor

    Mongolor

    Регистр.:
    5 дек 2007
    Сообщения:
    157
    Симпатии:
    29
    Это возможно, но вероятность попадания критически мала, если специально не искать коллизии, да даже если специально искать, то тоже времени можно потратить очень много :) Поэтому можно смело округлять результат и смело говорить, что на практике совпадения невозможны :)
     
  8. got4a

    got4a Создатель

    Регистр.:
    8 сен 2007
    Сообщения:
    45
    Симпатии:
    2
    В 2005 году исследователи Ван Сяоюнь и Юй Хунбо из университета Шаньдун в Китае, опубликовали алгоритм для поиска коллизий в хеш-функции MD5, причём их метод работает для любого инициализирующего вектора, а не только для вектора, используемого по стандарту. Применение этого метода к MD4 позволяет найти коллизию меньше чем за секунду.
    В 2008 году Сотиров Александр, Марк Стивенс (Marc Stevens), Якоб Аппельбаум (Jacob Appelbaum) опубликовали на конференции 25th Chaos Communication Congress статью, в которой показали возможность генерирования поддельных цифровых сертификатов, на основе использования коллизий MD5.
    (ист:Перейти по ссылке)

    Вероятнсть-то мала, но всеже есть.
     
  9. Ash1

    Ash1 Создатель

    Регистр.:
    14 дек 2007
    Сообщения:
    20
    Симпатии:
    2
    Вероятность есть. С коллизией в CRC32 лично столкнулся когда-то. Лучше использовать SHA-1, если есть возможность выбора MD5 / SHA1
     
  10. designf

    designf Постоялец

    Регистр.:
    24 май 2009
    Сообщения:
    105
    Симпатии:
    16
    До недавнего времени считал, что если есть md5 пароль в базе, то его расшифровать невозможно. Т.е. например, кто-нибудь через инекцию залез и смог прочитать логин и пароль, то это крышка оказывается. Есть сервисы - ввел - получил пароль.

    Так как-же шифровать пароль и его потом проверять.

    Есть ссылки? И как быть когда в базе уже 10000 юзеров с md5.

    Ясно дело, что если недопускать инекций то можно не особо переживать. А все-таки. ДЛЕ ведь тряхонуло.
     
Статус темы:
Закрыта.