2010-01-05 66 views
1

是否可以为应用程序商店下载的应用程序的副本分配不同的标识符,这些应用程序硬编码到应用程序中?或者他们是否永久地在应用程序包中存储标识符,以便在复制时密钥保留在包中?为iPhone应用程序创建产品密钥? [iPhone SDK]

编辑:好的,如果iTunes收到,他们是否可以用来验证下载时间,因为用户必须在服务器中注册他们的应用程序,比如说他们下载它的5个小时内。

在此先感谢

+0

您是否试图根据唯一ID识别盗版副本并禁用功能? – 2010-01-05 01:14:41

+0

是的,我想绑定一个应用程序ID到我的服务器上的设备ID,以便不超过一个iPhone可以运行该应用程序的相同副本。或者,我只想要某种检测方法将设备ID悄悄地发送到服务器,以便可以忽略它。 – user239754 2010-01-05 01:45:19

回答

3

我假设你的目标是通过伪造主序列表中的虚假序列号来禁用你的应用的部分功能。不幸的是,没有每个副本的序列号可用,并且如果有的话,在发布您的应用下载之前,坏人会首先更改它。

相反,您需要检测应用程序包是否已从应用程序内部被篡改。看到这个问题:

Reducing piracy of iPhone applications

然后你需要决定你想如何巧妙地或明显限制功能。最好的解决办法可能是做一些无害的,但有点烦人的事情,这会产生一种特定的支持请求,在这一点上,你可以轻轻地刺激无谓的事情,考虑购买一份合法的副本。

一种有更多误报但可能更少的假阴性的方法是检查应用程序是否在越狱设备上运行。弊端在于,越狱者可能已经合法地购买了你的应用,所以你正在疏远诚实的消费者,没有多少额外的好处。

对于我正在开发的应用程序,它有很大的社交/病毒方面(我希望),我已经决定潜在的失败可能有足够的诚实朋友支付他们正在窃取的服务器周期,这不值得担心。

+0

谢谢!只是我希望能够通过网络服务来进行“全球”竞争,显然,对那些支付其他小朋友也是如此的人来说,这是不公平的。你有没有听说过AntiCrack - 我不确定它是否会得到它,有人说它是一个骗局,其他人说它在一定程度上有效,有什么想法?再次感谢 – user239754 2010-01-05 01:38:01

1

不,没有办法做任何一个这些。最接近的可能是将设备ID存储在中央服务器上。

+0

谢谢,只是如果应用程序是盗版的问题,然后下载,设备ID不会告诉你任何有关它是否是盗版。 – user239754 2010-01-05 01:13:50