Какой именно смысл SECRET_KEY
в Джанго? Я сделал несколько поисков в Google и проверил документы ( https://docs.djangoproject.com/en/dev/ref/settings/#secret-key ), но я искал более подробное объяснение этого, и почему это требуется.
Например, что могло произойти, если ключ был взломан / другие знали, что это было? Спасибо.
python
django
security
encryption
David542
источник
источник
Ответы:
Используется для изготовления хешей. Смотреть:
источник
SECRET_KEY
», а не «вашSALT
секретный ключ, который вы должны хранить при себе».SECRET_KEY
должны храниться в безопасности. ИспользованиеSECRET_KEY
гораздо более похоже на использование ключа в хеше со знаком, таком как HMAC (который, если бы производительность не учитывалась, вероятно, вместо этого использовался бы).Документация Django для криптографической подписи охватывает использование параметра 'SECRET_KEY':
(Этот раздел также упоминается в документации Django для настройки 'SECRET_KEY' .)
API криптографического подписывания в Django доступен для любого приложения для криптографически защищенных подписей значений. Сам Django использует это в различных высокоуровневых функциях:
Подписание сериализованных данных (например, документов JSON).
Уникальные токены для сеанса пользователя, запроса на сброс пароля, сообщений и т. Д.
Предотвращение межсайтовых или повторных атак путем добавления (а затем и ожидания) уникальных значений для запроса.
Генерация уникальной соли для хэш-функций.
Итак, общий ответ таков: в приложении Django есть много вещей, для которых требуется криптографическая подпись, и параметр SECRET_KEY - это ключ, используемый для них. Он должен иметь криптографически сильную энтропию (трудно угадать для компьютеров) и уникальную для всех экземпляров Django.
источник
SECRET_KEY
параметра?Согласно документации Django о
SECRET_KEY
:источник
SECRET_KEY
повернуть. +1