混淆器我这里有一个C#的代码混淆器的源码,但是看不懂是怎么实现的,程序的算法是什么也不知道怎么找,求帮助

混淆器  时间:2021-09-07  阅读:()

java混淆器是做什么的?

用java写的代码 编译后成为.class文件 但是这个class文件可以被反编译查看到源代码 如果代码作者不希望源代码被别人看到 就利用混淆器把源代码混淆 但是程序功能还是正常的,编译后供别人使用,当别人反编译class文件想查看源代码时发现的是被混淆后的代码,虽然这些混淆后的代码也可以分析出来但是很困难 举个例子 class Person { private String name; private int age; public Person( String n, int a ){ name = n; age = a; } } 混淆后 class OOOOo{ private String oooo; private int ooo; public OOOOo( String oo, int o){ oooo = oo; ooo = o; } }

javacompile混淆器怎么混淆后的class文件还是可以被反编译出来呢?求高手指点....

混淆的作用并不是使class文件不能被反编译 混淆的作用是使反编译的代码更难让人阅读,比如一些计算金钱的敏感逻辑里有如下的代码(新金额=旧金额*某个倍率): double newMoney=oldMoney*rate; 如果这样的代码直接编译成class文件,别人反编译这个class文件就能很清楚的看到金钱的计算关系,混淆后代码可能就变成这样的了: double a=b*c; 这样的代码别人即使反编译了,也是很难看懂其中的逻辑关系的

我这里有一个C#的代码混淆器的源码,但是看不懂是怎么实现的,程序的算法是什么也不知道怎么找,求帮助

能力有限,只能说说我看到的东西。

代码混淆的触发是在函数btnGenerate_Click里面 //这里声明了一个混淆器 Obfuscator?obfuscator?=?new?Obfuscator(txtBuildPath.Text,? ???????????????????????????????????????chkObfuscateTypes.Checked, ???????????????????????????????????????chkObfuscateMethods.Checked,? ???????????????????????????????????????chkObfuscateNamespaces.Checked,? ???????????????????????????????????????chkObfuscateProperties.Checked,? ???????????????????????????????????????chkObfuscateFields.Checked);//这里把窗口的数据写入混淆器 foreach?(TreeNode?node?Assemblies.Nodes[0].Nodes) { obfuscator.AddAssembly(node.Text,?node.Checked); //?Exclusions foreach?(TreeNode?typeNode?in?node.Nodes) if?(!typeNode.Checked) obfuscator.ExcludeType(((Type)typeNode.Tag).FullName); }//这一句开始执行混淆算法,并保存 obfuscator.StartObfuscation();而具体的混淆算法在文件Obfuscation2Obfuscator.cs中。

详细在函数AsyncStartObfuscation中。

public?void?StartObfuscation() { Thread?thread?=?new?Thread(new?ThreadStart(AsyncStartObfuscation)); thread.Start(); } private?void?AsyncStartObfuscation(){...}在这个函数里面,执行ObfuscateType、ObfuscateNamespace、ObfuscateResource等方法。

而在ObfuscateType里面又分别执行ObfuscateMethod、ObfuscateProperty、ObfuscateField等方法。

具体算法怎么实现的,详细看看上面这些方法里面的代码吧。

旅途云(¥48 / 月),雅安高防4核4G、洛阳BGP 2核2G

公司成立于2007年,是国内领先的互联网业务平台服务提供商。公司专注为用户提供低价高性能云计算产品,致力于云计算应用的易用性开发,并引导云计算在国内普及。目前,旅途云公司研发以及运营云服务基础设施服务平台(IaaS),面向全球客户提供基于云计算的IT解决方案与客户服务,拥有丰富的国内BGP、双线高防、香港等优质的IDC资源。点击进入:旅途云官方网商家LOGO优惠方案:CPU内存硬盘带宽/流量/防御...

TTcloud(月$70)E3-1270V3 8GB内存 10Mbps带宽 ,日本独立服务器

关于TTCLOUD服务商在今年初的时候有介绍过一次,而且对于他们家的美国圣何塞服务器有过简单的测评,这个服务商主要是提供独立服务器业务的。目前托管硬件已经达到5000台服务器或节点,主要经营圣何塞,洛杉矶以及日本东京三个地区的数据中心业务。这次看到商家有推出了新上架的日本独立服务器促销活动,价格 $70/月起,季付送10Mbps带宽。也可以跟进客户的需求进行各种DIY定制。内存CPU硬盘流量带宽价...

hostkey荷兰/俄罗斯机房,GPU服务器

hostkey应该不用说大家都是比较熟悉的荷兰服务器品牌商家,主打荷兰、俄罗斯机房的独立服务器,包括常规服务器、AMD和Intel I9高频服务器、GPU服务器、高防服务器;当然,美国服务器也有,在纽约机房!官方网站:https://hostkey.com/gpu-dedicated-servers/比特币、信用卡、PayPal、支付宝、webmoney都可以付款!CPU类型AMD Ryzen9 ...

混淆器为你推荐
rangepython 的range()函数怎么使用,为什么单独运行print(range(1,5))输出还是range(1,5),而不是[1,2,3,4]教学视频网站谁有各种教学视频网站呀.?工作经验介绍工作经历简介怎么写官方网店淘宝的官方网和旗舰店有什么区别?海淀区公司注册注册海淀公司需要验资报告吗约束是什么意思约束,是什么意思。如有回答,请详细,360官网打不开360官网进不了怎么办安全工程师待遇注册安全工程师现在一般工资是多少?未来前景如何key网我办了邮政u_key在网上如何付款硬盘文件不显示我的电脑的D,E,F硬盘里面的文件夹不显示了,怎么才能显示出来?
下载虚拟主机 budgetvm 主机 windows主机 国外服务器 rak机房 贵州电信宽带测速 100m免费空间 169邮箱 网通服务器托管 四核服务器 免费的域名 西安主机 空间服务器 国内空间 japanese50m咸熟 美国十大啦 winserver2008下载 傲盾代理 cdn免备案空间 更多