使用加密文件的应用程序复制保护
本文关键字:应用程序 复制保护 文件 加密 | 更新日期: 2023-09-27 18:30:34
我正在开发一个桌面应用程序,我想在某个时候开始销售它,所以我开始将许可证数据(例如:开始日期、许可证持续时间等)放在加密文件中,在应用程序运行时它会解密文件并获取许可证数据进行检查。
问题是这种方法足以用于复制保护吗?
这个问题非常广泛,但简短的回答是:这取决于您的威胁模型。由于应用程序必须解密文件以检查其内容,因此该文件必须位于客户端计算机上(以及解密密钥),因此如果有人想要破解它,他们将有一个现场日。(他们可以将调试器附加到您的进程并跟踪处理保护的代码,然后修补可执行文件或弄清楚如何生成有效的许可证文件。在我什至没有想到的其他可能的方法中。
如果您认真对待保护您的软件,并且您认为您的程序会非常受欢迎,以至于许多用户会尝试盗版它,请购买专业的解决方案 - 您将获得有关设置它的专业建议,并且保护可能已经在其他产品中进行了测试。
如果这太昂贵,请重新评估是否需要复制保护。大多数自制计划都可以在短时间内破解,它们最终会惹恼您的合法用户,这可能会让您头疼。您必须支持您的保护计划,并随着产品的发展而不断更新。保持许可证向后兼容,同时保持用户友好和难以破解是很棘手的。
一个可能的解决方案是执行互联网许可证检查,但这有其自身的缺点,而且也不是防破解的。如果您致力于推出自己的保护方案,请准备好编写大量复杂的代码,全部使用 C 或C++。(C# 可以使用免费的开源工具进行反编译。
在你这样做之前,问问自己:你的时间不是最好花在新功能上,而不是许可不能改善应用程序本身的代码吗?