现代Unix/Linux系统上的密码是否仍然限制在8个字符?

几年前,以前的情况是Unix密码限制在8个字符,或者如果您的密码长于8个字符,额外的将不会有任何区别。

大多数现代Unix / Linux系统还是这样吗?

如果是这样,大多数系统在更长的密码变得可能的时候呢?

有没有一个简单的方法来判断一个给定的系统是否支持更长的密码,如果是这样,有效的最大值(如果有的话)会是什么?

我已经做了一些关于这个话题的网页搜索,找不到任何明确的东西;其中大部分是从二十世纪二十年代初,当时我认为8个字符的极限仍然很常见(或普遍足以保证坚持这个限制)。

在glibc2(任何现代的Linux发行版)中,密码加密功能可以使用MD5(由魔术盐前缀引发),然后将其视为所有输入字符(见 man 3 crypt)。对于您的系统的简单测试,您可以尝试如下:
#!/bin/perl -w
my $oldsalt = '@@';
my $md5salt = '$1$@@$';
print crypt("12345678",$oldsalt) . "\n";
print crypt("123456789",$oldsalt) . "\n";
print crypt("12345678",$md5salt) . "\n";
print crypt("12345678extend-this-as-long-as-you-like-0",$md5salt) . "\n";
print crypt("12345678extend-this-as-long-as-you-like-1",$md5salt) . "\n";

(在我的系统上给出)

@@nDzfhV1wWVg
@@nDzfhV1wWVg
$1$@@$PrkF53HP.ZP4NXNyBr/kF.
$1$@@$4fnlt5pOxTblqQm3M1HK10
$1$@@$D3J3hluAY8pf2.AssyXzn0

但是,这是一个非标准的扩展 – POSIX does not define it

相关文章

用的openwrt路由器,家里宽带申请了动态公网ip,为了方便把2...
#!/bin/bashcommand1&command2&wait从Shell脚本并行...
1.先查出MAMP下面集成的PHP版本cd/Applications/MAMP/bin/ph...
1、先输入locale-a,查看一下现在已安装的语言2、若不存在如...
BashPerlTclsyntaxdiff1.进制数表示Languagebinaryoctalhexa...
正常安装了k8s后,使用kubect工具后接的命令不能直接tab补全...