C#.Net加密工具dng和vmp谁更强呢

DNGuad_HVM(简称DHVM)和vmproject(简称VMP),这两款工具都是.Net里面鼎鼎大名的加密工具。它们谁更强呢?

之前介绍过市面上流行的几款加密工具,比如
Dotfuscator,ReactorIL,Protector,Axprotect。这几款几乎都可以一键脱壳,所以这里不再推荐,只是看看更加高端的MSIL+JIT加密和虚拟机加密的模式。.

DHVM,它采用的是MSIL+JIT加密的模式。DHVM会把C#源码的MSIL解析成二进制存入到HVMRun64.dll里面去。运行的时候,Hook JIT把MSIL放到原位置上。并且添加了反调试机制,比如调试器进入会导致异常,静态地址动态运行位移,IAT表的Name字段只能为0等。这种强力的加密模式几乎可以阻断90%以上的程序员的破解。如果你要破解它,需要对CLR,JIT,intel指令,反调试原理了如指掌。但是这不代表不能够破解,依然有微小概率。

VMP,它采用的是虚拟机加密的模式。它有一个完整的虚拟机对MSIL代码进行各种混淆,加密,以及更改逻辑流程。一个托管的Main函数,能被它加密到800个函数以上的逻辑。如果要破解它,需要极大的耐心去慢慢的跟踪。

总结下,就是DHVM是需要掌握极高的一些知识点,就不难弄懂它的原理,进而对它进行操作。而VMP则是,自带了虚拟机编译。它把原有的代码按照VMP自己的格式进行了编译,除非你对VMP非常熟悉,再加上非常大的耐心。否则可能会半途而废。

通过以上可以看到,DHVM和VMP的侧重点不同,个人倾向于VMP略微强于DHVM。

了解和查找破绽是为了更好的保护C#.Net版权。以上仅为学习用途。