C#软件如何良好的防止反编译被破解?

 我来答
sunzhaojie99
2018-03-21 · 贡献了超过148个回答
知道答主
回答量:148
采纳率:0%
帮助的人:17.1万
展开全部

1. .NET这个技术其实是适合用来做互联网软件的,不适合用来开发单机软件,所以其中一个思路就是把你的产品给互联网化,引入服务器参与。2. .NET也有将代码转换为本机代码的办法,.NET开发包里有个叫NGEN的工具,可以把中间代码客户端转换成本机代码客户端,用转换后的客户端来进行发布,一方面可以增强运行的性能,另一方面也加大了破解的难度。

可以使用 Dotfuscator Community Edition。但是该工具只是改变变量名和进行低级地控制流混淆,可以延长破解者的时间,做一般防范是可以用的。

另外也可以使用一些更为专业的软件保护工具,比如themida。但是其专业版是要收费的。

用C#或java这种编译为中间代码的语言从根本上不可能做到真正的编译,从中间代码上都很轻易地还原出原始代码。用混淆只是增加还原后代码读懂的难度。

如果要从根本上解决你的问题,办法就是不把所有代码放到客户机上,比如说大部分代码放在云上执行,让用户无从破解。

推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式