如何正确保存一个散列密码

How to properly save one hashed password

当我遇到这个问题时,我正在尝试一些事情。我有一个散列密码存储在我计算机上的一个文件中。但是,我的代码检测密码是否已设置的方式是检查该文件是否存在。如果是这样,它会要求您输入已设置的密码。如果该文件不存在,它将要求您设置一个新密码。但这也意味着从理论上讲,如果有人想闯入,他们只需删除该文件并输入新密码即可。

你是怎么解决这个问题的?我不确定这是否是一个完全愚蠢的问题,但我不知道如何解决这个问题。

如果您使用的是 Unix 或类 Unix 系统,您可以将文件所有权设置为 root 并使其只能由授权用户读取,并清除其他位。这应该可以防止删除文件。

sudo chown root:root file_with_hashed_password
sudo chmod 440 file_with_hashed_password

您根本不必询问密码。 只需通过设置权限拒绝所有其他用户访问您的脚本。

如果您要共享您的用户帐户,请考虑其他人可以简单地从您的脚本中删除密码提示。