Mat*_*ghi 2 html php forms security encryption
我正处于开发Web应用程序的早期阶段,并且我已经达到了我想要针对特定安全问题做出最佳选择的程度.目前,HTML表单中找到的所有字段都以它们所代表的数据库列命名.因此,例如,如果在数据库中我有一个名为"email"的字段,那么表单字段也将被称为"email".这使我的通用代码更容易处理表单,但我自然会看到这些名称的一个主要问题:它们可以让潜在的黑客洞察我的数据库的结构,只是从查看源代码.
我想到的主要解决方案涉及加密字段名称,以便客户端永远不会有真正的名称.服务器端密钥将用于进行加密.但是,我担心这种方法可能会使事情变得太复杂.例如:
所以,我想知道你们对此的看法.我是在过度思考,还是我走在正确的轨道上?有没有更好的方法来处理它?
顺便说一句,我也知道像"电子邮件"这样的字段名称并没有向开发人员提供太多信息(为什么不提供txtEmail,或类似的东西?).我想看看是否有一个很好的命名约定我可以采用,因为它可能有助于解决上述问题.
如果任何人都可以通过SQL注入或任何其他方法访问您的数据库,则可以使用一个查询显示您的模式,因此尝试隐藏它是没有意义的.如果你觉得你必须通过默默无闻来做安全,你就没有做正确的事.
如果您的应用程序是安全的,那么潜在的攻击者是否认为他们知道您的架构并不重要.他们对这些信息无能为力.
我花费更少的时间来模糊你的数据库(这只会让你和你的开发人员感到沮丧)以及更多的时间来试图锁定你的应用程序以防止潜在的注入攻击.