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

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

酷番云78元台湾精品CN2 2核 1G 60G SSD硬盘

酷番云怎么样?酷番云就不讲太多了,介绍过很多次,老牌商家完事,最近有不少小伙伴,一直问我台湾VPS,比较难找好的商家,台湾VPS本来就比较少,也介绍了不少商家,线路都不是很好,有些需求支持Windows是比较少的,这里我们就给大家测评下 酷番云的台湾VPS,支持多个版本Linux和Windows操作系统,提供了CN2线路,并且还是原生IP,更惊喜的是提供的是无限流量。有需求的可以试试。可以看到回程...

妮妮云(30元),美国300G防御 2核4G 107.6元,美国高速建站 2核2G

妮妮云的来历妮妮云是 789 陈总 张总 三方共同投资建立的网站 本着“良心 便宜 稳定”的初衷 为小白用户避免被坑妮妮云的市场定位妮妮云主要代理市场稳定速度的云服务器产品,避免新手购买云服务器的时候众多商家不知道如何选择,妮妮云就帮你选择好了产品,无需承担购买风险,不用担心出现被跑路 被诈骗的情况。妮妮云的售后保证妮妮云退款 通过于合作商的友好协商,云服务器提供2天内全额退款,超过2天不退款 物...

选择Vultr VPS主机不支持支付宝付款的解决方案

在刚才更新Vultr 新年福利文章的时候突然想到前几天有网友问到自己有在Vultr 注册账户的时候无法用支付宝付款的问题,当时有帮助他给予解决,这里正好顺带一并介绍整理出来。毕竟对于来说,虽然使用的服务器不多,但是至少是见过世面的,大大小小商家的一些特性特征还是比较清楚的。在这篇文章中,和大家分享如果我们有在Vultr新注册账户或者充值购买云服务器的时候,不支持支付宝付款的原因。毕竟我们是知道的,...

混淆器为你推荐
返回vivo返回键怎么设置fast路由器FAST无线路由器要怎么设置招行信用卡还款招行信用卡怎么还款监控员工单位要装摄像头监控员工犯法吗sg什么意思篮球中内线和外线是什么意思趋势防毒趋势杀毒好用吗?怎样上传照片怎么上传照片?宴请网怎样拉别人进我的短号集群网?我只是在那个网里面 可以邀请别人进来这个网吗?amv格式电影AMV格式的电影有哪些!跨境电商开发跨境电商怎么做
私服服务器租用 双线vps 域名备案中心 如何申请免费域名 赵容 韩国电信 godaddy续费优惠码 免费名片模板 全能主机 好看qq空间 tna官网 免费phpmysql空间 上海服务器 免费网页申请 四核服务器 申请网页 网页提速 备案空间 游戏服务器出租 摩尔庄园注册 更多