Php 使用jQuery发送登录数据是否存在安全问题?

Php 使用jQuery发送登录数据是否存在安全问题?,php,forms,security,Php,Forms,Security,简短回答-通过ajax将电子邮件+密码发送到另一个页面是否存在任何安全问题?:) 我的想法是,信息可能会在发送过程中被抓取,这可能是一个缺陷,与“传统方式”相比,只需一个表单操作,并带有登录操作页面的“链接” 提前感谢。如果您通过POST发送带有表单的密码或通过POST发送Ajax请求,则情况相同。您应该使用SSL,然后请求被加密并保存 但是您应该使用POST请求。不要发送你的密码,这不是最好的方法 在将密码发送到任何位置之前,您可以在客户端将密码转换为哈希,然后在服务器端执行哈希比较 但是你在

简短回答-通过ajax将电子邮件+密码发送到另一个页面是否存在任何安全问题?:)

我的想法是,信息可能会在发送过程中被抓取,这可能是一个缺陷,与“传统方式”相比,只需一个表单操作,并带有登录操作页面的“链接”


提前感谢。

如果您通过POST发送带有表单的密码或通过POST发送Ajax请求,则情况相同。您应该使用SSL,然后请求被加密并保存

但是您应该使用POST请求。不要发送你的密码,这不是最好的方法


在将密码发送到任何位置之前,您可以在客户端将密码转换为哈希,然后在服务器端执行哈希比较

但是你在一个Post或Get请求中也有同样的问题。。。如果您不使用SSL,情况总是一样的,但是考虑到NSA的严峻考验,即使这样看起来也不太安全

编辑 如果您转换密码散列clientside并将其存储在一个隐藏字段中,然后将其发送以进行比较,而不是发送密码,那么这是有意义的。然而,这带来了一种威胁,即散列可以直接从客户端收集,这是不好的,因为您还需要公开您的种子(您无论如何都应该使用)等等。这是一种有缺陷的方法

使用SSL并完成它

但是,您可以使用基于jQuery的来满足您的请求。您所指的“传统方式”与发布AJAX请求一样糟糕。通过HTTPS而不是HTTP发送可以提供更好的安全性(但怀疑论者会很快指出,通过HTTPS使用的一些加密方案解码起来很繁琐)

否。

您需要在服务器上设置SSL,并使用HTTPS连接,以确保安全

这会阻止密码本身被看到,但您仍然可以使用哈希值登录。这怎么可能?除非你的代码写得很糟糕,否则你不能用HASH登录是没有意义的!因此,从您的回答中我可以看出,通过AJAX表单请求发送表单与通过普通帖子发送表单一样容易受到攻击:)你能解释一下为什么GET不是最好的方法吗?目前看来,这就像是一个随机的不合理的声明POST vs GET,警告说对于GET,位置栏中显示的URL可能会暴露隐藏在帖子中的数据。