ICode9

精准搜索请尝试: 精确搜索
首页 > 编程语言> 文章详细

C#语言的类型变量、反编译与代码保护

2022-04-05 14:32:40  阅读:353  来源: 互联网

标签:反编译 exe 变量 C# 应用程序 IL 类型 引用


类型和变量

  • 类型:声明可以包含其成员、基类型、它实现的接口和该类型允许的操作。 保留字:@
  • 变量:用于引用特定类型的实例的标签。
  • 值类型 和 引用类型。
    • 值类型的变量直接包含它们的数据。
    • 引用类型的变量存储对数据(称为“对象”)的引用。 对于引用类型,两个变量可以引用同一个对象。

​ 由上图的二叉树显示结构可以看出,类型包括值类型和引用类型,分别有不同的组成部分。分为基础结构类型和用户自定义结构类型;基于两种不同的结构类型,在堆栈中存储可由 下图呈现:

​ 在上图左侧的Method1 中,定义了int 值类型和class 引用类型,由于值类型存储空间小,由栈管理数据并返回变量a 一个内存地址。而引用类型class 则在栈中分配一块内存地址指向堆中的数据

​ 同样的,假设我们在Method1中,定义 class2 obj2 = obj; 这样的结构语句的情况下,栈中同样会开辟一块内存地址交由obj2 管理,但指向是和obj 同样堆中的数据Obj 对象。

IL字节代码探索

IL 汇编程序

作用:将中间语言IL编译成DLL文件

引用:Ilasm.exe(IL 汇编程序) - .NET Framework | Microsoft Docs

打开 Ilasm.exe所在位置:

操作步骤:

​ 1、将ildasm 程序查看的文件【文件】-【转储】 成IL 中间语言文件数据

​ 2、编辑ComsoleSample.il 右键打开为文本文档

​ 3、编辑需要修改的内容,并保存修改的数据信息

​ 4、在当前Il 文件所在目录,运行cmd命令,并输入执行命令:ilasm全路径 xx.il /dll /output:xx.dll

IL 反汇编程序

作用:将DLL 程序反编译成IL 中间语言

引用:Ildasm.exe(IL 反汇编程序) - .NET Framework | Microsoft Docs

打开 Ildasm.exe所在位置:

运行Ildasm.exe程序

  • 终端输入:ildasm
  • 复制文件位置,cmd 命令打开文件路径

将需要反编译成IL的dll 文件拖入运行的ildasm.exe 程序中;即可看到dll 生成的IL中间语言。

应用程序保护

Dotfuscator Community 为开发人员、架构师和测试人员提供了一系列的软件保护和强化服务。 Dotfuscator Community 中包含的 .NET 模糊处理和其他应用程序保护功能的示例有:

  • 重命名 标识符,增加对已编译程序集实施反向工程的难度。
  • 防篡改:检测已遭篡改的应用程序的执行,并终止或响应已遭篡改的会话。
  • 防调试:检测向正在运行的应用程序附加的调试器,并终止或响应已遭调试的会话。
  • 防取得 root 权限的设备:检测应用程序是否在取得 root 权限的 Android 设备上运行,并终止或响应这些设备上的会话。
  • 应用程序到期行为:对生命周期结束日期进行编码,并终止已到期的应用程序会话。

文章引用来源:Dotfuscator Community - Visual Studio (Windows) | Microsoft Docs

命令行解析 CommandLineParser

文章引用来源:Home · commandlineparser/commandline Wiki · GitHub

本文引用来源:htttp://www.xcode.me

标签:反编译,exe,变量,C#,应用程序,IL,类型,引用
来源: https://www.cnblogs.com/panth/p/16102269.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有