Является ли излишним шифрование уже хешированного пароля BCrypt? - PullRequest
0 голосов
/ 13 октября 2018

Я использую BCrypt для хэширования моих паролей на стороне сервера.Прежде чем я сохраню его в своей базе данных MySQL, будет ли излишним шифрование моего пароля hash-BCrypt или достаточно будет хранить хэш непосредственно в базе данных?

Этот веб-сайт рекомендует шифровать пароли послеих хеширование:

Пока злоумышленник может использовать хеш для проверки правильности или неправильности предположения о пароле, он может выполнить словарную или грубую атаку на хеш.Следующим шагом является добавление секретного ключа в хеш, чтобы только тот, кто знает ключ, мог использовать хеш для проверки пароля.Это может быть достигнуто двумя способами.Либо хеш может быть зашифрован с использованием шифра, такого как AES, либо секретный ключ может быть включен в хеш с использованием алгоритма хеширования с ключом, такого как HMAC.

РЕДАКТИРОВАТЬ: Я кодирую в Java.Я пытаюсь оценить, стоит ли добавленный уровень защиты от скорости выполнения операций чтения и поиска паролей для пользовательских логинов или нет.

1 Ответ

0 голосов
/ 13 октября 2018

Это действительно повысит безопасность, но полезно знать, что именно вы получаете с помощью шифрования.

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

Эта ситуация не так уж редка, как можно подуматьТипичными сценариями могут быть SQL-инъекция, выбрасывание резервных копий, удаленные серверы ...

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

Crackstation - хороший сайт для советов.В конце моего собственного урока о безопасном хранении пароля я пытаюсь объяснить детали этого хеш-шифрования пароля.

...