TOB*_*BOT 27 iphone objective-c cydia
我发现许多用户使用所谓的"IAP破解者",而不是购买应用程序内购买(IAP)中的项目.我还了解到,Zynga Poker和Pokerist已经检测到IAP破解者,并防止了假的IAP.我想检测哪个手机正在使用IAP cracker.对于Cydia黑客工具,我可以通过应用程序路径找到它.
但是我不相信iAP破解者会陷入特定的应用程序.我想我可以通过调用"Url Scheme"来查看,但我不知道这个名字.有谁知道怎么办?
Ert*_*lle 56
目前最好的解决方案似乎是使用外部服务器验证IAP事务,然后发回某种特定于设备的密钥来解锁只能在该服务器上生成的付费项目.这不是防弹,但它应该使您的应用程序高度抵抗任何通用的IAP破解系统; 想要破解你的应用程序的人几乎必须专门为它开发一个破解.(这要复杂得多,远远超出大多数人使用IAP Cracker的范围)
这是你基本上需要做的事情:
(请参阅下面的EDIT后面的文字,了解您现在需要在步骤3中进行的一些额外验证)
在您的情况下,由于您的应用程序已被破解,并且您尝试停用非法获取IAP项目的人员,您将在新版本的应用程序中推出此功能,然后在新版本第一次调用restoreCompletedTransactions运行版本以重新验证/重新激活合法用户的购买并阻止其他所有用户.
但是,我应该补充一点,这是一项很多工作 - 花了我们几个星期的程序员时间来让它顺利运行,尽管现在有一些开源代码可以为你处理大部分步骤2和3.重新启动步骤还有一个支持和公关成本 - 不可避免地有些人会更改iTunes帐户或没有互联网连接或类似的东西,他们可能会被扯掉甚至暂时无法访问他们合法支付的东西.
您需要权衡是否真的值得投入时间,当裂缝只适用于越狱用户(因此90%的潜在客户不会受到影响)并且大多数安装它的人不太可能为您的应用付费无论如何; 不要被破坏你的应用程序的大量用户吓到,很多人会很乐意免费下载一些东西,即使他们从不付钱.您可能最好将时间投入到有益于合法用户的改进中(并鼓励更多人购买您的应用).
编辑一年后,这仍然(大部分)是准确的,但为了处理今天宣布的截获然后重新发送真实收据的新破解,现在服务器端需要更多的工作.(幸运的是,如果您已经设置了验证服务器,则应该可以在不更新应用程序的情况下执行此操作)两个新要求:
1)检查从Apple服务器返回的解密收据中的产品ID(应用程序ID和IAP产品)是否与用户购买的产品实际匹配.
2)通过保留以前使用的事务ID的日志,检查之前从未使用过收据中的事务ID(或恢复收据的恢复事务ID).
即使现在非Iail破解用户可以使用IAP破解,我的基本观点仍然是这可能比它的价值更麻烦 - 回过头来花费大量时间来实施和维护一堆完全无趣的代码你需要从那些不愿意支付你的产品的人那里得到很多额外的销售,他们愿意大规模地损害他们iPhone的安全性,以避免这样做.
我刚刚在BinPress上找到了20美元的组件,声称可以为您提供这种保护.事实上,它正在阅读他们的描述,促使我搜索IAP Cracker并引导我回答这个问题!
从快速阅读描述看起来值得尝试至少作为这些攻击的廉价障碍.
该组件可以防止绕过应用程序内购买的工具并免费解锁高级内容,例如最受欢迎的"iAP Cracker".通过托管在我们服务器上的托管收据验证服务来管理保护.它具有经过验证的安全性和针对破解工具的可靠性,并且旨在尽可能简单地集成到开发人员中.
"应用程序内购买验证"适用于那些没有维护服务器并希望避免自行管理购买验证的人 - 这可以节省大量时间:实现它就像插入一些额外的代码行一样简单(见下文).从那时起,服务器将发挥其魔力,它将使用Apple服务器验证每个收据.它还会为您提供购买计数.
您应该尝试 system("dpkg -l | grep iapCracker > /var/tmp/logiap.txt"); 然后用 logiap.txt 的内容填充 NSString 并检查该字符串是否包含某些内容。但我不知道苹果是否允许你这样做;)
| 归档时间: |
|
| 查看次数: |
39998 次 |
| 最近记录: |