passwd
維基百科,自由的 encyclopedia
passwd 是一个用于 Unix,Plan 9,Inferno 和大多数类 Unix 操作系统中用于更改用户密码的命令。用户输入的密码通过密钥派生函数运行,以创建新密码的散列值,并将其保存。出于安全考虑,将不会保存输入的密码而仅保存生成的散列值。
当用户登录时,用户在登录过程中输入的密码将通过相同的密钥派生函数处理,并将生成的散列值与保存值进行比较。如果哈希值相同,则认为输入的密码正确,即用户已通过身份验证。从理论上讲,两个不同的密码可能会产生相同的哈希值。但是,密码散列函数在设计时的要求就是使得能够找到产生相同散列的密码极为困难,这在实际上不可行。因此,如果产生的散列与存储的散列匹配,则可以对用户进行身份验证。
passwd 命令可用于更改本地帐户的密码,在大多数系统上,也可用于更改在分布式身份验证机制(如 NIS,Kerberos 或 LDAP)中管理的密码。
passwd 文件和 shadow 文件是类Unix系统中用于记录用户名、用户ID和用户密码等信息的文件,类似于Windows下的%windir%\system32\registry\sam
文件。这两个文件通常位于/etc
目录之下。同时,类Unix系统中可用passwd
命令更改特定用户的密码。