复制保护陷阱

时间:2011-08-25 03:38:14

标签: android

即将发布我的应用程序的免费版本,我正在寻找free-mium模型为用户提供额外选项。然而,我绝对担心它被盗版太快,我什么也做不了。

有没有人为Android提供一些高质量的复制保护技术?我不是在谈论提供的pos LVL。我正在寻找一些偷偷摸摸的陷阱来检测我的代码是否被篡改。欢迎任何想法;要让它们变得足够坚硬,以至于它不值得。

3 个答案:

答案 0 :(得分:16)

只有它受欢迎才会被盗版,所以你还有很长的路要走:)通常,对代码进行模糊处理,不要按原样使用LVL,因为有些工具会自动禁用它。不确定您对“偷偷摸摸的陷阱”的想法是什么,但请关注this了解如何保护您的应用的一些想法。

视频中提及了这些内容,但是:

  • 使用ProGuard来模糊代码
  • 检测您的代码是否已更改,您可以检查classes.dex的CRC或检查APK是否已使用您的证书进行签名(如果有人更改了您的代码,他们将不得不重新签名)。但是,antilvl工具可以有效地禁用用于检查篡改的API。因此,如果您希望它有效,则需要在本机代码中执行此操作。
  • 不要在启动时进行检查,但稍后会对它们进行检查。
  • 如果可能,请在许可证/篡改检查中使用服务器端组件。想想如果没有网络连接,您的应用应该如何表现。缓存服务器响应?多长时间?拒绝立即访问?允许始终访问?等。

答案 1 :(得分:7)

保护总是可以打破,你所能做的只是让它更难打破。 您可能会做的事情是在C中编写代码的一些重要部分,并通过NDK调用它。然后你可以在那里进行一些测试,因为反编译C部分比反编译字节码要困难得多。

答案 2 :(得分:6)

您可以在eclipse中使用ProGuard来混淆代码。它通过删除未使用的代码并使用语义模糊的名称重命名类,字段和方法来优化和混淆代码。结果是较小的.apk文件,更难以进行逆向工程。这样你的代码就会更加防篡改。

参考:developer.android