[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Безопасноть аккаунтов(пароли)
Страницы: 1, 2, 3
N0ob
Цитата
один из основных принципов защиты - нельзя верить никому

Это уже дело юзера wink.gif
Invis1ble
Цитата (N0ob @ 10.05.2013 - 17:14)
Цитата
один из основных принципов защиты - нельзя верить никому

Это уже дело юзера wink.gif

это относится ко всем, а не только к юзерам. С опытом может быть поймешь.

_____________

Профессиональная разработка на заказ

Я на GitHub | второй профиль

twin
Цитата (inpost @ 10.05.2013 - 09:18)
twin
http://php.net/manual/ru/function.md5.php
Самое последнее примечание.

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

Там написано:
Цитата
В связи с быстрой природой хэширующего алгоритма не рекомендуется использовать эту функцию для обеспечения безопасности паролей.
Имеется ввиду одну только эту функцию.

Вобщем вот еще раз пропиарюсь, раз такое дело. А то в соседней ветке postgree с mysqli сравнивают, тут md5 обижают smile.gif

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

Нужно уважать мнение оппонета. Ведь заблуждаться - его святое право.

Настаивал, настаиваю и буду настаивать на своем. На кедровых орешках.

user posted image
inpost
Заголовок первый:
Почему популярные хэширующие функции, такие как md5() и sha1() не подходят для паролей?

Заголовок второй:
Если популярные хэширующие функции не подходят, как же я тогда должен хэшировать свои пароли?

Ну а ты в своём репертуаре, омрачить мой коммент.

_____________
Обучаю веб-программированию качественно и не дорого: http://school-php.com
Фрилансер, принимаю заказы: PHP, JS, AS (видео-чаты). Писать в ЛС (Личные сообщения на phpforum).
twin
Честно говоря ничего не понял я из этого спича. И где я омрачил - тоже не понял.

Ты написал:
Цитата
Почему md5, а не другой hash, как рекомендуют PHP разработчики?

Я засомневался и уточнил:
Цитата
Можно взглянуть на рекомендции? Я что-то упустил наверно. А какой другой?

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

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

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

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

Нужно уважать мнение оппонета. Ведь заблуждаться - его святое право.

Настаивал, настаиваю и буду настаивать на своем. На кедровых орешках.

user posted image
inpost
twin
А при чём тут алгоритмы? Читай внимательно, что ТС написал:
"Делается следюущим образом - md5($pass.$salt)"
В ответ я написал, что эту строчку надо исправить. Пусть будет crypt методом md5! Но crypt, а не функция.

В итоге:
"На лицо недопонимание тобой разницы между алгоритмами хэширования и функциями.", так как тут обсуждали функции.

"в чистом виде" сам придумал?

_____________
Обучаю веб-программированию качественно и не дорого: http://school-php.com
Фрилансер, принимаю заказы: PHP, JS, AS (видео-чаты). Писать в ЛС (Личные сообщения на phpforum).
twin
Цитата (inpost @ 10.05.2013 - 20:52)
twin
А при чём тут алгоритмы? Читай внимательно, что ТС написал:
"Делается следюущим образом - md5($pass.$salt)"
В ответ я написал, что эту строчку надо исправить. Пусть будет crypt методом md5! Но crypt, а не функция.

В итоге:
"На лицо недопонимание тобой разницы между алгоритмами хэширования и функциями.", так как тут обсуждали функции.

"в чистом виде" сам придумал?

Как это причем алгоритмы? Ты рельно считаешь, что результаты вычисления MD5 хэша функциями crypt() и md5() будут разными???

О чем мы вообще говорим тогда.

Мануал советует использовать соль, это да. Так о том и речь. А какую функцию при этом юзать, дело десятое. Главное не использовать алгоритм md5 (да и любой другой) в чистом виде, ибо при современном быстродействии очень велика возможность брутфорса.

С какого перепуга нужно "исправлять строчку"? Зачем менять функцию то? Это называется "слышал звон, да не понял, где он".

И да, выражение "в чистом виде" я сам придумал. Именно так, нежелтельно использовать функции в чистом виде. Желательно с солью.

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

Нужно уважать мнение оппонета. Ведь заблуждаться - его святое право.

Настаивал, настаиваю и буду настаивать на своем. На кедровых орешках.

user posted image
Rand
Цитата (twin @ 11.05.2013 - 09:44)
Ты рельно считаешь, что результаты вычисления MD5 хэша функциями crypt() и md5() будут разными???

На сколько я понимаю, crypt может использовать md5(или другой алгоритм) только на одном из своих этапов хеширования, результирующий хеш будет другим. Однако, единственное преимущество crypt которое я вижу - это его медлительность, от rainbow таблиц защитит и обычный md5(md5($pass) . $salt). Естественно, соль в базе хранить не следует, т.к. если хацкер получит доступ к базе с солью - первое, что он будет делать (перед брутфорсом), это искать способ хеширования, основываясь на сопоставлении пароля своего аккаунта и хеша из базы. Т.е. будет перебирать стандартные варинаты - md5($pass) . $salt, md5(md5($pass . $salt)) и т.д.
DedMorozzz
Ты всё это продолжаешь, я же тебе сразу ответил. Ты сам дал ссылку и там было указано, что мд5 не следует использовать, потому что он быстро очень генерируется. И как следствие можно быстро подобрать коллизию.
Для защиты - используйте соль. Если есть соль, то хоть за секунду будут обработаны все возможные коллизии - пароля не узнаешь, не зная соли.
Ниужели ты действительно не до конца понял этот момент?
Если хочешь проведём эксперемент. Я создам хеш по алгоритму md5(pass.salt), и дам тебе его - определи пароль(коллизию пароля)

_____________
Если не говорить пользователям, что Linux это "Сложно и страшно", то им совершенно всё равно, в чём не разбираться
DedMorozzz
Цитата
Естественно, соль в базе хранить не следует, т.к. если хацкер получит доступ к базе с солью
А как он узнает что есть соль?
поле с надписью "Соль здесь! Все сюда!"? Так?
Вот обсуждалось http://phpforum.ru/index.php?showtopic=74004&st=15

_____________
Если не говорить пользователям, что Linux это "Сложно и страшно", то им совершенно всё равно, в чём не разбираться
twin
Причем тут скорость? Или это настоятельная рекомендация тому, кто будет брутить?

Ты, мол, не используй функцию md5(), она уж больно шустрая. Нечестно. Нужно использовать медленную!

Кстати, функция hash() к примеру быстрее md5().

DedMorozzz прав на все 100 еще в первом посту. Нужно усложнить алгоритм хэширования и все. Этого достаточно. А какой функцией достичь желаемого - дело совершенно десятое.


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

Нужно уважать мнение оппонета. Ведь заблуждаться - его святое право.

Настаивал, настаиваю и буду настаивать на своем. На кедровых орешках.

user posted image
Rand
DedMorozzz
Я про тот момент, что некоторые хранят в базе хеш (сгенерированный вместе с солью) в одном поле, а соль (случайные символы) - в отдельном поле с названием salt biggrin.gif Я и говорю, что так делать не следует =)
Да, и ещё добавлю, если способ хеширования будет найден, а сбрутить не получится, при sql-injection можно будет просто заменить хеш своим. Так, что уважаемые новички - фильтруйте входные параметры или юзайте prepared statements ))
Rand
twin
Цитата (twin @ 11.05.2013 - 13:27)
Причем тут скорость?

Как это причем? Вычислительная сложность это один из постулатов криптостойкости
twin
Rand
Ты сам себя слышишь?)))

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

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

Нужно уважать мнение оппонета. Ведь заблуждаться - его святое право.

Настаивал, настаиваю и буду настаивать на своем. На кедровых орешках.

user posted image
DedMorozzz
Цитата

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

Тут как раз всё просто. надо подобрать такой же хеш как и имеем. Для этого надо генерить хеши. Чем быстрее это делается, тем быстрее подберём
Но снова таки, всё упирается в соль

_____________
Если не говорить пользователям, что Linux это "Сложно и страшно", то им совершенно всё равно, в чём не разбираться
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.