如何最好地混淆我的C#.net app产品密钥验证码?
是否足以将其置于"内部密封类CLASSNAME {};" 还是我需要做更多?
谢谢!
访问修饰符喜欢internal
和sealed
不具有任何与混淆或代码的安全性,他们只是告诉其他类如何交互(或不交互)他们.
在一天结束时,你无法阻止盗版.一个人创造的任何东西都可以被另一个人打破.SO上有很多问题涉及产品密钥,保证软件安全等等,如果您使用右上角的搜索机制,可以找到这些问题.所有答案都涵盖了一些基本的想法,任何有意义的人都会告诉你:
只有在你的反盗版措施上投入足够的精力才能使破解软件比打破信用卡更方便.如果这真的很难做到,那么对于您的客户群来说,收费太多了.
如果你专注于与客户建立积极的关系而不是假设他们是罪犯,他们会更愿意给你钱.
大多数客户 - 个人,特别是公司 - 没有兴趣打开你的组件并试图弄清楚如何逃避不付钱给你.对于个人而言,无论如何他们都不会为此付费,因此您不会失去销售; 对于一些软件许可证的成本,公司不会冒大量现金出现法律问题.
研究公钥/私钥和椭圆密钥加密技术,您将找到保护密钥算法的方法,但它只能防止破解密钥,而不是绕过密钥.