密码 (Bcrypt.Net) + WCF

Passwords (Bcrypt.Net) + WCF

假设我们有一个通过 WCF 连接到服务器的客户端:

Server <---WCF---> Client

用户需要通过用户名+密码登录。 验证客户端密码的最佳做法是什么?

我是否只在客户端散列密码并通过网络发送散列密码,如下所示:

// client:    
return BCrypt.Net.BCrypt.HashPassword(password, BCrypt.Net.BCrypt.GenerateSalt(xx));

还有其他方法吗,因为通过网络发送密码并在服务器上散列它看起来不是最明智的做法。 可以通过网络发送哈希吗?

...至少这是一种常见的方式。无论如何,您应该尝试确保使用 https 更加安全...

另一种可能性是使用 WCF itself .

提供的集成安全机制

编辑:我想与 @Corak 分享信用,因为他提到公钥加密是处理这种情况的一种安全且智能的方式。