如何保护我的应用程序免遭盗版
可能的重复:
软件许可证密钥是如何生成的?
我是软件开发的初学者,并且我我想知道如何在我的 Java 应用程序上实施保护系统以防止盗版。我知道没有完美的解决方案。但我只是想知道如何保护它。并且不要告诉我将其开源,这对我来说是不可能的:)。
感谢您的时间和答复。
Possible Duplicate:
How are Software License Keys generated?
I am a beginner in software developement and I would like to know how to implement a protection system on my Java app to protect it against piracy. I know that there's no perfect solution. But i just want to know how protect it. And don't tell me to make it open source,it's impossible in my case :).
Thanks for your time and answers.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
由于任何许可证强制执行解决方案都可以通过一些努力来破解,因此我建议您根本不要尝试实施复制保护。许可证管理对您的用户来说只是不方便。
如果您决定实施复制保护,则可以使用开源库。
此外,您应该混淆您的字节代码,使其稍微更多很难对您的应用程序进行逆向工程。
As any license enforcement solution can be cracked with a bit of effort, I suggest you don't try to implement copy-protection at all. License management is just inconvenient for your users.
If you are determined to implement copy-protection, you can use an open-source library.
Additionally, you should obfuscate your byte code to make it slightly more difficult to reverse-engineer your application.
几年前我就考虑过这个问题。最终我决定不授予它许可;我免费赠送了它,但我认为我最好的想法是:
向他们发送包含密钥的许可证文件。使用他们的全名和电子邮件地址或同等个人的名称来命名该文件,并确保重命名会使密钥失效。这应该很容易实现。您可以使用许多不需要将密钥存储在应用程序中的技术。
与任何系统一样,这并不是无法破解的,但正如多年前向我解释的那样,安全性是为了让诚实的人保持诚实。
I considered this some years ago. Eventually I decided not to license it; I gave it away for free but I think my best idea was:
Send them a license file containing a key. Name the file with their full name and e-mail address or something equally personal and make sure renaming it will invalidate the key. This should be simple to achieve. There are many techniques you could use that would not require storing the key in your application.
Like any system, this is not uncrackable but as was explained to me many years ago, security is for keeping honest people honest.