混淆器我这里有一个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等方法。

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

pacificrack:$12/年-1G内存/1核/20gSSD/500g流量/1Gbps带宽

pacificrack在最新的7月促销里面增加了2个更加便宜的,一个月付1.5美元,一个年付12美元,带宽都是1Gbps。整个系列都是PR-M,也就是魔方的后台管理。2G内存起步的支持Windows 7、10、Server 2003\2008\2012\2016\2019以及常规版本的Linux!官方网站:https://pacificrack.com支持PayPal、支付宝等方式付款7月秒杀VP...

Buyvm:VPS/块存储补货1Gbps不限流量/$2起/月

BuyVM测评,BuyVM怎么样?BuyVM好不好?BuyVM,2010年成立的国外老牌稳定商家,Frantech Solutions旗下,主要提供基于KVM的VPS服务器,数据中心有拉斯维加斯、纽约、卢森堡,付费可选强大的DDOS防护(月付3美金),特色是1Gbps不限流量,稳定商家,而且卢森堡不限版权。1G或以上内存可以安装Windows 2012 64bit,无需任何费用,所有型号包括免费的...

快快云:香港沙田CN2/美国Cera大宽带/日本CN2,三网直连CN2 GIA云服务器和独立服务器

快快云怎么样?快快云是一家成立于2021年的主机服务商,致力于为用户提供高性价比稳定快速的主机托管服务,快快云目前提供有香港云服务器、美国云服务器、日本云服务器、香港独立服务器、美国独立服务器,日本独立服务器。快快云专注为个人开发者用户,中小型,大型企业用户提供一站式核心网络云端服务部署,促使用户云端部署化简为零,轻松快捷运用云计算!多年云计算领域服务经验,遍布亚太地区的海量节点为业务推进提供强大...

混淆器为你推荐
电脑手机网页浏览器手机模拟电脑浏览器信件格式信件格式怎么写开发者账号如何免费申请开发者账号小项目奥运会一共有几个大项目小项目?4g上网卡4G手机上网卡和4G网络是什么意思?burndown如何画burndown chart售后软件vivo售后的软件可以删吗硬盘分区格式化新硬盘分区格式化有哪些方法?sg什么意思机油,SG,SJ,SL,SM,SN代表什么意思1,越详细越好黑屏操作麻烦问一下 黑屏的各个指令
php主机租用 bluehost NetSpeeder 网盘申请 国外在线代理 我爱水煮鱼 新天域互联 lol台服官网 万网空间购买 in域名 drupal安装 空间登录首页 海外空间 工信部网站备案查询 摩尔庄园注册 xuni 国外网页代理 cdn服务 阿里云邮箱怎么注册 开心online 更多