Я создаю веб-приложение и хотел бы использовать самый сильный алгоритм хэширования, который можно использовать для паролей. Каковы различия, если таковые имеются, между sha512, whirlpool, ripemd160 и tiger192,4? Какой из них можно считать криптографически более сильным?Каков самый сильный алгоритм хеширования, доступный сегодня?
ответ
Bcrypt - Почему бы очень длинное объяснение, для чего я рекомендую Enough With The Rainbow Tables: What You Need To Know About Secure Password Schemes
В принципе, это безопасно, это медленно, это уже реализовано.
Вот хороший post on coding horror about storing passwords. Короче говоря, он предлагает bcrypt или SHA-2 со случайной уникальной солью.
Дэвид, все это сильные функции. Даже многозадачные столкновения MD5 не относятся к разнообразию паролей, они просто генерируют две разные строки с одним и тем же MD5 (совсем другое предложение от поиска строки, которая генерирует заданное значение MD5).
Если вас беспокоит безопасность паролей, вам нужно беспокоиться о протоколах, используемых для их хранения, о протоколах, используемых для восстановления забытых пользователями паролей, а также обо всех возможных возможных атак. Эти варианты используются гораздо чаще, чтобы взломать пароли, чем crtyptanalysis грубой силы.
Однако пользуйтесь солью.
Но сначала прочитать статью AviewAnew отправил
Если вы действительно беспокоитесь о безопасности вашей системы (в отличие от вполне академическую силы алгоритмов), то вы должны пойти с проверенной и зрелой реализацией вместо придирок алгоритмы.
Я бы порекомендовал Ulrich Drepper's SHA-crypt implementation. Эта реализация использует SHA-512, соль с 16 символами, проверена экспертом и запланирована для включения во все основные дистрибутивы Linux через glibc 2.7.
P.S .: После того, как вы достигли такого уровня безопасности, вы будете посетил black helicopters в любом случае.
- 1. Какой алгоритм хеширования обеспечивает самый длинный выход?
- 2. gevent и сильный метод пароля хеширования
- 3. org.apache.poi.EncryptedDocumentException: неподдерживаемый алгоритм хеширования
- 4. алгоритм хеширования для строк
- 5. Какой дешевый алгоритм хеширования?
- 6. Каков самый сильный метод шифрования с открытым ключом?
- 7. Каков самый простой (и правильный) алгоритм экранирования?
- 8. Каков самый простой алгоритм разложения кривой прямыми?
- 9. другой алгоритм хеширования для контроллеров
- 10. Алгоритм быстрой хеширования для C#
- 11. Как ускорить мой алгоритм хеширования
- 12. Каков самый простой уникальный идентификатор, доступный в .Net?
- 13. Самый быстрый способ хеширования набора GUID
- 14. Какой алгоритм хеширования я должен использовать?
- 15. Определить алгоритм хеширования SSL с помощью Python
- 16. Какая функция PHP использует такой алгоритм хеширования?
- 17. Murmur3 Алгоритм хеширования, используемый в Cassandra
- 18. Неверный формат пароля или неизвестный алгоритм хеширования
- 19. Разный алгоритм хеширования для провайдера членства ASP.NET?
- 20. Самый сильный шифр, который можно использовать с C/C++?
- 21. Каков самый быстрый алгоритм для пересечения двух отсортированных списков?
- 22. Каков самый быстрый алгоритм для вычисления всех факторов целого числа?
- 23. Каков самый быстрый алгоритм в сопоставлении с образцом ДНК
- 24. Каков самый быстрый алгоритм сортировки для небольшого числа целых чисел?
- 25. Каков самый быстрый алгоритм выбора максимального количества голосов в массиве?
- 26. Каков самый быстрый алгоритм для умножения двух n-значных чисел?
- 27. Каков самый быстрый алгоритм разделения сумасшедших больших целых чисел?
- 28. самый быстрый алгоритм ближайшего соседа
- 29. Каков алгоритм сна()?
- 30. Каков наилучший алгоритм умножения матрицы?
Определите, что вы подразумеваете под «самым сильным». – dacracot 2008-10-08 18:19:02
Обычно я думаю о ресурсах, необходимых для поиска входных данных, хешей, для данного значения. – erickson 2008-10-08 18:32:26