Как я могу использовать Sha512 в моей форме входа в систему? - PullRequest
0 голосов
/ 04 февраля 2012

Я положил security.yml

Acme\UserBundle\Entity\User: sha512

но я также изменил это?:

$this->salt = base_convert(sha1(uniqid(mt_rand(), true)), 16, 36);

с

$this->salt = base_convert(sha512(uniqid(mt_rand(), true)), 16, 36);

?


если у меня есть это security.yml:

Acme\UserBundle\Entity\User: sha512

и если яиметь это в user.php

$this->salt = base_convert(sha1(uniqid(mt_rand(), true)), 16, 36);

когда я войду в систему, вернитесь ко мне

Представленный пароль недействителен.

почему?

1 Ответ

5 голосов
/ 04 февраля 2012

Самым важным свойством соли является уникальность (или, по крайней мере, дубликаты, встречающиеся редко).Один из способов сделать это - генерировать это случайно.Вам, очевидно, нужна достаточная энтропия.128 бит - это много, поэтому нет причины иметь более длинную соль, чем эта.

Хэширование соли с помощью sha512 вообще не повышает безопасность.Это только раздувает соль.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...