Почему django использует «случайную» соль рядом с «одной» строкой соли?
Потому что, если бы у вас была одна соль, вы могли бы создать радужные таблицы для своей базы данных проще, чем когда есть случайные соли.
Если вы хотите сгенерировать радужные таблицы для расшифровки хешей django, вам нужно сгенерировать таблицы для каждой отдельной соли в базе данных.Создание радужных таблиц занимает очень много времени, это просто грубая сила или словарная атака.
Почему django хранит его в одном столбце с хэшем пароля?
Я не знаю, о чем вы конкретно спрашиваете, но, вероятно, есть 2 ответа.
- Он хранится, потому что кто-то спроектировал его таким образом.Это может быть на соляном поле, и это не имеет значения.
-При отправке пользователем пароля через форму django присоедините соль к строке, затем вычислите sha1 и проверьте, соответствует ли он указанному в db.