Какой самый безопасный метод хеширования? (PHP)

Я только что заметил, что у меня есть SHA512 в моей установке PHP. Является ли он более безопасным, чем SHA1? Является ли это самым безопасным методом хэширования (мне нужно для паролей, а не для проверки целостности файлов)?

В ответ на @Buddy скорость не является вашим другом при хешировании; тем медленнее, тем лучше. Если кто-то пытается перенаправить ваш пароль, алгоритм, который занимает много времени, будет означать, что взлома займет много времени.

Sha512 лучше .. Я также рекомендовал бы использовать соль

См. Также: Безопасный хэш и соль для паролей PHP

Я давно задал этот вопрос.

Ответ заключается в том, чтобы всегда использовать алгоритм, который был разработан для этого, и прошел тест времени.

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

md5, sha1, sha512 и т. д.: они сосут пароли. Сколько они сосут? Вы можете использовать шлемы средней длины в часах или даже секундах с помощью вашего ноутбука. И это нормально, они не предназначены для защиты паролей. Они все еще могут использоваться как криптографические примитивы, например: вы можете реализовать bcrypt с помощью md5.

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