请教.net4.0以上的程序可用的混淆和加壳工具和基本概念

nomad_aa 2014-05-08 11:08:29
说说背景:
.net 开发做了这么久,但是混淆和加壳到现在基本没用过,问了下公司其他部门的开发,也说是不用混淆和加壳的。汗,大环境使然吧。最近比较空闲,所以也开始研究一下混淆和加壳吧。

问题:
1.想学习这方面的知识,有没有什么推荐的网站或者书籍的?最好从0开始可以自己慢慢摸索的,有的论坛适合提问,但是我几乎0基础过去问小白问题我自己也不好意思。
2.希望大家能够推荐1款以上实用的混淆工具。我用了vs自带的混淆工具(未注册),似乎只能混淆private的东西。还下载了xenocode(Postbuild 2010 for .NET),但是我win8系统运行都运行不起来。
3.其他下载了几个工具,但是杀毒软件表示有病毒,由于目前毫无概念,所以暂时也不敢乱动。所以问问是不是这类工具,一般需要无视杀毒软件运行的?

非常感谢大家。
...全文
711 17 打赏 收藏 转发到动态 举报
写回复
用AI写文章
17 条回复
切换为时间正序
请发表友善的回复…
发表回复
c88667220 2016-01-17
  • 打赏
  • 举报
回复
我也赞同要加密,比如你找出一个自动群发QQ信息或者自动加好友的点子,我为什么要把这个赚钱的劳动成果告诉别人,而自己白忙活几个月呢 我是傻逼么
此余生安 2015-09-29
  • 打赏
  • 举报
回复
引用 15 楼 assicen 的回复:
看完之后感觉楼主挺冤,自己写的软件,保护自己的知识产权难道有错吗? 你拿汽车举例子,太可笑了。复制一台汽车只需要点几下鼠标,复制粘贴就可以做到的吗?成本上的差异根本是天壤之别!你别侮辱汽车这个行 业。 现在做破解的人,一部分破解后有共享精神,放在网上供大家免费使用,这个暂且不论。但是有些人破解后,里面夹杂恶意代码,损害了用户的 利益,而原作者有可能要承担法律责任,那么原作者在之前如果做好了防破解措施,这些情况就不会发生,难道他们有错吗? 别站着说话不腰疼! 另外 求12楼的大神告诉我一款用c#做的不混淆的、不加壳的、大型的、复杂的、我看不懂的、成功商业化的应用。
赞同,其实,个人感觉某些人讨论应该忘记了混淆处理的出发点——只是为了增加别人破解的代价!
assicen 2015-08-26
  • 打赏
  • 举报
回复
看完之后感觉楼主挺冤,自己写的软件,保护自己的知识产权难道有错吗? 你拿汽车举例子,太可笑了。复制一台汽车只需要点几下鼠标,复制粘贴就可以做到的吗?成本上的差异根本是天壤之别!你别侮辱汽车这个行 业。 现在做破解的人,一部分破解后有共享精神,放在网上供大家免费使用,这个暂且不论。但是有些人破解后,里面夹杂恶意代码,损害了用户的 利益,而原作者有可能要承担法律责任,那么原作者在之前如果做好了防破解措施,这些情况就不会发生,难道他们有错吗? 别站着说话不腰疼! 另外 求12楼的大神告诉我一款用c#做的不混淆的、不加壳的、大型的、复杂的、我看不懂的、成功商业化的应用。
DongXiaorui 2015-08-14
  • 打赏
  • 举报
回复
楼上一众大神出来秀优越感,越看越难受,老喜欢妄议别人,会就说,不会就喷人家做法不对
lyl222 2015-02-04
  • 打赏
  • 举报
回复
同情一下楼主,楼主只是抛出个小问题,招来这么多大神的批判反驳
  • 打赏
  • 举报
回复
我们随便拿任何一个行业的设计来说吧,比如说汽车设计,如果一个企业向市场上推出了一款汽车,它就根本挡不住竞争企业去买来一辆汽车然后拆解分析。 而此时,只有只会在课堂上纸上谈兵的汽车设计师,才会感慨“既然只要是制造出汽车来就会被别人拆解分析,那么干脆永远别实干地制作汽车了,只是自己偷偷在家玩儿设计吧!或者制作出来的汽车必须是一个“死疙瘩”一旦被打开见光就自动销毁吧!“。 而人家专业的设计师和厂家,可不是这么幼稚地整天担心这个。而是成熟的市场化地推出汽车。
  • 打赏
  • 举报
回复
引用 10 楼 liucqa 的回复:
我之前也说过,我也反编译过别人的代码,如果我需要的话我可以直接拿来使用(当然我实际上并没有),这样我就以几乎0成本的获取了别人的劳动成果,甚至用此盈利。而我则不希望别人不通过我的同意就使用我的代码(虽然一般情况下我都会同意的,只是希望知会我一声而已,我的编码水平也不高)。
你越是只能写个课堂练习,越会非常在意别人反编译,而且还会很扭捏地如此纠结。而如果你写较大规模一点的系统的客户端部分,其中包含大量语法糖产生的复杂代码,反编译跟原代码根本是不对应的,而且不过是多层系统中的一小部分(也就是说没有面对面的讲解,你根本连最肤浅的部分都看不懂),此时你根本看不懂。 比如说别人用几万行javascript代码jQuery而写的类库,完全开放源代码的吧?你看得懂几行源代码呢? 如果你只写那么点代码就整天抱着她欣赏了,没有市场进化观念,没有大型的网络系统应用,才会特别纠结在这一点上。
泡泡龙 2014-05-12
  • 打赏
  • 举报
回复
是否混淆加壳取决于多个方面,例如产品价值、破解的成本和实际损失、客户群体、市场环境等等。 不过,这一切的前提是你的软件被较多的用户使用,否则谈什么都是多余的 [/quote] 那请问从你的观点出发,自己写的代码,会做一些混淆或者加壳处理吗?有理由吗? 我之前也说过,我也反编译过别人的代码,如果我需要的话我可以直接拿来使用(当然我实际上并没有),这样我就以几乎0成本的获取了别人的劳动成果,甚至用此盈利。而我则不希望别人不通过我的同意就使用我的代码(虽然一般情况下我都会同意的,只是希望知会我一声而已,我的编码水平也不高)。[/quote]
nomad_aa 2014-05-12
  • 打赏
  • 举报
回复
引用 6 楼 liucqa 的回复:
[quote=引用 4 楼 nomad_aa 的回复:] [quote=引用 2 楼 liucqa 的回复:] 混淆一般不会报毒,但很容易被反混淆 加壳很容易被报毒,但一般不会被简单破解 你先想清楚为什么要混淆,为什么要加壳,值不值得混淆和加壳,然后再找工具
我就是很简单的想法:不希望自己的代码被别人轻易破解查看并使用。 因为自己也使用过工具反编译过别人的代码,不通过混淆和加壳等手段,直接能得到源代码[/quote] 从另一个角度看,如果你的软件会导致别人破解的话,说明有人愿意给你免费打广告推广市场,这反而是好事 你想想就明白了 软件从来不是靠加密加壳混淆来保护自身的,是靠持续不断的技术升级和长期的客户维护来保证正版的采购率 如果你的软件很小的话,或者仅仅是一个小程序,完全没有加密的必要,破解并不一定是坏事... [/quote] 那请问从你的观点出发,自己写的代码,会做一些混淆或者加壳处理吗?有理由吗? 我之前也说过,我也反编译过别人的代码,如果我需要的话我可以直接拿来使用(当然我实际上并没有),这样我就以几乎0成本的获取了别人的劳动成果,甚至用此盈利。而我则不希望别人不通过我的同意就使用我的代码(虽然一般情况下我都会同意的,只是希望知会我一声而已,我的编码水平也不高)。
泡泡龙 2014-05-08
  • 打赏
  • 举报
回复
引用 7 楼 zylsky 的回复:
[quote=引用 2 楼 liucqa 的回复:] 混淆一般不会报毒,但很容易被反混淆 加壳很容易被报毒,但一般不会被简单破解 你先想清楚为什么要混淆,为什么要加壳,值不值得混淆和加壳,然后再找工具
用vs自带的混淆工具混淆后的代码应该是无法反混淆的吧,变量名方法名都变成abc了,怎么反混淆呢?[/quote] 反混淆不仅仅是为了还原变量名,你去看雪吧
欢乐的小猪 2014-05-08
  • 打赏
  • 举报
回复
去看雪学院逛逛
zylsky 2014-05-08
  • 打赏
  • 举报
回复
引用 2 楼 liucqa 的回复:
混淆一般不会报毒,但很容易被反混淆 加壳很容易被报毒,但一般不会被简单破解 你先想清楚为什么要混淆,为什么要加壳,值不值得混淆和加壳,然后再找工具
用vs自带的混淆工具混淆后的代码应该是无法反混淆的吧,变量名方法名都变成abc了,怎么反混淆呢?
泡泡龙 2014-05-08
  • 打赏
  • 举报
回复
引用 4 楼 nomad_aa 的回复:
[quote=引用 2 楼 liucqa 的回复:] 混淆一般不会报毒,但很容易被反混淆 加壳很容易被报毒,但一般不会被简单破解 你先想清楚为什么要混淆,为什么要加壳,值不值得混淆和加壳,然后再找工具
我就是很简单的想法:不希望自己的代码被别人轻易破解查看并使用。 因为自己也使用过工具反编译过别人的代码,不通过混淆和加壳等手段,直接能得到源代码[/quote] 从另一个角度看,如果你的软件会导致别人破解的话,说明有人愿意给你免费打广告推广市场,这反而是好事 你想想就明白了 软件从来不是靠加密加壳混淆来保护自身的,是靠持续不断的技术升级和长期的客户维护来保证正版的采购率 如果你的软件很小的话,或者仅仅是一个小程序,完全没有加密的必要,破解并不一定是坏事...
nomad_aa 2014-05-08
  • 打赏
  • 举报
回复
引用 1 楼 hbu_pig 的回复:
去看雪学院逛逛
谢谢,看雪上的一些文章的确满基础的,可以入门看
nomad_aa 2014-05-08
  • 打赏
  • 举报
回复
引用 2 楼 liucqa 的回复:
混淆一般不会报毒,但很容易被反混淆 加壳很容易被报毒,但一般不会被简单破解 你先想清楚为什么要混淆,为什么要加壳,值不值得混淆和加壳,然后再找工具
我就是很简单的想法:不希望自己的代码被别人轻易破解查看并使用。 因为自己也使用过工具反编译过别人的代码,不通过混淆和加壳等手段,直接能得到源代码
泡泡龙 2014-05-08
  • 打赏
  • 举报
回复
混淆一般不会报毒,但很容易被反混淆 加壳很容易被报毒,但一般不会被简单破解 你先想清楚为什么要混淆,为什么要加壳,值不值得混淆和加壳,然后再找工具

110,567

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧