Общие сведения: ваша соль должна быть безопасным случайным, уникальным значением, превышающим 128 бит (например, / dev / urandom).Это должно быть сохранено в виде простого текста в отдельной таблице, чтобы его можно было использовать при проверке хеша.Он не должен быть доступен для просмотра клиенту.
Общая идея заключается в том, что вы хэшируете пароль пользователя и соль вместе и сохраняете это значение. Например:
SHA512(password || salt)
где password
- это пароль пользователя, salt
- это случайно сгенерированное уникальное значение, а ||
- это конкатенация.
Затем, когда пользователь возвращается, вы повторяете процесс с предоставленным паролем и сравниваете его с сохраненным хешем:подтвердить личность пользователя.Если вы выполните быстрый поиск в Google, вы найдете больше информации о солях и их назначении.
Редактировать: Это неверно в отношении токена MVC для защиты от подделки (см. Ответ Леви),и прочитайте этот блог .Притворяться, что соль - это уникальное имя формы или идентификатор формы (и для начала она не помечена или названа солью)