Это победит цель хранения хешированного пароля.
Я уверен, что вы знаете, но на всякий случай идея хеширования довольно проста - вы найдете функцию, которую легко вычислить в одном направлении, но невероятно сложно вычислить в другом направлении. Давайте назовем эту функцию hash
.
Теперь, когда вы впервые создадите свой пароль, скажем, что hunter2
система запустит hash('hunter2')
и сохранит результат в теневом файле.
Затем, когда вы входите в систему, вы утверждаете, что ваш пароль - hunter4
и система проверяет это, сравнивая hash('hunter4')
со значением, хранящимся в теневом файле. Если хэши равны, система позволит вам войти в систему, а если нет, система откажет вам.
Преимущество этого состоит в том, что даже если кому-то удастся получить доступ к вашему теневому файлу, он все равно не будет знать ваш пароль и не сможет войти в систему как вы, потому что, хотя он знает хеш, определить пароль, который был создан, невероятно сложно. этот хеш
Короче говоря, никакого хэша, хранящегося в /etc/shadow
, нет и его нельзя использовать в качестве замены пароля пользователя.