С shadow>= 4.14.0, алгоритм хэширования паролей Arch Linux по умолчанию изменен с SHA512 на yescrypt [1].
Кроме того, настройки umask [2] теперь настроены в /etc/login.defs вместо того , чтобы /etc/profile.
Это не должно требовать какого-либо ручного вмешательства.
Причины Yescrypt
Функция получения ключа на основе пароля (KDF) и схема хэширования пароля yescrypt были выбраны из-за их внедрения (легко доступного в libxcrypt , который используется pam [3]) и его большей устойчивости к попыткам взлома пароля чем SHA512.
Хотя победителем конкурса по хэшированию паролей [4] стал argon2 , этот еще более устойчивый алгоритм пока недоступен в libxcrypt [5][6].
Настройка yescrypt
В YESCRYPT_COST_FACTOR установка в /etc/login.defs в настоящее время не действует, пока pam не выполнит считывание его значения [7]. Если YESCRYPT_COST_FACTOR выше (или ниже), чем необходимое значение по умолчанию ( 5), его можно установить с помощью опции rounds модуля pam_unix [8] (т.е. в /etc/pam.d/system-auth).
Общий список изменений
yescrypt используется в качестве алгоритма хэширования паролей по умолчанию вместо SHA512
pam учитывает выбранный ENCRYPT_METHOD в /etc/login.defs и больше не переопределяет выбранный метод
изменения в пакетах filesystem (>= 2023.09.18) и pambase (>= 20230918) гарантируют, что umask устанавливается централизованно в /etc/login.defs вместо того , чтобы быть в /etc/profile
vall:С shadow>= 4.14.0, алгоритм хэширования паролей Arch Linux по умолчанию изменен с SHA512 на yescrypt [1].
... Это не должно требовать какого-либо ручного вмешательства.
Тогда, насколько понимаю, пока не сменишь пароль то в /etc/shadow старые пароли будут хранится с sha512, а новые пароли уже будут хэшироватся с yescrypt.
Хотя смысла перехода на yescrypt не вижу … все-равно имея физический доступ к компу можно зайти как root, сгениривав свой пароль, а при выходе удалить его ... то есть для спецов разницы нет.
vasek:
все-равно имея физический доступ к компу можно зайти как root, сгениривав свой пароль, а при выходе удалить его ... то есть для спецов разницы нет.
Если система в LUKS просто так никто, ничего не сменит.
Arch Linux x86-64 на BTRFS
https://t.me/arch_linuxru
Уже все работает автоматом ... но, как и писал, только при создании нового пароля.
Смотрим что используется
grep '^ENCRYPT_METHOD' /etc/login.defs
ENCRYPT_METHOD YESCRYPT
Проверил (перед этим скопировал /etc/shadow в другое место) - сменил пароль ... в shadow уже появился yescrypt
Вернул на место … (будете экспериментировать, не забываем reboot)
shadow string, в части кэша пароля, в общем случае имеет 4 части: $id$param$salt$hash
- id - идентификатор схемы хеширования (отображает алгоритм)
- param - параметры сложности
- salt - соль
- hash - результат хеширования пароля и соли
Смотрим, какой id имеем для root sudo cat /etc/shadow | grep root | cut -c 6-8
$6$
id=6 --- это старый алгоритм, sha-512
Если был бы новый, yescrypt, то имели бы $y$
Уточнение - кэш пароля для sha-512 в нашем случае имеет вид $6$salt$hash, а для yescrypt - $y$j9T$hash , где j9T=param