Создание солей из других пользовательских полей - PullRequest
2 голосов
/ 11 декабря 2011

Прямо сейчас у меня есть столбец "соль" и столбец "пароль" в базе данных (таблица пользователя), оба varchar (64) и принять хэши sha-256 в качестве значений.это хорошая идея, чтобы исключить столбец соли и использовать адрес электронной почты пользователя для создания соли во время проверки пароля?Это позволит сэкономить место в базе данных.

Ответы [ 3 ]

5 голосов
/ 11 декабря 2011

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

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

2 голосов
/ 11 декабря 2011

См. этот ответ , почему вы должны использовать random соль для каждого пароля создание .

2 голосов
/ 11 декабря 2011

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

...