gpt4 book ai didi

security - TLS 会阻止其他人对我的协议(protocol)进行逆向工程吗?

转载 作者:太空宇宙 更新时间:2023-11-03 13:09:44 24 4
gpt4 key购买 nike

我正在开发一个网络程序,我不想让任何人在嗅探网络时知道正在传递什么样的信息。使用 TLS 会实现这一点吗?我的主要原因是我想暂时保留我正在使用的协议(protocol)。如果没有,请告诉我是否有什么可以实现我的目标。

最佳答案

这取决于很多事情,例如您的确切威胁模型是什么,以及您可以容忍多少信息泄露。

要使 TLS 提供足够的保护,这些假设必须成立:

  1. 显然,您应该使用正确的实现,否则,例如,如果您使用的是来自 iOS 7.0.4 的 SecureTransport,那么一切都将失败。
  2. 您应该执行最低版本要求,并且只支持安全密码套件。如果您允许降级到 SSLv2,您就会遇到问题。
  3. 您检查服务器公钥的有效性。您会惊讶于有多少客户端应用程序跳过了这一点。
  4. 您使用客户端证书对客户端和服务器进行身份验证,否则,可能会编写一个与您的 TLS 服务器对话的虚假客户端并对您的协议(protocol)进行逆向工程。 (您也可以使用其他方式在协议(protocol)生命周期的早期对客户端进行身份验证,但协议(protocol)的那部分并不安全)。
  5. 您确保私钥安全。
  6. (如果您使用的是 X509 证书和信任链:)您信任的证书颁发机构会做他们应该做的事情,即不以您的名义为他人签署证书。
  7. 您仍然会泄露一些数据包长度和时间信息,您希望这些信息对于逆向工程师而言不够完整。
  8. 攻击者无法控制您的客户端或服务器,也无法访问任何一方的二进制文件。如果像 iPhone 应用程序一样,您放弃了客户端二进制文件,那么您就已经输了。
  9. 当客户端安全通道中断时,您的更高级别的协议(protocol)不能被欺骗说,盲目地重定向到另一台服务器,或者失去理智并做一些其他疯狂的事情。这有时很难注意到,并且取决于许多其他因素。
  10. 我可能在这里遗漏了其他内容。

关于security - TLS 会阻止其他人对我的协议(protocol)进行逆向工程吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22601318/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com