ferno 和大多数类 Unix 操作系统中用于更改用户密码的命令。用户输入的密码通过密钥派生函数运行，以创建新密码的散列值，并将其保存。出于安全考虑，将不会保存输入的密码而仅保存生成的散列值。当用户登录时，用户在登录过程中输入的密码将通过相同的密钥派生函数处理，并将生成的散列值与保存值进行比较。如果哈希值相同，则认为输入的密码正确，即用户已通过身份验证。从理论上讲，两个不同的密码可能会产生相同的哈希值。但是，密码散列函数在设计时的要求就是使得能够找到产生相同散列的密码极为困难，这在实际上不可行。因此，