1

我开发了安全敏感的应用程序。我必须使用基于TEA的算法来加密/解密数据以与服务器通信并遵循服务器协议。我使用AsyncSocket进行使用CFNetworkAPI 的传输级通信。我注意到TEA算法不是很安全,很容易被黑客入侵。此外,AsyncSocket图书馆没有使用 Apple 的安全框架任何地方。我计划重写传输层并重新定义客户端-服务器安全协议。我一直在研究应该使用什么样的安全算法来保护数据,这种算法对性能没有影响或影响最小并且难以破解。此外,我正在浏览安全框架,但找不到任何使用该框架实现传输层的示例。有人可以帮助我吗?我应该遵循哪些内容来编写安全传输层?我可以针对我的应用程序检查哪些安全措施?

4

1 回答 1

1

正如@CodesInChaos 所指出的,您应该为此使用 TLS。您绝对不应该设计或实现新的传输协议。

CFNetwork 支持 TLS 的事实并不意味着您正在使用它。你需要积极地使用它。您的服务器需要客户端信任的证书,并且需要协商 TLS 会话。一般来说,如果您只使用 HTTPS 和标准NSURLConnection例程,那么您将免费获得所需的大部分内容。但是,如果您开始手动构建它,则CFNetwork需要确保正确配置它。我的建议是尽可能使用 HTTPS。它很简单,可以解决各种各样的问题。

也就是说,仅仅因为传输是安全的并不意味着您的应用程序“足够安全”。特别是,您的服务器仍然需要能够处理通过安全传输进行通信的恶意客户端。您需要正确验证用户身份,并且需要优雅地处理恶意数据。当数据到达您的服务器时,您需要安全地存储。您可能需要加密客户端上的数据。除了运输之外,保护系统还有很多方面。

于 2013-02-25T23:13:46.473 回答