iphone - 苹果二进制文件有多安全( key 安全)

标签 iphone binary secret-key

我正在为 iPhone 开发一个应用程序,它使用 HTTP 请求从网络服务器获取报价数据。

我正在与另一位管理 Web 服务的开发人员合作。我们使用 MD5 加密(简单异或)在 iPhone 和网络服务器之间传递数据。

他今天早上向我提出了一个问题,坦率地说,这超出了我的知识范围。

“苹果二进制文件的安全性如何?”

他担心是否有人可以通过 iTunes 获取 .app bundle ,然后解码该 bundle 并直接访问我的源代码,从而允许他们获取我们用于编码数据的 key 。

我个人甚至不知道从哪里开始,但我确信那里有更多知识渊博/狡猾的人。

那么,这可能吗?如果是,我该怎么做才能保护我的来源?

最佳答案

该二进制文件根本不安全。无论是通过 iTunes 下载还是在越狱的 iPhone 上,除了混淆之外你别无选择,而顽固的​​对手总是能够绕过这一点。永远不要依赖客户端应用程序中嵌入的某些内容的“保密性”,它不是保密的。曾经。在任何平台、任何语言、使用任何技术。

如果您需要限制谁可以访问您的系统,您需要每用户帐户。没有其他安全机制。 Apple 确实提供了通过 iTunes 帐户“验证”用户身份的方法,您可能需要研究一下。

此外,“MD5 加密”没有任何意义。 MD5是一种哈希函数与加密应用程序,但说你正在做“MD5加密”和“简单异或”是没有意义的。我可以使用 XOR 和 MD5 来做很多事情,但很少有任何可以作为有意义的加密方案,并且与专家设计的真实算法(例如 AES)相比没有任何优势。

使用 HTTPS(基于 SSL 的 HTTP)。没有理由不这样做,iPhone完全支持它。如果需要,您可以至少从http://www.startssl.com/为您的服务器获取免费的SSL证书。 。现在也有很多廉价的 SSL 证书提供商。谷歌了一下。

我强烈建议您和您的合作开发人员开始阅读有关信息安全的理论和实践方面的内容,因为您似乎对该主题缺乏基础,并且可能存在一些重大误解,这些误解很容易导致 -损坏的系统。

关于iphone - 苹果二进制文件有多安全( key 安全),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6187427/

相关文章:

macos - 确定可执行文件(或库)是 32 位还是 64 位

authentication - 为什么要使用 API key 和 secret ?

iphone - 在某个应用版本被拒绝后,您是否需要将应用内购买 (IAP) 重新附加到该应用版本?

iphone - 为什么我的 CGContext 被剪裁到边界?

iPhone 日期选择器代替键盘?

api - 将 API key 和密码放入我的 Firefox 插件中

android - 在 Android 应用程序中存储 key 的最佳方式

iphone - Facebook 页面帐户 - 添加应用

Python:二进制到十进制转换

java - 我可以在十六进制到二进制转换器中使用开关结构吗