Почему PHP crypt () добавляет соль к хешу?

Я собираюсь создать систему входа в систему и после прочтения руководства по php, когда вы передаете двухзначную соль в crypt () возвращает хеш-строку, а первые две цифры строки - это соль, которую вы использовали.

пример:

$salt = "kr";
echo crypt("mysecret",$salt); //returns "kreOI.F7eOQMY"

Моя первая мысль была, не поможет ли это кому-то, кто пытаетесь отменить ваш хеш?

Я нашел salt в википедии, где сказано:

В целях безопасности значение соли держится в секрете.

Итак, я не понимаю, почему тогда функция crypt должна возвращать все хеши с добавлением используемого значения соли?

Есть ли для этого причина? Должно ли это быть проблемой безопасности?

11
задан JD Isaacks 26 January 2011 в 17:22
поделиться