安全目的

时间:2011-04-13 11:57:04

标签: asp.net

如何在发送到服务器之前加密客户端登录?

4 个答案:

答案 0 :(得分:5)

您应该使用HTTPS。

自己构建安全性很难,你很可能会弄错。
你应该坚持使用专家使用的系统。

在服务器上,请记住对密码进行散列和加密,最好使用bcrypt。

答案 1 :(得分:3)

有一个非常简单的解决方案。 SSL。确保通过https://网址提供所有登录活动。

执行此操作的方式,至少“设置服务器”部分取决于您正在使用的Web服务器。你最好在http://www.serverfault.com/

上询问这种性质的问题

答案 2 :(得分:1)

您只能使用https - 任何客户端加密都可以在客户端上查看,因此无用。对此有疑问:password encryption at client side

答案 3 :(得分:0)

您应该使用HTTPS,但如果您不能使用HTTPS,那么替代方法是创建哈希。

  1. 服务器为会话生成随机“盐”
  2. 客户端的JavaScript会创建用户密码和salt的加密安全哈希。
  3. 将哈希发送到服务器,然后您可以从数据库中检索密码,使用会话的salt和数据库中的密码创建哈希,并检查它是否与客户端发送的密码相同。 - 如果是,则密码匹配。
  4. 使用JavaScript保护密码的示例:http://pajhome.org.uk/crypt/md5/auth.html