如何安全地将密码存储在文件中?

时间:2010-09-24 09:00:22

标签: password-protection

我的程序需要密码才能打开一些功能。密码可以由管理员设置。我的应用程序将密码存储在一个文件中。但是,如果文件被删除或损坏,应用程序将丢失密码。另一种情况是,如果文件被原始文件替换,则密码将为空。有关在文件中存储密码的任何建议吗?

编辑: 我的应用有一个功能。该功能受密码保护,密码可由管理员(PC所有者)设置。访客应输入密码以禁用该功能。 操作系统:Windows

2 个答案:

答案 0 :(得分:0)

您无法保护文件不被删除。在这种情况下,只是不允许任何用户登录您的应用程序(如果密码为空,同样适用)。

如果您将密码存储在一个文件中(或任何地方),您应该对它们进行哈希处理(例如使用md5或sha1)。所以他们不能用明文阅读。要在登录期间检查密码,请执行以下操作(php中的基本示例):

$password = file_get_contents('password.file'); // Outside webroot of course
if(md5($_POST['password']) == $password) {
    // Login OK
}

答案 1 :(得分:0)

什么样的节目?哪个平台? Windows,mac,linux,android?

始终可以通过某种方式删除或替换文件。你可以把它放在“更安全”的地方,用户无法轻易找到它,但是如果取决于平台。