Позвольте мне сначала объяснить, что я разработчик на стороне сервера Coldfusion, и я долгое время шифровал пароли для входа в систему.Нужно ли шифровать пароли перед их вставкой в базу данных?
Недавно я начал думать о точке хэширования или шифрования паролей, используя библиотеки, такие как bCrypt(). Хакеры часто используют SQL Injection для получения конфиденциальных данных, таких как данные банковского счета, номера номеров кредитных/дебетовых карт NI Numbers &. Я очень сомневаюсь, что хакеру придется беспокоиться о том, чтобы продавать пароли, учитывая, что единственный номер кредитной карты продается только в относительно небольшой сумме в настоящее время.
Итак, мой вопрос:
Есть ли на самом деле любая точка шифрования паролей для входа в первую очередь?
Конечно, это необходимо. Вы обязаны своим пользователям, чтобы, если ваша база данных скомпрометирована, их пароли не могут использоваться для других служб, чтобы получить к ним доступ. –
Но это предполагает, что пользователи используют одни и те же пароли для других учетных записей. Хакеры не собираются тратить время на вход в другие аккаунты. Они будут вводить SQL, пока они не найдут банковские реквизиты непосредственно в базе данных. –
На самом деле, я бы сказал, что не секрет шифровать пароли; шифрование подразумевает обратимость. Что ___is___ хорошая идея хеширует их, неоднократно, с достаточно большой случайной солью (которую вы также записываете). Количество циклов хеширования может быть довольно большим (например, 1024 или более). Есть много других вопросов по этой теме. См. Также [Шифрование/Хеширование обычного текстового пароля в базе данных] (https://stackoverflow.com/questions/287517 и [Разница между хэшированием пароля и его зашифровкой] (https://stackoverflow.com/questions/326699/) и это только из связанных вопросов. –