在POST请求中输入密码是否安全?

时间:2013-12-17 18:24:40

标签: java security rest

我正在开发Web服务,

这些服务是rest服务,并由移动应用程序使用。

例如,如果用户想要登录,他/她必须调用此链接

mySever:myPort/login

在请求的帖子中,他们使用密码和用户名。

这样安全吗?

请注意我在调用Web服务之前将密码更改为sha256

如果这种方式不安全,你能建议其他选择吗?

3 个答案:

答案 0 :(得分:4)

仅当您通过SSL进行所有通信时。

答案 1 :(得分:2)

使用HTTPS!

如果您使用HTTP并确保验证服务器证书,那么您将具有相当的安全性。

如果您制作自己的身份验证协议,则很可能会创建漏洞。

如果您只是发送密码的哈希值,则表示您尚未添加任何安全性;攻击者可以重播相同的哈希值。

答案 2 :(得分:0)

由于您没有使用SSL,因此您应该使用一些方法来避免重放攻击。如果你只是自己散列密码,有人可以很容易地捕获哈希并自己发送。一种方法是使用您发送给用户的nonce,并在散列之前将其添加到密码中。此随机数应该是唯一的(例如,您可以使用时间戳)。

因此,您可以使用hash(密码+ nonce)代替hash(密码)。然后你会比较,因为你们都持有密码和随机数。