【发布时间】:2014-10-13 16:15:48
【问题描述】:
用户的密码在数据库中使用盐进行哈希处理。盐也存储在数据库中。
我有一个 WCF 服务,其方法接受来自客户端的用户名和密码。 WCF 服务可以访问数据库,而客户端显然没有。
我可以以纯文本形式传递密码,但是,以纯文本形式向 WCF 服务发送密码听起来很糟糕。
解决方案是改为传递哈希。但是,我无法计算哈希,因为我没有存储在数据库中的盐。我可以创建一个服务方法来检索盐,但是,我不确定这是否是解决此问题的最佳方法。
这个问题的最佳解决方案是什么?先取盐是个好主意吗?
【问题讨论】:
-
在没有安全性的情况下通过网络传递用户名/密码似乎是一个可怕的想法。同时,用户名/密码认证已经在 https 中正确实现。你为什么不使用这些功能而不是重新自制呢?