1
2
建立SSL是为了对客户机和服务器进行身份验证,而非对称加密是您在这个场景中可以使用的最安全的原语。对称密码可以通过使用 Cipher Block Chaining Message Authentication Code 另一种被称为CBC-MAC模式。cbc-mac的使用与hmac具有类似的保护,但使用对称密码而不是消息摘要函数。WPA使用CBC-MAC模式来保护无线网络。 |
2
2
你的想法受到 重放攻击 -如果有人观察到用户登录,他们可以存储用对称密钥加密的静态文本,并在以后使用它进行身份验证。 这样做的公认方法是挑战/回应。客户机连接,服务器生成一个随机的质询并发送给客户机,客户机以质询的加密版本响应(尽管您实际上应该在这里使用HMAC,而不是块密码,因为否则您的客户机实际上是一个单块解密Oracle!)。使用两个不同的随机密钥(同时通过Web服务提供)也更安全,一个用于加密,一个用于身份验证。 请注意,尽管这一计划,如文所述,仍然容易受到中间人的攻击。使用SSL绝对更好,因为 The Rook 建议。这将要求您的客户机生成一个公钥并将其发送到Web服务。Web服务用一个已签名的证书响应,该证书包含客户端的公钥以及DN字段中客户端的唯一标识符(用户名或其他任何标识符)。单独连接上的服务器验证所使用的客户端证书(确保由Web服务签名),并验证证书中的客户端标识符是否与请求连接的客户端匹配。 |
Farid · 限制django每个客户的访问 2 年前 |
josegp · 在Nmap中-p-tag是什么意思 2 年前 |
kramer65 · 如何根据网站用户在S3上添加非公共网站文件? 6 年前 |
derf26 · 如何阻止React Web包包含包中的脚本。json 6 年前 |
user8663960 · 最好也是最简单的方法是保护登录表单的安全 6 年前 |