Я пытаюсь улучшить свой класс хэширования пароля для CMS, который я сейчас создаю в качестве личного проекта. Я изначально использовал md5 без соли, затем переключился на md5salt + md5, затем на sha1salt + sha1 и теперь перешел на sha512salt + sha512.
Я также думал о добавлении цикла итерации к процедуре хэширования. Мой вопрос в том, что … Я собираюсь полностью с этим справиться? Или я должен делать это в любом случае, так как это не очень дорогое время разработки. Я действительно намерен выпустить систему в конечном итоге и хочу, чтобы она была настолько масштабируемой, насколько это возможно, поэтому, я думаю, с помощью итерации это может замедлить процедуру входа в систему слишком сильно.
Я немного смущен, как остановить то, что у меня есть (sha512salt + sha512) или, возможно, вернуться к sha1 и использовать меньшую соль?
Есть ли у кого-нибудь опыт создания таких классов, а также, какая процедура хэширования была окончательно решена? Я слышал о bcrypt, но не смог найти примеры php.
Спасибо заранее, Дрю
Причина для хеша md5 – очевидно.
Причина для sha1 – потребовала большей безопасности, так как md5 – самый низкий из низких.
Причина для sha512 – я прочитал несколько вещей, предполагающих, что sha1 сломан и может быть признан слабым.
… Может быть, последний шаг был ненужным?
Кроме того, что такое принятый метод или генерирование случайной соли … просто простой 4-байтовый rand () Может ли преобразование этого 4-байтового хэша в ша-хэш вообще иметь какую-либо разницу?
благодаря
Весь этот звуковой комплекс; используя единую комбинацию соли + sha1, должно быть достаточно, я полагаю, с точки зрения безопасности.
Вот несколько вопросов / ответов, которые могли бы получить дополнительную информацию (в прошлом было довольно много вопросов о пароле, соле и хэшировании – некоторые из них могли бы вам помочь) :