Java Jar安全

Java Jar安全,java,security,Java,Security,我有一个独立的Java应用程序,其中包含一些我想要保护的许可代码,即防止用户更改我的软件以规避许可。最好的方法是什么 我已经研究过模糊处理,但这会带来各种各样的问题:反射、序列化、混乱的堆栈跟踪等等。也许jar签名可以作为一种解决方案?但是如何在运行时验证jar呢?如何确保用户不更改jar验证码?您可以密封jar。请。有关详细信息,请参阅以下链接 -- java.sun.com/developer/JDCTechTips/2001/tt0130.html对不起,如果您的用户足够精明,可以篡改您的

我有一个独立的Java应用程序,其中包含一些我想要保护的许可代码,即防止用户更改我的软件以规避许可。最好的方法是什么


我已经研究过模糊处理,但这会带来各种各样的问题:反射、序列化、混乱的堆栈跟踪等等。也许jar签名可以作为一种解决方案?但是如何在运行时验证jar呢?如何确保用户不更改jar验证码?

您可以密封jar。请。有关详细信息,请参阅以下链接

--


java.sun.com/developer/JDCTechTips/2001/tt0130.html

对不起,如果您的用户足够精明,可以篡改您的类文件,他们会首先删除签名检查功能。 我同意模糊处理,但是一个好的模糊处理人员不应该保留一些字典来为您转换模糊处理的堆栈跟踪吗

这个讨论非常古老,非常复杂。看看游戏行业吧。也许你应该考虑用你的应用程序弹奏吉他?


把两者结合起来,你就会有很好的协同效应。

这是一个法律问题,而不是软件问题

您可以让第一个用户更难复制,但并非不可能。一旦下定决心的攻击者破坏了您的安全,他就可以为懒惰者制作无限数量的副本

如果你认为这是有利可图的,起诉那些未经许可复制你的软件的人


我相信,故意窃取你的软件(或者更一般地说,是知识产权)的用户比例因媒体类型而异,对于大多数产品而言,这一比例相对较小。如果你在销售T-Pain MP3,偷窃可能会毁掉你的生意。否则,请采取信用卡公司的立场,他们希望容忍欺诈造成的一些损失,但仍能盈利。

我们目前使用模糊器,提供合理的攻击防护。我们现在使用的这个工具提供了一个堆栈跟踪工具,当它们从另一端出现时(基于模糊处理时生成的日志文件),该工具将对它们进行模糊处理


即使这样,也无法真正保护用户免受恶意代码的侵害。

这可以保护用户免受恶意代码的侵害。它不能保护代码免受坏用户的攻击。