Для чего нужен md5 ()?

Я читал этот учебник для простой системы входа в систему PHP .

В конце он рекомендует вам зашифруйте свой пароль с помощью md5 () .

Хотя я знаю, что это учебное пособие для начинающих, и вы не должны ставить банковские выписки за этой системой входа, это заставило меня задуматься о шифровании.

Итак, я пошел дальше и пошел (один из самых полезных вопросов, которые этот сайт задает для новичков): чем хранить их в виде простого текста.

Больше об этом не сказано, никаких ссылок.

Так что я пошел дальше и попробовал сам:

$pass = "Trufa";
$enc = md5($pass);

echo $enc; #will echo 06cb51ce0a9893ec1d2dce07ba5ba710

И вот что заставило меня задуматься, хотя я знаю md5 () может быть не самым надежным способом шифрования, все, что всегда дает один и тот же результат, можно реконструировать.

Так в чем смысл шифрования чего-либо с помощью md5 () или любого другого метода?

Если хакер получает к паролю, зашифрованному с помощью md5 (), он просто использовал бы эту страницу! .

Итак, теперь актуальные вопросы:

  1. Как работает шифрование пароля?

Я знаю, что не обнаружил здесь огромная веб-уязвимость! :) Я просто хочу понять логику шифрования паролей.

Я уверен, что понимаю что-то не так, и был бы признателен, если бы вы помогли мне настроить мои мысли и другие s (я надеюсь) прямо.

Как бы вы могли применить шифрование паролей, чтобы оно действительно было полезным?

  1. А как насчет этой идеи?

Как я уже сказал, я могу / понимаю всю идею неправильно, но добавит ли этот метод какую-либо безопасность в реальную среду?

$reenc = array(
 "h38an",
 "n28nu",
 "fw08d"
 );

$pass = "Trufa";

$enc = chunk_split(md5($pass),5,$reenc[mt_rand(0,count($reenc)-1)]);

echo $enc;

Как вы видите, я случайным образом добавил произвольные строки ( $ reenc = array () ) к моему паролю md5 (), "сделав это уникальный ». Это, конечно, просто глупый пример.

Я могу ошибаться, но, если вы не «засеваете шифрование самостоятельно», это всегда будет легко обратимо.

Вышесказанное было моей идеей «защиты паролем» и зашифрованного пароля. Если хакер доберется до него, он не сможет его расшифровать, пока не получит доступ к необработанному .php.

Я знаю, что это может даже не сделать смысл, но я не могу понять, почему это плохая идея!


Надеюсь, я достаточно ясно выразился, но это очень длинный вопрос, поэтому просьба уточнить любые необходимые разъяснения!

Заранее спасибо !!

50
задан Community 23 May 2017 в 02:17
поделиться