I have a standalone Java application that has some licensing code that I want to protect, that is, prevent users from changing software to bypass licensing. What is the best way to do this?
I looked at obfuscation, but this entails all kinds of problems: reflection, serialization, confused stack stacks, etc. Maybe signing a jar might be the solution? But how can I check the jar at runtime? And how can I guarantee that the user does not change the bank verification code?
Sorry if your users are careful enough to interfere with your class files, they first remove the signature verification features. I agree with obfuscation, but shouldn't a good obfuscator keep any dictionary for converting stack obfuscation for you?
This discussion is really old and really very complicated. Just look at the gaming industry. Maybe you should consider shipping a guitar with your application?
Combine the two and you should have good synergies.
This is a legal issue, not a software issue.
, . , .
, , .
, , (, , ), , - . MP3 T-Pain, . , , - , .
, . , , , , ( , ).
.
. Pls. .
- http://java.sun.com/docs/books/tutorial/deployment/jar/sealman.html
java.sun.com/developer/JDCTechTips/2001/tt0130.html