Foren / National / Russian / Идеи / Хранение паролей [добавлено в #966]

идея изменить алгоритм на SHA

Macik
#34660 12. Juni 2012, 03:43

Обратил внимание, как пароли пользователей храняться в БД и задумался... 

Это видимо еще с Seditio тянется.

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

В качестве примера взял базу паролей одного из своих сайтов - 3900 пользователей в базе. За сутки удалось расшифровать 2600 паролей (буквы/цифры длиной до 8 знаков).

Это говорит о том, что в случае несанкционированного доступа к БД может быть получен и расшифрован пароль пользователя (а учитывая, что у многих он одинаковый для разных сайтов / сервисов - то последствия могут быть далеко идущими). И даже если исключить стороннее проникновение в БД, то остается шанс «утечки» паролей, например если админ сайта не чист на руку.

Предложение заменить MD5 на SHA1 и обязательно добавить «соли».
типа  $passw_hash = sha1($user_id . sha1($user_password));

Как реализовать прозрачный апгрейд текущих систем пока идей нет. Надо помозговать.

https://github.com/macik
правильный хостинг — https://goo.gl/fjCa1F

Dieser Beitrag wurde von Macik (am 31. Oktober 2012, 14:46, vor 12 Jahre) bearbeitet