【问题标题】:How to programmatically determine if DRM was removed from iPhone application?如何以编程方式确定 DRM 是否已从 iPhone 应用程序中删除?
【发布时间】:2009-12-18 16:14:49
【问题描述】:

如何确定 DRM 是否已从 iPhone 应用程序包中删除(以防止盗版)?

【问题讨论】:

  • 你知道,一个坚定的海盗也总是可以取消对 DRM 的检查。
  • @Martinho:是的,但是比起普通的海盗,坚定的海盗要少得多。这种简单的检查可能足以挫败大多数海盗。
  • Newsflash:如果您真正防止盗版,盗版者根本不会使用您的应用程序。使用您的应用程序的人越少,其认可度就越低。所以真的,你只是扼杀了通常会给你带来销售的广告。给你力量,伙计。抓住那些海盗。
  • Newsflash - 海盗和他们的朋友不购买应用程序 - 这不是您需要的广告类型。
  • “使用您的应用程序的人越少,其识别率就越低。”不过,认可并不像应用销售那样支付账单。

标签: iphone app-store drm


【解决方案1】:

我有一个与第三方网络服务集成的 iPhone 应用程序。我使用this question 中描述的技术来查找盗版者,然后使用用户的设备 ID 和 Web 服务的用户 ID 让应用程序“电话回家”(我还没有对这些信息做任何事情,但我正在考虑联系他们并很好地要求他们购买我的应用程序)。

此外,一旦用户使用我的应用达到一定的使用量,我会限制功能并将盗版者引导至 App Store 以获取全部功能。

【讨论】:

    【解决方案2】:

    据我所知,只有一种方法可以删除 DRM:Crackulous

    所以要找出在破解的应用程序中要查找的内容,我会在您的应用程序上运行 Crackulous比较应用程序包。通过查看文件大小并在包中的文件上运行差异来确定更改的内容应该相当容易。

    一旦您知道更改内容和文件,只需在您的应用程序中查找这些更改,以确定应用程序是否已被破解。

    如果您确切知道应该检查哪些文件,请在此处发布您的发现,以便其他人可以从您的研究中受益。

    【讨论】:

    • Crackulous 家伙无法改变他们需要修改应用程序包的事实。未经修改,DRM 仍然存在。他们确实无法避免他们的修改被检测到。
    • @Ben:是的,如果你寻找任何的变化。在您的回答中,您建议寻找特定的更改。您不需要知道更改,只需知道它已更改。
    【解决方案3】:

    我之前的 Stack Overflow 问题可能会对您有所帮助:Reducing piracy of iPhone applications

    【讨论】:

      【解决方案4】:

      可能值得指出的是,没有随便的“海盗”。休闲用户不购买就无法从应用商店下载您的应用。所有 DRM 删除方案都需要在合法购买的副本上运行。

      至于查看捆绑包是否有更改,我记得您需要做的就是逐步执行链接加载器命令并确保代码捆绑包仍被标记为加密。不需要和任何东西比较。您需要阅读有关 Mach-O 文件格式的信息才能执行此操作,但这并不难,它都记录在 developer.apple.com 上

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2022-10-18
        • 2012-11-27
        • 1970-01-01
        • 1970-01-01
        • 2010-11-11
        • 2010-10-02
        相关资源
        最近更新 更多