问题描述
我想使用PayPal销售我的Java应用程序。收到付款后,客户会通过邮件向我的应用程序发送一次性下载链接。
I want to sell my Java application using PayPal. When a payment is received, the customer is mailed a one-time download link to my application.
我的问题是,如何阻止人们发送.jar文件给他们的朋友/上传到互联网上?
My question is, how do I prevent people from sending the .jar file to their friends/uploading it on the internet?
显然我需要在应用程序中进行某种检查,只允许它在一台计算机上运行。这是另一个问题,我不希望客户在一台计算机上有限制,他们应该能够在家里和工作中运行等。
Obviously I need some kind of check in the application which only allows it to run on one computer. And that's another problem, I don't want a customer to have limitations on one computer, they should be able to run it at home and work etc.
也许某种cd-key可以解决这个问题吗?那里有Java的任何cd-key资源吗?或者我应该建立自己的算法?这是另一个问题,逆向工程..
Maybe some kind of cd-key would do the trick? Is there any cd-key resources for Java out there? Or should i build my own algorithm? Here comes yet another problem, reverse engineering..
请帮我解决这个问题:)
Please help me solve this :)
推荐答案
处理此问题的最常见方法是:客户为您提供资金,您生成一个独特的解锁密钥并将其提供给客户。密钥应该是有效的解锁密钥,并且应该编码关于用户的标识信息。客户使用该密钥在他们喜欢的任意数量的计算机上安装,或许可证允许。
The most common way to handle this is: customer gives you money, you generate a unique unlock key and provide that to the customer. The key should be a valid unlock key, and it should encode identification information about the user. Customer uses that key to install on as many of their computers as they like, or is allowed by the license.
不要担心逆向工程。你的产品,如果它受欢迎,将被盗版 - 如果你看起来足够努力,你会发现在线解锁密钥。如果你愿意,你可以把它作为一种恭维 - 有人喜欢你的软件足以窃取它。我知道,冷酷的安慰,但另一种选择是与海盗进行军备竞赛,你不会赢得那个。最后,只有百分之几的人会窃取软件,而你却无法做很多事情。您可以使用密钥的标识信息(如果您的方案足够强大),以便跟踪首先释放密钥的人。
Don't worry about reverse-engineering. Your product, if it's at all popular, will be pirated - you'll find unlock keys online if you look hard enough. If you like, you can take that as a compliment - someone liked your software enough to steal it. Cold comfort, I know, but the alternative is to get in an arms race with the pirates, and you won't win that. In the end, a few percent of the population will steal software, and you can't do much about that. You can use the key's identification information, if your scheme is strong enough, to trace who released the key in the first place.
这篇关于如何复制保护我的Java应用程序?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!