1

На нашем сайте мы используем случайное GUIDs как соль для вычисления паролей пользователей:Является ли SHA1 безопасным для хэширования паролей при использовании с дополнительной 128-битной случайной солью?

SHA1("mysecretpassword" + "a7841254-838a-45a0-8427-145e1d92287d") 

Уникальной соль хранятся в базе данных для каждого хэша пароля.

Я знаю, что SHA1 не очень-то безопасен, но, учитывая, что мы добавляем к нему очень длинную случайную соль, я едва ли могу представить, что он может быть разбит грубой силой или радужными столами.

Итак, этот метод криптографически безопасен на данный момент для хранения хэшей паролей?

ответ

5

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

Из чисто криптографического POV, тоже соединяя соль с паролем, как это менее безопасно, чем с использованием надлежащего HMAC; для получения дополнительной информации см. Wikipedia HMAC article.

Не пытайтесь изобретать собственную систему хэширования паролей, есть много хороших, таких как scrypt и pbkdf2.