Я пытаюсь лучше понять Хеширование и Шифрование, однако наткнулся на вопросы, которые, похоже, не могу найти в Google, потому что Google продолжает предлагать принципиальную разницу Хеширования и Шифрования, которую я уже прочитал.
Более того, многие люди спрашивают в StackOverflow, которые не имеют ни малейшего представления о разнице между шифрованием и хешированием, и достигают вершины поисковой системы SO.Который не отвечает на мои вопросы, и не помог мне.Итак, я хотел убедиться в хэшировании пароля и его шифровании.
Теперь предположим, что я хочу защитить нового зарегистрированного пользователя ..
- Мне нужно сначала отфильтровать. (Пропущено из-за несвязанных)
После того, как я получу «безопасную» форму пароля, я хэширую ее.
$safePassword; // Already filled with safe password.
$hash = password_hash($safePassword,PASSWORD_ARGON2I);
Затем вставьте его в базу данных.
Теперь здесь возникают вопросы.
Нужно ли мне шифровать хешированный пароль?
Если это так, как мне безопасно зашифровать пароль?(Я собираюсь использовать AES)
AES_ENCRYPT(str, key_str);
Где str
- это строка, которую мы хотели зашифровать, а key_str
- это ключ шифрования.
Еще один вопрос возникает
Как сохранить
key_str
в безопасности, чтобы я мог использовать его для дальнейшего использования (для аутентификации)?