我在问自己。从您的 iOS 设备向服务器发送个人信息的最佳方式是什么。
此时我在应用程序中加密密码(sha1 salt password pepper)然后我使用 iOS 将发布数据发送到服务器。
保护用户和防止任何 MITM 攻击的最佳方法是什么。我的方式是否足够安全?
更新:
我添加了 SSL 证书。为了确保用户只需在我存储用户注册时生成的 key 后登录。我在用户第一次登录时获取它们。与用户名和用户 ID 结合使用。这是一个好方法吗?只有越狱用户才能阅读并有风险。
最佳答案
在客户端散列密码将有助于防止密码本身在窃听中被检测到,但它本身并不能提供任何安全性,因为凭据然后变成密码的散列版本,而不是原始密码密码本身。窃听者可以只获取散列版本,然后自己发送散列。
到目前为止,最简单的解决方案是简单地使用 SSL/TLS。由于您提到了“发布”,这意味着您可能正在使用 HTTP。相反,您可以通过 HTTPS 连接并发布数据,与您已经在做的完全一样。只要检查证书的有效性(我相信 iOS 框架默认情况下已经这样做了),那么连接应该在很大程度上是安全的。
对于大多数情况,这应该足够好。您可以使用一些更复杂和复杂的技术来进一步强化,但 SSL/TLS 本身做了大量工作。
关于objective-c - 向服务器发送密码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12735989/