可能的重复项:
软件许可证密钥是如何生成的?
我是软件开发的初学者,我想知道如何在我的 Java 应用程序上实现保护系统以保护它免受盗版。我知道没有完美的解决方案。但我只想知道如何保护它。不要告诉我让它开源,这在我的情况下是不可能的:)。
感谢您的时间和答案。
由于任何许可证执行解决方案都可以通过一些努力来破解,我建议您根本不尝试实施复制保护。许可证管理对您的用户来说很不方便。
如果您决定实施复制保护,则可以使用开源库。
此外,您应该对字节代码进行模糊处理,以使对应用程序进行反向工程变得更加困难。
几年前我考虑过这个问题。最终我决定不许可它;我免费赠送了它,但我认为我最好的主意是:
向他们发送包含密钥的许可证文件。使用文件的全名和电子邮件地址或同样个人的名称命名文件,并确保重命名文件将使密钥无效。这应该很容易实现。可以使用许多不需要在应用程序中存储密钥的技术。
像任何系统一样,这并非不可破解,但正如多年前向我解释的那样,安全是为了保持诚实的人诚实。