Имя пользователя, Пароль, Соление, Шифрование, Хэш - Как все это работает? [Дубликат]
Возможный дубликат:
Безопасный хэш и соль для паролей PHP
Я читал много постов, как в stackoverflow, так и на других сайтах, рассказывающих о веб-безопасности. Такие как солёное шифрование и т. Д. И я вроде не понимаю, так что простое объяснение было бы очень полезно.
Итак, вот что я знаю до сих пор. Пользователь входит в систему вводит свое имя пользователя и пароль. Ввод затем проходит через процесс. Допустим, имя пользователя и пароль объединены, например:
$username = (USERS USERNAME INPUT);
$password = (USERS PASSWORD INPUT);
$userinput = $username . $password;
Затем мы добавляем немного соли.
$salt1 = "13$13aVc!kd";
$salt2 = "4kr$!vlmeoc";
$salted = $salt1 . $userinput . $salt2;
Затем мы зашифровываем это.
$encrypted = encrypt($salted);
Затем проверьте базу данных и войдет ли ее правильный пользователь.
Вот как это работает правильно? Но я читал о грубой атаке. Это угадывает входные значения правильно? С процедурой выше. Разве это не показывает, что злоумышленнику нужно только правильно получить информацию о $ userinput? Ему не нужно угадывать длинную $ зашифрованную строку правильно?
Примечание. Допустим, в этой ситуации нет ни капчи, ни ограничения количества попыток, ни блокировки, ничего, кроме приведенного выше.
Примечание: будь осторожен, я все еще учусь.