ubuntu 20.04 中默认的密码加密方式是什么

ubuntu 20.04 中默认的密码加密方式是什么

ubuntu 20.04 中使用的默认密码加密方法是什么?它与 18.04 LTS 有什么不同

答案1

Ubuntu 默认不加密任何东西。您必须使用特定工具来加密。例如,,,e4crypt。这些工具中的每一个可能都有默认加密,有些ssh支持gpg多种加密方法并允许您配置默认加密。

您可能注意到上面没有列出密码。这是因为 Ubuntu 不加密密码,而且没有安全系统会加密密码,因为加密旨在逆转并且通常很快,这允许在短时间内多次猜测密码。密码以有损不可逆的方式进行散列,这种方式在加密上是安全的,但速度很慢,因此即使散列密码被泄露,也需要花费大量时间从散列中猜出它。

支持多种密码哈希方法,Ubuntu 默认配置是接受所有方法,因此如果您升级但不更改密码,甚至从原始 Unix 系统(例如 sysVr4)复制哈希密码,它仍然可以工作。

默认密码哈希方法是/etc/login.defs使用关键字设置的(讽刺的是)ENCRYPT_METHOD,新密码将使用此方法进行哈希处理。我相信 Ubuntu 18.04 - Ubuntu 22.04 的默认设置是SHA512

答案2

@user10489 的答案非常好,但请让我补充一点。

身份验证过程由 Debian 和 Ubuntu 上的 PAM 管理,并且可以在 中进行配置/etc/pam.d/common-password。请注意以下行(示例来自我的 ubuntu 22.04 系统)

password    [success=2 default=ignore]  pam_unix.so obscure use_authtok try_first_pass yescrypt

您可以看到我的 ubuntu 系统使用yescrypt,并且在同一个文件中有一条注释,yescrypt记录自 Debian 11(因此是 Ubuntu 21.10ish?不确定映射)以来的默认设置。

# Explanation of pam_unix options:
# The "yescrypt" option enables
#hashed passwords using the yescrypt algorithm, introduced in Debian
#11.  Without this option, the default is Unix crypt.  Prior releases
#used the option "sha512"; if a shadow password hash will be shared
#between Debian 11 and older releases replace "yescrypt" with "sha512"
#for compatibility .  The "obscure" option replaces the old
#`OBSCURE_CHECKS_ENAB' option in login.defs.  See the pam_unix manpage
#for other options.

相关内容