pax*_*blo 35
不.你可以让反编译变得更加困难,但是你无法阻止它.我的建议是不要浪费你的时间,而是集中精力提供具有不断改进功能的出色产品.
然后人们愿意为此付出代价.
您的主要问题是使代码无法解密的唯一方法是使其无法运行.任何可以加载到PC中的东西都可以破解.那些为了娱乐,利润或名望而进行逆向工程的人通常都非常擅长这一点,而且你所做的任何尝试和阻止他们的工作都不会分开.
他们可以访问工具,使得解密代码的工作比模糊处理工作容易得多:-)更好地说服全世界你的软件值得购买,并将盗版视为可能转换的机会"盗贼"给真正的用户.
例如,找出为什么他们不支付你的软件,并尝试解决这个问题.你永远不会转换100%的人,有些人只是为了它的乐趣而盗用你的代码.
退房系列上运行过的文章Techdirt的关于CWF + RTB(连接带风扇和购买理由).我发现那里提出的许多观点可能适用于软件行业.
小智 6
反编译(No More Gotos)和混淆实践(Flowtables)和理论(不可区分性混淆)都是活跃的研究领域,因此没有解决方案 - 只有工具、技术和专业知识。如果您确实希望您的代码不受反编译影响,请创建一个 Web 应用程序,并将敏感代码放在服务器端。但是,如果您坚持向某人提供二进制文件的模式,那么您必须明智地判断您想要在安全性和性能之间做出的权衡。混淆是有代价的,而且永远不会是完美的。一些选项
不要因为 Barak 等人关于黑盒混淆的不可能性的开创性工作而气馁。他只是证明了黑盒混淆器的不可能性,而不是许多实用且有价值的混淆器的不可能性。(黑盒混淆是程序的内部运作完全难以理解)也不要被盗版者气馁。如果你的产品好的话,总会有人愿意购买。