首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >PHP文件将密码存储为文本文件

PHP文件将密码存储为文本文件
EN

Stack Overflow用户
提问于 2013-02-02 22:29:41
回答 4查看 1.8K关注 0票数 0

对于我的小网站,只有朋友知道,我正在开发一个密码系统。我将密码保存在一个php文件中,如下所示。

代码语言:javascript
复制
<?php
if($_GET["p"]=="password"){
?>
user1 password1
user2 password2
<?php
}
?>

然后,我可以使用file_get_contents(pass.php?p=“password”)读取密码;我仍然可以通过写入php文件来写入密码,就像写入文本文件一样。这种方法是不安全的吗?是否有不需要数据库的类似方法?我不认为我的网站需要加密,如果密码被泄露了,也不会有太大的伤害。

EN

回答 4

Stack Overflow用户

发布于 2013-02-02 22:35:50

哇哦。我会说这是非常不安全的。有没有不使用数据库的原因?

此外,如果您愿意,为了在没有数据库的情况下更安全,您可以创建username+password与md5和/或sha1编码的组合,并将其另存为目录中的无扩展文件,然后比较file_exists的组合是否正确

票数 2
EN

Stack Overflow用户

发布于 2013-02-02 22:56:27

查看网站http://www.hackthissite.org,它允许你做一些现实生活中的例子,展示人们是如何入侵网站的。基本任务之一是学习从包含的文本文件中获取密码。如果有人知道文本文件的下落的话。隐藏的文件可以很容易地找到,然后他们将访问您的所有密码。这取决于你,如果你不关心安全性,你甚至可能没有登录系统。如果你真的关心,那就去买mysql吧,它是免费的,使用起来也不难。

票数 0
EN

Stack Overflow用户

发布于 2013-02-02 23:12:54

这些是一些改进你当前方法的建议。

在我的记忆中,你可以使用重写模块直接访问这个文件是受限制的。

  • 使用复杂密码(包含特殊字符和数字的短语)作为页面访问的主要密码。
  • 对于主密码同样,将密码的md5或sha1哈希值与GET变量的值的md5和sha1哈希值进行比较,而不是将纯文本放在那里。
  • 存储密码的md5或sha1哈希值,而不是存储纯文本密码。然后,在比较密码时,您可以将用户输入的值转换为该值的散列值,并将其与存储的值进行比较。
  • 散列时,您可以根据我的记忆使用种子,这将略微提高安全性。

这将使它更安全,因为如果有人登录到服务器,他不能直接获得您用户的密码文本。但请注意,大多数散列值都可以使用rain bow表进行破解。但这至少比存储纯文本密码更安全。

但我仍然希望您能将数据存储在数据库中,而不是像这样的文件中。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/14662892

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档