Pet*_*aer 19 iphone authentication
假设我有一个涉及iPhone应用程序的解决方案,该应用程序生成一些信息,然后将该信息发送到Web服务进行处理.重要的是,只允许处理来自此特定iPhone应用程序实例的请求(许多不同用户可能会使用该应用程序的许多实例,但我希望确保它们都使用我信任的代码).换句话说,我想确保我的iPhone应用程序不能(轻松)被其他客户端模仿.你会怎么做?
所有其他答案都提供了提供一些额外但不完美的安全性的合法方法。您应该预先知道(因为没有其他人如此明确),不可能提供理论上安全的通信,以便您的服务器始终可以验证另一端的客户端是在受认可的硬件上运行的应用程序的购买副本。你不能这样做,因为无论苹果内置了何种硬件级别的安全性来启动信任链(这样他们实际上可能做到这一点),他们都不会向你暴露。
因此,您的策略应该是“许多障碍”之一,有些较大,有些较小,旨在阻止不同程度的攻击复杂性和攻击者的复杂性。请参阅此问题的其他答案以获得一些好主意。您需要多少障碍以及复杂程度,完全取决于攻击成功对您造成的成本(经济上、信任上,等等)。
还请考虑这样一个想法:如果您可以避免“可重复的”安全攻击,那么您的情况会更好。换句话说,如果有人破坏了您的应用程序/协议,并且其他人执行此操作的数据对于每个副本/实例都是相同的,那么您就会遇到更大的麻烦,因为说明/密钥可以直接发布到网络上某处。如果你能找到一种方法使每个副本/客户端都是唯一的,那么你可以在服务器上进行观察,最坏的情况是切断已知损坏的客户端等。(这在 iPhone 平台上很难。)
归档时间: |
|
查看次数: |
11065 次 |
最近记录: |