【问题标题】:Password storage for authentication用于身份验证的密码存储
【发布时间】:2014-02-04 12:13:35
【问题描述】:

我正在尝试为不必超级安全的网页创建基本密码保护,但我不想做一些简单的事情,例如将密码存储在 JS 中,因为有半脑的人可以查看源码。 (我和工程师一起工作,所以每个会使用它的人至少有半个大脑!)

其他人建议通过对存储密码的 PHP 脚本的 AJAX 调用来执行此操作。

这真的更好吗?不能查看网络资源,即使用Chrome,查看PHP文件吗?

我使用 Chrome 测试了上述内容并做了一个检查元素,然后在“网络”选项卡下有我创建的标题为“Passwords.txt”的文件...

我在想我可以只存储编码的密码。但我需要一些只能以一种方式工作的东西......即你输入daveisawesome1234,它会编码为像OIWBOUQ#BP@#BR@FBNSAION这样难以理解的东西。这样,如果您看到带有OIWBOUQ#BP@#BR@FBNSAION 的“Passwords.txt”文件,您就不能只输入它。问题是您只需要阅读代码来弄清楚我是如何编码的......

有没有一种简单的方法可以完成我正在寻找的东西?我一直在学习,所以请不要推荐任何图书馆。我想学习自己编写代码。

提前致谢, 戴夫

编辑:

好的,我想尝试一下。我创建了一个非常基本的页面来测试 4 种密码“加密”方法。如果你知道密码,请告诉我,以及你是如何做到的。

这是链接:http://dck.dx.am/locktest/locktest.html

@Pointy:这也应该说明我所说的能够查看 PHP 文件...

请随时提供见解或提供替代方法。

谢谢,戴夫

【问题讨论】:

  • 除非你做错了什么,否则没有人可以从互联网上看到你的 PHP 源代码。
  • 好吧,看来我做错了什么,知道什么吗? (我知道这很模糊,让我知道您还需要回答什么问题...)
  • 如果您的 PHP source 可以读取,那么您的服务器在某种程度上配置错误。有很多可能性。
  • 如果这不必是“超级”安全的,为什么它必须是安全的呢?如果安全对涉及的任何人都很重要,那么您缺乏这方面的经验似乎是个问题(无意冒犯)。
  • 没有冒犯。我想学习。每个人都必须从正确的地方开始!?

标签: javascript encryption passwords


【解决方案1】:

除非服务器配置错误,否则您无法从浏览器查看 PHP 文件。 PHP 通常在服务器中执行,并将输出发送到客户端。只要密码不是输出的一部分,它就相对安全。这是正确的做法(密码不应该嵌入代码中,但如果只是为了一个快速而肮脏的项目,那也不错)。

另一方面,在浏览器中检查密码,无论它是否“编码”,都不是一个好主意,因为它很容易绕过。客户端安全不安全。

至于“只有一种方式起作用的东西”,这就是 hashing algorithms 的用途。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-12-06
    • 2016-04-19
    • 1970-01-01
    • 2014-03-26
    • 1970-01-01
    • 2010-11-03
    • 1970-01-01
    相关资源
    最近更新 更多