5

我正在使用 cocoafob 进行许可。不幸的是,我的应用程序在每次发布后总是很快被破解。有没有办法让这变得更加困难?

4

1 回答 1

8

在我个人看来,使用破解版应用程序的人不太可能成为付费客户。将破解/盗版/被盗副本等同于出售副本的论点是错误的。

也就是说,您可以阅读有关逆向工程 Mac OS X/Cocoa 应用程序以了解其工作原理(Charles Miller/Dino Dai Zovi 的“Mac Hacker's Handbook”是该主题的好书,或者如果您想要在线资源查找Phrack 杂志第 66 期)。

一旦您了解了攻击者如何在您的应用程序中破坏许可证保护,您可以尝试使其更难一些,但您必须了解没有办法阻止有动机的攻击者。使用 Apple 的 Mac 商店并花时间构建应用程序可能是一个更好的主意。

您可能需要考虑的事项:

  • 用 C 或 C++ 编写您的许可证检查代码。让它根据事件循环中的触发条件运行(例如 UI 触发的东西)-> 这使得攻击者更难在您的许可证检查代码上设置断点

  • 不要以明显的方式命名您的许可证检查代码

  • 确保符号被剥离(这在 ObjC 中不起作用,因为运行时因此需要混淆许可证检查方法名称)

  • 尽量不要将许可证读取代码与许可证解释代码组合在一起(这样,查看打开的文件描述符的攻击者将不得不在其他地方挖掘解释代码)。

于 2011-01-31T15:26:34.117 回答