The passwd
Файл дійсно все ще має поле "пароль", що залишилося з перших днів, але все ще можна використовувати - наприклад, Linux має pwconv
і pwunconv
команди для об'єднання / розділення двох файлів. (Хоча це втратить додатково інформацію, яка також зберігається в shadow
файл, наприклад, час закінчення рахунку.)
Я не зовсім впевнений у часовій шкалі; проте, AFAIK, спочатку shadow
Файл був створений тому, що паролі взагалі не хешировались, тому паролі відкритого тексту мали бути захищені від прочитання простими смертними. ( Обмеження експорту на той час багато систем Unix не мали DES хешування паролів стало набагато пізніше.
(Пароль є хеш , не зашифровані; оскільки немає жодного прямого способу "зняти хеш" щось, система перевіряє пароль, перемішуючи його точно так само, і порівнюючи обидва хеша.)
Але навіть з хешованими паролями, додатковий рівень захисту залишається важливим. Не всі хеш-функції є достатньо сильними, щоб захистити короткий пароль - наприклад, однакова оригінальна DES-заснована "crypt ()" хеш-функція була сильною в той час, але вважається цілком слабкою в ці дні. (Деякі системи все ще використовують його!)
Linux crypt () тепер підтримує більшу різноманітність хеш-функцій, наприклад $1$
на основі SHA-1 або $5$
на базі SHA-256, але додали захист (солі, кратні раундів ) все ще не настільки хороші, як пізніші розробки PBKDF2 або bcrypt, і багато коротких хешей паролів все ще можуть бути зламані за короткий проміжок часу.
Аналогічно, Windows донині використовує a дуже слабка хеш-функція (лише один раунд MD4, без солі або будь-яких інших функцій безпеки). Він не може бути легко оновлений, оскільки старі протоколи мережної автентифікації Windows покладаються на нього, тому база даних повинна бути сильно захищена навіть від адміністраторів (щоб запобігти отриманню зловмисного програмного забезпечення).