Модераторы: skyboy, MoLeX, Aliance, ksnk

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Так ли хорош md5? 
V
    Опции темы
Muerto
Дата 11.5.2011, 10:58 (ссылка)    | (голосов:4) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1207
Регистрация: 23.9.2006

Репутация: 3
Всего: 4



После пару лекций в универе по структурам данных, я вот подумал а ведь md5 hash не уникален всегда...
Ибо вариантов текста очень очень много, а букв для хэша всего то 32  smile 

Таки посмотрел в википедии что об этом говорят

http://en.wikipedia.org/wiki/MD5

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

В тот час как SHA-2 похоже лучше http://en.wikipedia.org/wiki/SHA-2

Но тож не панацея пока есть ограниченное количество символов  smile  

---

Я бы не спал спокойно использовав md5 для хеширования чувствительных данных


--------------------
user posted image
PM MAIL   Вверх
Gold Dragon
Дата 11.5.2011, 11:11 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Призрачный
****


Профиль
Группа: Экс. модератор
Сообщений: 6753
Регистрация: 1.3.2004
Где: Россия, Тамбов

Репутация: 10
Всего: 71



вообще-то рекомендуют применять MD5 с "мусором" smile

Но с другой стороны, есть целые сервера со словарём порядка 160 млн паролей.. Так что основной взлом - это перебор паролей. Просто внимательно нужно относится к требования к паролям


--------------------
Нельзя жить в прошлом, оно уже прошло.
Нельзя жить в будущем, оно ещё не наступило.
Нужно жить в настоящем, помня прошлое и думая о будущем!
PM MAIL WWW ICQ   Вверх
CruorVult
Дата 11.5.2011, 11:22 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 868
Регистрация: 24.9.2008
Где: г.Киев, Украина

Репутация: 9
Всего: 28



Цитата(Gold Dragon @  11.5.2011,  11:11 Найти цитируемый пост)
Но с другой стороны, есть целые сервера со словарём порядка 160 млн паролей.

двойной MD5 и про сервера можно забыть smile 
PM MAIL Skype   Вверх
Muerto
Дата 11.5.2011, 11:27 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1207
Регистрация: 23.9.2006

Репутация: 3
Всего: 4



CruorVult, А вы можете делать хоть миллион раз md5, все равно будет 32 символа, и хэш можно подделать совсем другими данными...

В википедии пример есть , причем оч короткий который дает один и тот же хэш


--------------------
user posted image
PM MAIL   Вверх
Gold Dragon
Дата 11.5.2011, 11:29 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Призрачный
****


Профиль
Группа: Экс. модератор
Сообщений: 6753
Регистрация: 1.3.2004
Где: Россия, Тамбов

Репутация: 10
Всего: 71



CruorVult, можно и так... А нужна ли такая безопасность для простых форумов или сайтов? Зачем увеличивать размеры базу данных о пользователей когда проще ужесточить требования к паролям и заставить пользователей их менять чаще

Добавлено через 48 секунд
Muerto, скорее всего имелось 32+32+64 символа smile

Добавлено через 1 минуту и 48 секунд
Цитата(Muerto @  11.5.2011,  12:27 Найти цитируемый пост)
В википедии пример есть , причем оч короткий который дает один и тот же хэш 
для поиска коллизий всё равно нужны словари.. 



--------------------
Нельзя жить в прошлом, оно уже прошло.
Нельзя жить в будущем, оно ещё не наступило.
Нужно жить в настоящем, помня прошлое и думая о будущем!
PM MAIL WWW ICQ   Вверх
Muerto
Дата 11.5.2011, 11:31 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1207
Регистрация: 23.9.2006

Репутация: 3
Всего: 4



md5 кстати это не только пароли... часто всякие там ssl проверяются по алгоритмам хеширования., но хэш вещь НЕ УНИКАЛЬНАЯ

---
А на тему подбора паролей -

Забыв о хаше - так ли просто подобрать пароль?

допустим пароль длинной 8 символов...

у нас в англо-фовите есть 26 букв умножим на два ибо есть английские крупные . и добавим цифры

и того 26*2+10=62

Теперь мы хотим создать пермутацию с повторениями

и того 62^8


После трех попыток любой нормальный сайт тупо посылает на перерыв на пол часа - а ещё умней генерировать новый пароль + посылать.

Но когда можно менять ай пи и работать с сотнями компами параллельно...

Это сообщение отредактировал(а) Muerto - 11.5.2011, 11:36


--------------------
user posted image
PM MAIL   Вверх
CruorVult
Дата 11.5.2011, 11:35 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 868
Регистрация: 24.9.2008
Где: г.Киев, Украина

Репутация: 9
Всего: 28



Цитата(Gold Dragon @  11.5.2011,  11:29 Найти цитируемый пост)
А нужна ли такая безопасность

я просто привел самый элементарный способ как обойти сервера вот и всё. На самом деле так практически никто не делает)

Добавлено @ 11:37
и вообще если аккаунт захотят взломать - то взломают независимо от того зашифрован ли пароль и как ;) это дело времени.

Это сообщение отредактировал(а) CruorVult - 11.5.2011, 11:38
PM MAIL Skype   Вверх
cutwater
Дата 11.5.2011, 11:41 (ссылка) |    (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 592
Регистрация: 24.6.2008

Репутация: 1
Всего: 10



Цитата(CruorVult @  11.5.2011,  10:22 Найти цитируемый пост)
двойной MD5 и про сервера можно забыть smile  

CruorVult, глупость. учить теорию.

Цитата(Muerto @  11.5.2011,  10:31 Найти цитируемый пост)
но хэш вещь НЕ УНИКАЛЬНАЯ

Muerto, Сюрприз да?

Учить теорию. о том что MD5 это 32 символа говорят только первокурсники и пхпшники.
Википедия не авторитетный источник в данном вопросе. Изучать стойкость хеш-функций к коллизиям первого и второго рода.
Прекращать преждевременную панику и нести чушь.

Для предотвращения использования rainbow table уже давно известен способ использовать hash(M || salt)

На последок прекратить делать велосипеды и если интересно разобраться в реализациях механизмов аутентификации в любом более менее нормальном движке (django.contrib.auth, etc.) и изучать криптографию.


--------------------
user posted image
PM MAIL   Вверх
cutwater
Дата 11.5.2011, 11:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 592
Регистрация: 24.6.2008

Репутация: 1
Всего: 10



[deleted]

Это сообщение отредактировал(а) cutwater - 11.5.2011, 11:41


--------------------
user posted image
PM MAIL   Вверх
Gold Dragon
Дата 11.5.2011, 11:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Призрачный
****


Профиль
Группа: Экс. модератор
Сообщений: 6753
Регистрация: 1.3.2004
Где: Россия, Тамбов

Репутация: 10
Всего: 71



Цитата(Muerto @  11.5.2011,  12:31 Найти цитируемый пост)
Забыв о хаше - так ли просто подобрать пароль?
допустим пароль длинной 8 символов...
у меня есть русский и английский словари (маленькие, всего по 30 мб).. Так вот перебор делается за очень короткое время при условии
- перестановки порядка
- удалении гласных/согласных
- использование транслита
- подстановки цифр в конец/начало
- перебор заглавных/строчных
- и т.п.

Т.ч. Просто если задаться целью.. Поэтому и говорю... важны требования к паролю...


--------------------
Нельзя жить в прошлом, оно уже прошло.
Нельзя жить в будущем, оно ещё не наступило.
Нужно жить в настоящем, помня прошлое и думая о будущем!
PM MAIL WWW ICQ   Вверх
Muerto
Дата 11.5.2011, 11:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1207
Регистрация: 23.9.2006

Репутация: 3
Всего: 4



CruorVult, Если после 3трех не верных попыток менять пароль... то статистически нужно будет 62^8 попыток...
сложно представить сколько нулей в таком числе... может легче будет представить (10^8)*(6^8)
грубо это 10^8 * 2M примерно
что выходит сотню миллионов раз миллион это ОЧЕНЬ ОЧЕНЬ ОЧЕНЬ много... потребуется много лет.... хз даж сколько лень считать дальше  smile 


--------------------
user posted image
PM MAIL   Вверх
cutwater
Дата 11.5.2011, 11:44 (ссылка) |    (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 592
Регистрация: 24.6.2008

Репутация: 1
Всего: 10



Muerto, Учить матчасть. Хеширование пароля не предотвратит от взлома грубой силой (имелся ввиду описываемый способ через интерфейс разумеется). Хеширование используется для того чтобы не хранить пароли в открытом виде в базе. Учите матчасть еще раз повторяю.

Это сообщение отредактировал(а) cutwater - 11.5.2011, 12:19


--------------------
user posted image
PM MAIL   Вверх
Muerto
Дата 11.5.2011, 11:46 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1207
Регистрация: 23.9.2006

Репутация: 3
Всего: 4



cutwater, А никто панику не поднимает, и чуши здесь нету не разу  smile 

Я цифры просто так привел что бы показать что тупо простой пароль 8 символов почти нереально взломать в разумных рамках.

А проблемы md5 идут далеко за рамки простого пароля, который никого особо не волнует

---

Часто слышу пустые слова вроде "у нас защита по md5" , чего это защищает не оч ясно 


In an attack on MD5 published in December 2008, a group of researchers used this technique to fake SSL certificate validity
(с) http://en.wikipedia.org/wiki/MD5

Это сообщение отредактировал(а) Muerto - 11.5.2011, 11:49


--------------------
user posted image
PM MAIL   Вверх
CruorVult
Дата 11.5.2011, 11:49 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 868
Регистрация: 24.9.2008
Где: г.Киев, Украина

Репутация: 9
Всего: 28



Цитата(Muerto @  11.5.2011,  11:42 Найти цитируемый пост)
CruorVult, Если после 3трех не верных попыток менять пароль

а кто говорит про 3 попытки? 
PM MAIL Skype   Вверх
Gold Dragon
Дата 11.5.2011, 11:50 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Призрачный
****


Профиль
Группа: Экс. модератор
Сообщений: 6753
Регистрация: 1.3.2004
Где: Россия, Тамбов

Репутация: 10
Всего: 71



Muerto, тогда вернись к началу... Для чего нужны хэш-функции? Только для сравнения данных. Если тебе нужно шифрование, то стоит воспользоваться другими системами

Добавлено через 4 минуты и 54 секунды
а вообще - это философский вопрос... 
Если человеку нужно быстро ездить, он использует машину, если ещё быстрее, то самолёт.. И тут тоже самое, MD5 хорош для своего и требовать от него сверхъестественное просто не серьёзно smile


--------------------
Нельзя жить в прошлом, оно уже прошло.
Нельзя жить в будущем, оно ещё не наступило.
Нужно жить в настоящем, помня прошлое и думая о будущем!
PM MAIL WWW ICQ   Вверх
ksnk
Дата 11.5.2011, 11:59 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


прохожий
****


Профиль
Группа: Комодератор
Сообщений: 6855
Регистрация: 13.4.2007
Где: СПб

Репутация: 96
Всего: 386



Цитата(Muerto @  11.5.2011,  11:31 Найти цитируемый пост)
А на тему подбора паролей -
...
После трех попыток любой нормальный сайт тупо посылает на перерыв на пол часа - а ещё умней генерировать новый пароль + посылать.


Нужно защититься от подбора пользовательского пароля с помощью перебора. Для этого достаточно сделать время, между попытками ввода пароля не менее 5-10 секунд. Юзер, который ошибся при вводе пароля этого не заметит, а робот, который будет долбить брутфорсом таблицу паролей - затормозится и его можно будет пытаться ловить и наказывать.







--------------------
Человеку свойственно ошибаться, программисту свойственно ошибаться профессионально ! user posted image
PM MAIL WWW Skype   Вверх
MoLeX
Дата 11.5.2011, 12:04 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Местный пингвин
****


Профиль
Группа: Модератор
Сообщений: 4076
Регистрация: 17.5.2007

Репутация: 46
Всего: 140



лучше использовать усложненную соль.

Код

md5("login\r\n_salt_\r\npassword");



--------------------
Amazing  smile 
PM MAIL WWW ICQ   Вверх
cutwater
Дата 11.5.2011, 12:15 (ссылка) |    (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 592
Регистрация: 24.6.2008

Репутация: 1
Всего: 10



Цитата(Muerto @  11.5.2011,  10:46 Найти цитируемый пост)
Я цифры просто так привел что бы показать что тупо простой пароль 8 символов почти нереально взломать в разумных рамках.


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

UPD: А еще если бы хоть немного были знакомы с теорией защиты информации, могли бы построить модель угроз. И попытка взлома путем подбора пароля через веб-интерфейс далеко не единственный способ для злоумышленника.

Добавлено @ 12:16
Цитата(MoLeX @  11.5.2011,  11:04 Найти цитируемый пост)
    
md5("login\r\n_salt_\r\npassword");


Вы говорите лучше. Расскажете чем лучше?
Salt более чем достаточно. Все остальное не существенно и никакого выигрыша не дает.

сложность
Hash( Login || Salt || Password)
равноценна
Hash( Salt || Password )

Это сообщение отредактировал(а) cutwater - 11.5.2011, 12:40


--------------------
user posted image
PM MAIL   Вверх
MoLeX
Дата 11.5.2011, 13:44 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Местный пингвин
****


Профиль
Группа: Модератор
Сообщений: 4076
Регистрация: 17.5.2007

Репутация: 46
Всего: 140



cutwater, допустим увели через уязвимость базу паролей. И пытаются подобрать. Как думаешь, сколько времени уйдет на каждый способ? И какой самый стойкий

Добавлено через 2 минуты и 8 секунд
долгое время в радужных таблицах отсутствовал перевод строки)


--------------------
Amazing  smile 
PM MAIL WWW ICQ   Вверх
cutwater
Дата 11.5.2011, 16:55 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 592
Регистрация: 24.6.2008

Репутация: 1
Всего: 10



Цитата(MoLeX @  11.5.2011,  12:44 Найти цитируемый пост)
cutwater, допустим увели через уязвимость базу паролей. И пытаются подобрать. Как думаешь, сколько времени уйдет на каждый способ? И какой самый стойкий


Разве что переводы строк. Я имел ввиду идею добавлять еще и login \ etc.

Оцените стойкость 

Hash( Password || Salt )
и
Hash( Password || Salt || Login (Yet another salt. YEAH!) )

Найдите разницу.


Это сообщение отредактировал(а) cutwater - 11.5.2011, 17:02


--------------------
user posted image
PM MAIL   Вверх
Muerto
Дата 11.5.2011, 17:23 (ссылка)    | (голосов:2) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1207
Регистрация: 23.9.2006

Репутация: 3
Всего: 4



Вообще в wikipedia речь шла к примеру о взломе ssl, пароль не особо интересная вещь.

А разница между password + salt или просто пароля, не столь существенна как мне кажется с точки зрения математически подсчетов...

допустим salt у вас 6 символов, пароль 16

и того на 100% подбор пароля нужно перебрать 62^16 символов, а с salt 62^22


И то и второе по большому счету возможно только теоретически

62^16 ~ (10^16)*(6^16) = 10000000000000000*2821109907456=28211099074560000000000000000

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

Это сообщение отредактировал(а) Muerto - 11.5.2011, 17:31


--------------------
user posted image
PM MAIL   Вверх
cutwater
Дата 11.5.2011, 18:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 592
Регистрация: 24.6.2008

Репутация: 1
Всего: 10



Цитата(Muerto @  11.5.2011,  16:23 Найти цитируемый пост)
и того на 100% подбор пароля нужно перебрать 62^16 символов, а с salt 62^22

Вы так ничего и не поняли, как то зачем нужен salt.
Отправляю еще раз читать учебник.

Цитата(Muerto @  11.5.2011,  16:23 Найти цитируемый пост)
нужно лучше алгоритм изучить ...

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



Это сообщение отредактировал(а) cutwater - 11.5.2011, 18:50


--------------------
user posted image
PM MAIL   Вверх
Страницы: (2) [Все] 1 2 
Ответ в темуСоздание новой темы Создание опроса
Правила форума "PHP"
Aliance
IZ@TOP
skyboy
SamDark
MoLeX

Новичкам:

  • PHP редакторы собираются и обсуждаются здесь
  • Электронные книги по PHP, документацию можно найти здесь
  • Интерпретатор PHP, полную документацию можно скачать на PHP.NET

Важно:

  • Не брезгуйте пользоваться тегами [code=php]КОД[/code] для повышения читабельности текста/кода.
  • Перед созданием новой темы воспользуйтесь поиском и загляните в FAQ
  • Действия модераторов можно обсудить здесь

Внимание:

  • Темы "ищу скрипт", "подскажите скрипт" и т.п. будут переноситься в форум "Web-технологии"
  • Темы с именами: "Срочно", "помогите", "не знаю как делать" будут УДАЛЯТЬСЯ

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, IZ@TOP, skyboy, SamDark, MoLeX, awers.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | PHP: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.1665 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.