社区
.NET技术其他语言
帖子详情
如何保护自己的C#程序不被反编译?
OS_50
2007-02-05 08:02:16
如何保护自己的C#程序不被反编译?
...全文
245
2
打赏
收藏
如何保护自己的C#程序不被反编译?
如何保护自己的C#程序不被反编译?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
2 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
smdy
2007-02-05
打赏
举报
回复
不懂 来学习的
bigrongshu
2007-02-05
打赏
举报
回复
到C#版搜索 反编译 一大堆
c#
程序
加密 防止
反编译
.NET Reactor是一款功能强大的代码
保护
以及许可授权管理系统软件,主要用于开发人员
保护
其.NET软件
程序
,.NET Reactor支持所有支持.NET编译的
程序
开发语言。
C#
程序
反编译
保护
教程
C#
程序
反编译
保护
教程,
反编译
工具.NET Reflector 6.5.0.135
NET
程序
员的开发利器.NET Reflector 一、 简介
程序
集,作为.NET时代的动态链接库,蕴藏了太多的软件秘密。为此,Visual Studio内置的ILDASM成为最初挖掘
程序
集的上佳工具。但自从Reflector出现后,ILDASM相形见拙。因为,Reflector能提供更多的
程序
集信息,而且是免费的工具。 如今,在Visual Studio.NET中编译源代码(无论是VB还是
C#
)时,编译器都会将高级源代码翻译成MSIL,即“微软中间语言”,而不是特定的机器指令。具有更多安全性、版本控制、共享能力与其它相关元数据的中间语言(IL),是包在一个或多个DLL或可执行文件中的。 基于ILDASM检查
程序
集中的IL有时很有用,但它要求我们熟悉MSIL。通常,比起IL,大多数开发人员对像
C#
或Visual Basic这样的高级
程序
设计语言更为熟悉。 Reflector的出现使.NET
程序
员眼前豁然开朗,因为这个免费工具可以将.NET
程序
集中的中间语言
反编译
成
C#
或者Visual Basic代码。除了能将IL转换为
C#
或Visual Basic以外,Reflector还能够提供
程序
集中类及其成员的概要信息、提供查看
程序
集中IL的能力以及提供对第三方插件的支持。 二、 下载与运行Reflector Reflector是由微软员工Lutz Roeder编写的免费
程序
。这个软件经常更新,你可以在http://www.aisto.com/roeder/dotnet下载最新的版本。在本文成文之时,Reflector的最新版本为5.0.35.0,仅有1M大小。只要双击下载后的Reflector.exe文件即可运行Reflector。 默认情况下,Reflector会打开一组公共
程序
集(mscorlib、System、System.Data、System.Drawing等等)。每个打开的
程序
集都列在Reflector的主窗口中。单击
程序
集旁边的+图标可以展开树结构并展示
程序
集的命名空间。每个命名空间旁边都有一个相关的+图标,单击这个图标将显示这个命名空间内的类。除此以外,还可以展开每个类,显示类的成员:事件、字段、方法与属性。 要想查看其它
程序
集(包括我们自己创建的
程序
集)的细节,你可以使用菜单命令“File→Open”。然后,浏览到想要查看的
程序
集。只要选择了有效的.NET
程序
集,这个
程序
集就可以在Reflector的主窗口中与其它默认
程序
集共同显示。要想从Reflector的主窗口中删除
程序
集,只需右击
程序
集并选择“Close”。 三、 使用Reflector反汇编
程序
集 提供基本的
程序
集是Reflector唾手可得的功能,然而,Reflector真正的威力体现在它的反汇编能力。只要浏览到类级的成员,就可以通过Tools菜单中的Disassembler项(或在该项上单击右键)反汇编此成员。这将打开第二个窗格,以
C#
、Visual Basic、Delphi或者IL显示反汇编后的内容。图2以
C#
语言展示了对SmtpClient类中Abort方法的反汇编结果。 有了Reflector的
反编译
功能,要研究.NET框架基类库就容易多了。我们完全可以在没有源代码的情况下研究我们所创建或者正在使用的
程序
集相应源代码。 不用太担心,你自己的.NET应用
程序
还有其它受
保护
措施。但是,想阻止别人查看.NET
程序
集的IL(继而
反编译
成
C#
或者Visual Basic)是不可能的,但你可以使用“混淆”技术使IL变得混乱。目前,市场上有许多.NET混淆产品,比如:PreEmptive Solution的Dotfuscator、WiseOwl的Dmeanor以及Remotesoft的.NET Obfuscator等。 四、 Reflecator的其它功能 除了作为对象浏览器与反汇编器之外,Reflector还可以显示类与其成员的调用与被调用图、提供单键访问Google或MSDN搜索的能力并提供了允许第三方开发人员为Reflector创建插件的框架。 要查看调用或被调用图,只需要在树视图中选择一个成员,访问Tools菜单,选择Call Graph或Callee Graph选项即可。Call Graph会列出所选项所调用的成员,而Callee Graph列出调用所选项的成员。 通过使用插件,Reflector的功能可以得到进一步扩展。目前有能显示
程序
集依赖图、自动加载当前运行中的
程序
集、输出整个
程序
集的反汇编内容以及在Visual Studio中作为Reflector的宿主等的插件。还有更多插件都列在http://www.codeplex.com/reflectoraddins中。在此,我极力推荐有兴趣的读者前去一看。 不出乎所料,的确存在一个Reflector.VisualStudio插件。有了这个插件,就可以让Reflector集成在Visual Studio环境中,进而取代以前那个有些“拙漏”的对象浏览器。 首先,我们需要在机器上准备Reflector的最新版,然后从http://www.testdriven.NET/reflector下载最新版本的Reflector.VisualStudio插件。据说安装了此插件之后,Reflector能够与Visual Studio完美融合。但遗憾的是,本人试下载此软件并安装(仅能得到TestDriven.NET-2.8.2130 RTM个人测试版本,时间7/30/2007,大小3.3M)后,没有大发现—仅是在VS2005中添加“Go to Reflector”和一个帮助菜单项。点击“Go to Reflector”菜单项仅是从VS2005内部启动Reflector而已。 有了Reflector.VisualStudio插件(正版,下面是根据在线资料介绍),Reflector可以寄在Visual Studio中Reflector不仅是一个对象浏览器、反汇编器,包裹在同一个
程序
中的所有功能还可以寄于Visual Studio中。 五、 小结 还记得Spy++吗?在Win32时代,这个软件对于我们分析一个陌生软件的设计思路可谓立下汗马功劳。在如今的.NET时代,Reflector又成为每个严肃的.NET开发人员工具箱中必不可少的精髓工具之一。怎么样,请赶紧试锋吧。
.NET Reactor
反编译
.NET Reactor 是一款强大的 .NET 代码
保护
和授权管理系统,安全可靠、简单易用,主要用来帮助开发人员
保护
他们的 .NET 软件产品。开发人员从此不必担心如何
保护
他们的知识产权,可以将更多精力放在产品功能的开发上。 与代码混淆工具(Obfuscator)相比,.NET Reactor 可以完全阻止对 .NET
程序
集(由
C#
, VB.NET, Delphi.NET, J#, MSIL… 等语言编写)的
反编译
。通俗的讲,.NET Reactor 在破解者和您的 .NET 代码之间构建了强大的防破解
保护
屏障,生成一个基于 Windows 的而不是基于 MSIL 的兼容格式文件。原始的 .NET 代码完整的封装在本地代码内,无论何时都不会释放到硬盘,对于破解者是不可见的,目前还没有任何工具可以
反编译
.NET Reactor
保护
过的
程序
集。
.NET Reactor 6.5(.net代码
保护
、防破解、防
反编译
)
.NET Reactor 用于.NET
程序
的加密、混淆、加壳,防止
程序
被
反编译
.NET技术其他语言
1,978
社区成员
12,450
社区内容
发帖
与我相关
我的任务
.NET技术其他语言
.NET技术 其他语言讨论
复制链接
扫一扫
分享
社区描述
.NET技术 其他语言讨论
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章