Password
是否所有 Linux 發行版都使用相同的加密雜湊函式?
是否所有 Linux 發行版都使用相同的加密雜湊函式?
如果是,它是否與核心本身一起提供?
**編輯:-**我指的是主要用於儲存使用者登錄密碼的功能。
對你的問題不和不。
我會看一下該
crypt(3)
功能以獲取更多資訊。來自man crypt(3)
:GNU 擴展
該函式的 glibc2 版本具有以下附加功能。如果 salt 是一個字元串,以三個字元
$1$
開頭,後跟最多八個字元,並且可選地以 結尾$
,那麼 glibc crypt 函式不使用 DES 機器,而是使用基於 MD5 的算法,並輸出最多 34 個字節,即, 其中代表 salt 中最多 8 個字元,後跟從 set 中選擇的 22 個字節。整個密鑰在這裡很重要(而不僅僅是前 8 個字節)。$1$&*‹string›*$``*‹string›*``$1$``[a–zA–Z0–9./]
您可以檢查您的 pam 設置以查看您使用的是 MD5 還是 DES:
$ egrep "password.*pam_unix.so" /etc/pam.d/system-auth password sufficient pam_unix.so md5 shadow nis nullok try_first_pass use_authtok
您可以在此系統
/etc/shadow
文件中看到它也在使用 MD5:root:$1$<DELETED PASSWORD HASH>:14245:0:99999:7:::
您將在
/etc/shadow
每種散列類型中看到的程式碼:
- 1 美元 – MD5
- 2美元——河豚
- $2a - eksblowfish
- $ 5 - SHA-256
- $ 6 - SHA-512
在 Red Hat 發行版上,您可以使用
authconfig
命令更改它。$ sudo authconfig --passalgo=sha512 --update
參考