我已经读过几次 Apple 的文档,但我并没有真正从中变得更聪明。所以我希望这里有人知道如何处理收据验证:
我知道在 iOS 6 之前存在问题。但是现在在 iOS 7 上是否需要收据验证?它真的增加了额外的安全性吗?如果 Apple 更改收据的格式(在设备上解析它们),似乎可能会导致问题。
我已经读过几次 Apple 的文档,但我并没有真正从中变得更聪明。所以我希望这里有人知道如何处理收据验证:
我知道在 iOS 6 之前存在问题。但是现在在 iOS 7 上是否需要收据验证?它真的增加了额外的安全性吗?如果 Apple 更改收据的格式(在设备上解析它们),似乎可能会导致问题。
在我所看到的情况下,iOS7 并没有改变你是否应该进行收据验证的需求,只是收据验证是如何可能的。iOS7 已在设备上启用收据验证(例如,请参阅上面的https://stackoverflow.com/users/1226963/rmaddy链接,并参阅在 iOS 7 上本地验证应用内收据和捆绑收据的完整解决方案)。
设备上收据验证是否增加了额外的安全性?在我看来确实如此。它为您提供了另一种工具来保护您的购买。在我的应用程序(尚未发布)中,我想支持 iOS6 和 iOS7,所以我决定有一个后端服务器来对 iOS6 案例进行收据验证。由于我有那个服务器,对于 iOS7 收据,我首先进行设备验证,如果成功,我会进行服务器验证作为第二次检查。
您是否进行收据验证(在 iOS5、iOS6、iOS7 等中)实际上取决于您的安全性对您的意义。如果您没有太多的安全需求,那么为什么要花很多时间在安全上。如果你这样做,那就做更多。
如果 Apple 更改收据的格式怎么办?好吧,当然,这可能而且很可能会发生。鉴于 iOS6 到 iOS7 对重组收据和应用内购买的改变相当大,我们似乎应该期待 iOS8 再次这样做。这就是未来。处理我们现在所拥有的。
收据验证不是必需的,但在以下情况下需要:
以下是我们博客中关于 App Store 收据验证的完整常见问题解答: