|
查看: 6166|回复: 64
|
如此.NET 何来商机?.NET程式可以被轻易反组译吗?
[复制链接]
|
|
|
排除跨平台目的、拥戴心情的前提下
相信所有的编程师都会被 C# 的强劲精简深深的吸引。
C# 带来前所未有的编程方式,
提供类似 VB 的简易语法配合依靠小巧的“助跑库”—— DotNet Frameworks (24MB,对目前的储存系统和网速实在不算大)
就能创造强劲的功能。
而且执行速度也不像传闻的差,在某些程度上简直可以媲美 C/C++
想必牺牲那少些的执行速度来减少一倍甚至一百倍的开发时间是非常值得。
C# 编应用程式简直就是神工鬼斧,
甚至某些范围上的系统程式也是易如反掌,并且拥有良好的效果。
C# 加上 Managed DirectX 编游戏天下无双,简 = 酷、炫、劲 聚一身。
既然 C# 在 Winbase 上的开发有如此成就,
为何 M$ 推广 DotNET 的热度却冷却了呢?
为何 M$ 急于推出 DotNET 2 而不是积极维护和增强 DotNET 1 ?
简单想想,原因无他……
就是 DotNET 出现严重病态!
其他病态暂且不说,
就先说大家最关切的问题,
商机、商业用途,
大家编程无非首要目的就是要开发一套可以盈利的引擎、应用程式、游戏,等等。
可是如此的 C# ,试问如何能够用于商业用途?
也许很多人不知道,可是事实就是事实:
C# 反编译实在是太简易了!
虽然任何程式语言都可以被反编译,可是 C# 未免太简易了,
简易无所谓,可是其被反编译的精纯度几乎是 99.9%
除了变量名有些许变动(也许现在连变量名也可以原汁原味了),
其他的竟然是原汁原味呈现出来。
把反编译的文件用 DotNET IDE 打开,选取 compile ,哈!同样的东西出来了。
还有最离谱的是:反编译程式竟然是 100% C# 所编
虽然有方法避免反编译获取 100% 精纯,但咱们暂且不谈。
如此一来,C# 编程就如同开原码(open source),
试问酱的东西如何用于商业用途?
编应用——根本就无法拥有自己独特的技术……
编系统——安全性等于零
编游戏——没有可玩性,因为没有“私隐”
大家起来研讨一会儿,
看看如此 C# 要如何取商机?
____________________________________________________________________________
在下并不赞同反编译是最快、好的学习、研究方法,
因为这严重侵犯了作者的智慧权益。
大家都是编程师,
相信各位都不希望自己研发很久的技术在百分秒内赤裸裸的展现在人们面前
如此的研发根本就没有价值,对吧?
所以请不要向在下索取反编译程式,
也不要到网络上搜寻以便用于反编译别人的血汗,
谢谢。
[ 本帖最后由 fxam 于 20-8-2005 08:27 PM 编辑 ] |
|
|
|
|
|
|
|
|
|
|
发表于 17-2-2005 10:48 AM
|
显示全部楼层
|
请问一下,容易被反编译的只有C#吗? 其他.NET的产品如C++.NET, VB.NET等会有同样的问题吗? |
|
|
|
|
|
|
|
|
|
|

楼主 |
发表于 17-2-2005 01:20 PM
|
显示全部楼层
Sirius 于 17-2-2005 10:48 AM 说 :
请问一下,容易被反编译的只有C#吗? 其他.NET的产品如C++.NET, VB.NET等会有同样的问题吗?
是的,一样
从 C# 到 VB.Net C++.Net ,J# 都是 |
|
|
|
|
|
|
|
|
|
|
发表于 17-2-2005 02:19 PM
|
显示全部楼层
|
|
|
|
|
|
|
|
|
|

楼主 |
发表于 17-2-2005 05:26 PM
|
显示全部楼层
|
|
|
|
|
|
|
|
|
|
发表于 17-2-2005 05:46 PM
|
显示全部楼层
笑话,我被人射得好惨时不见你出来讲  |
|
|
|
|
|
|
|
|
|
|

楼主 |
发表于 17-2-2005 07:45 PM
|
显示全部楼层
对不起,在下不是有意中伤你,
只是有话直说,说事实罢,
请包含。 |
|
|
|
|
|
|
|
|
|
|
发表于 17-2-2005 07:55 PM
|
显示全部楼层
|
|
|
|
|
|
|
|
|
|
发表于 18-2-2005 02:26 AM
|
显示全部楼层
sson 于 17-2-2005 05:26 PM 说 :
笑话……
如果 Windows 开源的话,大家今天就不会有如此简单易用强劲的 Windows 用了。
大家都说 Linux 安全,其实不然,
与其说 Linux 安全,难以 hack ;
不如说 Linux 太容易 hack ,黑客没有成就感, ...
嗯,那么你找出过 Linux 的任何一个 bugs吗? |
|
|
|
|
|
|
|
|
|
|
发表于 18-2-2005 09:28 AM
|
显示全部楼层
haryewkun 于 18-2-2005 02:26 AM 说 :
嗯,那么你找出过 Linux 的任何一个 bugs吗?
重点不是开源多或少BUG.....
而是开源的话....R&D的资金会比较少或没有....(因为保护不到你的投资啊...不要跟我讲GNU/GPL/BSD..有多少人知道他的SOURCE给人抄了?人家喜欢就给你钱咯)
如果酱容易给人抄/DECOMPILE谁要投资?
DECOMPILE不是要找BUG而是要抄你的proprietary技术啊 |
|
|
|
|
|
|
|
|
|
|

楼主 |
发表于 18-2-2005 01:16 PM
|
显示全部楼层
haryewkun 于 18-2-2005 02:26 AM 说 :
嗯,那么你找出过 Linux 的任何一个 bugs吗?
鸡蛋里挑骨头的话就免了,
请先了解这帖的目的好吗?
AquaMax 于 18-2-2005 09:28 AM 说 :
重点不是开源多或少BUG.....
而是开源的话....R&D的资金会比较少或没有....(因为保护不到你的投资啊...不要跟我讲GNU/GPL/BSD..有多少人知道他的SOURCE给人抄了?人家喜欢就给你钱咯)
如果酱容易给人抄 ...
是的
只是这帖好像还没有人发表真正有关的见解……
在下认为总有出路,只是想不到罢。 |
|
|
|
|
|
|
|
|
|
|
发表于 19-2-2005 12:54 PM
|
显示全部楼层
C# 我不太清楚, 不过据我所知Java 也有反编译器, 反编译出来的结果的相似度就不太清楚。
不过, 我觉得这不太会影响商机, 只会影响总收入。
你看 windows , office 根本不用反编译, 大家直接作翻版, 微软一样发到猪头。
如果觉得windows , office 是不同级数的软件, 那看看UBS , 翻版也有, 还是有生意做。
就像AquaMax 友所说, 反编译是要抄Propierty 技术为主, 如果其他人想这样做, 你的生意可能就已经有一定的规模了, 到时, 你可能就已经开发其他软件或转作其他生意了, 月入可能都是5-6位数了。
有时候不应该顾虑太多, 要做则作。 网页编程到现在source page 几乎都算是公开的了, 如果顾虑太多, yahoo 现在就不会有现在的成就。
这是我个人意见而已, 作个参考就好, 决定在自己的手。
水能载舟, 亦能覆舟 。 |
|
|
|
|
|
|
|
|
|
|
发表于 19-2-2005 01:12 PM
|
显示全部楼层
jangancari 于 19-2-2005 12:54 PM 说 :
C# 我不太清楚, 不过据我所知Java 也有反编译器, 反编译出来的结果的相似度就不太清楚。
不过, 我觉得这不太会影响商机, 只会影响总收入。
你看 windows , office 根本不用反编译, 大家直接作翻版, ...
题外话. 我用过最好的 Java Decompiler: DJ Java Decompiler
连 comments 也可一起出来, 只是 coding 排法和原来的不一样. |
|
|
|
|
|
|
|
|
|
|

楼主 |
发表于 20-2-2005 04:02 PM
|
显示全部楼层
jangancari 于 19-2-2005 12:54 PM 说 :
C# 我不太清楚, 不过据我所知Java 也有反编译器, 反编译出来的结果的相似度就不太清楚。
不过, 我觉得这不太会影响商机, 只会影响总收入。
你看 windows , office 根本不用反编译, 大家直接作翻版, ... goatstudio 于 19-2-2005 01:12 PM 说 :
题外话. 我用过最好的 Java Decompiler: DJ Java Decompiler
连 comments 也可一起出来, 只是 coding 排法和原来的不一样.
是的,由于 C# 和 Java 的编译方式原理一样,所以是可以反编译。
coding 排法不一样是由于在中介语言没有 switch 类的,所以大致上变 goto LEBEL 了
至于 jangancari 兄说的“翻版”只是基于某些地方而已,她依旧还有好多市场,
由于她的中心技术(proprietary)依然存在,至于 yahoo 依然有其特别的proprietary技术,只是方向不一样而已。 |
|
|
|
|
|
|
|
|
|
|
发表于 16-8-2005 06:44 PM
|
显示全部楼层
C# 编译的 DLL 可以被轻易反组译吗?
想要请教这个问题。。。
C# 目前最大的隐忧,不是它能不能跨平台,也不是效率的问题,而是它写出来的程式很容易就会被反组译(Uncompile),开发商用软件,别人要偷到它的源代码、要破解它的保护简直轻而易举,这样,谁敢用 C# 来开发商用软件?(为客户定制的则另当别论)。
Microsoft 的建议,是使用 Dotfucastor 这样的模糊软件去把源代码模糊掉,人家还是看得到,但是看不明白。虽然如此,但是别人如果有耐性,还是可以看得懂自己写的程式。我想投入时间去深究 C#,用来取代 C/C++,但是就是这个问题一直在困扰着我。
请问,C# 编译成 DLL 后,还能不能够被反组译?如果 DLL 不能被反组译,我把重要的部分全部丢到 DLL 中去就行了。在网上搜索了一下,有人说能,有人说不能,真是各有各的说法。。。这边有谁是在使用 C#,而又思考过这个问题的吗?请指教! |
|
|
|
|
|
|
|
|
|
|
发表于 16-8-2005 08:16 PM
|
显示全部楼层
如果有的话,
我想 Microsoft 还不把别人给告了..
 |
|
|
|
|
|
|
|
|
|
|
发表于 17-8-2005 12:09 AM
|
显示全部楼层
如果 compile 后还能用类似 javascript eval 的功能,那就 90% 可以轻易的 decompile.
[ 本帖最后由 flashang 于 17-8-2005 12:11 AM 编辑 ] |
|
|
|
|
|
|
|
|
|
|
发表于 17-8-2005 07:51 AM
|
显示全部楼层
测试完毕,用 Reflector,可以轻易反组译出原本的源代码,即使是 DLL 都没问题。在此,也证明了 C# 编译出来的 DLL 是可以被反组译的。测试结果显示,反组译出来的东西,看起来跟原本的源代码没有两样。
这样谁敢用 C# 开发商业软件?
现在在研究着 Ngen.exe。。。 |
|
|
|
|
|
|
|
|
|
|
发表于 17-8-2005 08:34 AM
|
显示全部楼层
|
难怪C#.NET才买RM219,做出来的程序就酱容易给Decompile/Cracked |
|
|
|
|
|
|
|
|
|
|
发表于 17-8-2005 08:54 AM
|
显示全部楼层
C# 编译成 DLL 后,还能不能够被反组译?
能,很多方法.. |
|
|
|
|
|
|
|
|
| |
本周最热论坛帖子
|