Какую информацию учетной записи пользователя вы должны зашифровать, что кодировать и что оставить как есть?
Когда вы имеете дело с информацией об учетной записи, насколько безопасным должен быть каждый элемент данных?
Я собираюсь сделать три категории и перечислить пункты под ними, пожалуйста, скажите мне, если я прав / неправ:
Зашифровать: пароль
Кодировать: электронная почта, адрес, PayPal, Secret_answer,
Оставь как есть: все остальное
Django автоматически шифрует пароль или это хеширование? В чем разница между хешированием и шифрованием?
Я знаю, что кодирование не добавляет безопасности, но это лучше, чем хакер, просто смотрящий на информацию, верно? Например, если хакер действительно пытается расшифровать информацию, перевешивает ли время, потраченное на информирование пользователей о нарушении, беспокойство о кодировании информации?
Если я использую hashlib.sha1
, является sha1(sh1+sha1)
достаточно безопасно?
1 ответ
Кодировать не добавляет безопасности.
Шифрование пароля никогда не бывает хорошим, вы никогда не потеряете ключ или что-то в этом роде.
Вы должны хешировать пароль с помощью соли (просто найдите несколько вопросов об этом в stackru, и вы найдете хорошие моменты по этому поводу).
Электронная почта, адрес: возможно, зашифрованный, зависит от того, хотите ли вы, чтобы он был доступен для поиска в вашей базе данных
Paypal: что ты имеешь в виду под этим? просто письмо для входа в систему? зашифровать.
secret_answer похож на пароль, поэтому используйте тот же подход.
Редактировать: кодирование, запутывание, сохранение строки в обратном направлении, использование криптографии ROT-3 даже хуже, чем использование ни одного: ни с кем вы не знаете, что у вас нет безопасности, с помощью этих глупых "защит" вы обманете себя, что у вас есть безопасность, и будет расслабляться на других ценных бумагах.