AICon上海|与字节、阿里、腾讯等企业共同探索Agent 时代的落地应用 了解详情
写点什么

支持可移植类库及 WinRT 的 Crypto Obfuscator .Net v2013

  • 2013-02-08
  • 本文字数:2475 字

    阅读完需:约 8 分钟

印度的 LogicNP 软件近日发布了 Crypto Obfuscator .Net v2013 产品,支持可移植类库 Windows 8 WinRT Windows Phone 8 ,并改进了 SQL CLR 程序集。该版本包含新的日志选项卡,用于展示在代码混淆过程中完整的日志输出;以及一种假名重命名机制(fake renaming scheme),允许开发者将除了真实名字外的全部类、域、方法重命名为假名,并能够支持转发的类型

Crypto Obfuscator .Net v2013 允许从模块构造函数中调用用户自定义方法。它会通过e-mail 生成新的异常报告来通知你,自动将原始屏幕截图插入到异常报告中,并将授权许可程序集加密到多个程序集中。

新的方法“加密技术”会将全部中间语言(IL)代码加密和隐藏在方法中,并支持从异常检视器的对话窗中直接打开异常报告的附件。它同时提供向异常报告添加图片、文件、二进制数据,并为全部重命名符号(包括Pdb 文件中的本地变量名)指定前缀、后缀的能力。

它也可以指定一种包含模式的模糊规则,类似于通配符正则表达式的模式。最新版本包括一个新的演示例程,用于逐步展示如何向异常报告附加文件,日志及屏幕截图。

InfoQ 访谈了 LogicNP 软件的高级开发人员 Himangi G,以更多地了解代码混淆技术以及最近发布的 Crypto Obfuscator .Net v2013.

InfoQ: 为什么要做代码混淆?

.NET 中的 C#、VB.NET、托管 C++ 及 IronPython 等语言的编译器,将程序编译为 MSIL(微软中间语言)格式。该格式保留了软件中许多高层次的信息,例如类、域、方法、属性、参数的名字,乃至于用清晰的格式保留了实际的代码。因此,未经保护的.NET 程序集将很容易成为黑客、骇客或竞争对手的目标,他们可以:

  • 轻松的对你的.NET 代码进行反向工程
  • 从字符串中提取密码及 SQL 查询
  • 搜集有价值的商业秘密,算法
  • 寻找安全漏洞
  • 改变程序功能

使用如 Crypto Obfuscator 这样的代码混淆器,你可以:

  • 通过多种代码混淆和保护技术来保护你的代码和知识产权,免受黑客、骇客或竞争对手的侵扰。这些技术包括符号(类 / 方法 / 熟悉 / 域的名称)重命名、字符串 / 常量的加密、方法主体的加密、控制流的代码混淆、方法调用的隐藏及其他方法
  • 保护你在软件中的时间、金钱投资——增加你的 ROI(投资回报率)
  • 在一些情况下能够得到额外的效果:提高你的应用的性能

InfoQ: .NET Framework 4.5 是否包含代码混淆工具?

.NET Framework 4.5 不保护任何代码混淆工具。在分发程序集前进行代码混淆是开发者自己的职责。

InfoQ: 与同类工具相比,Crypto Obfuscator for .Net v2013 有什么不同?

除了符号重命名、字符串加密、控制流混淆等标准的保护和代码混淆方法,Crypto Obfuscator 提供了一些独特的保护手段,例如方法主体加密、常量域值移除、方法调用隐藏、防篡改、防调试 / 追踪、防反射(针对.net 中的反射机制)等。综合这些方法,.Net 程序集可以得到极其强大的代码保护。

另一种有用的特性是自动化异常报告。该特性可以帮助你节省客服支持时间并帮助你洞悉软件在实际中的运行情况。

Crypto Obfuscator 的另一个独有特性,是在代码混淆后显示的警告。它列出了你的程序集中可能会导致代码混淆失败的每一行代码。在其他代码混淆器中,开发者往往只能在黑暗中探寻究竟是什么原因导致代码混淆后的程序集不能正常工作。

Crypto Obfuscator 定价非常合理,不像同类产品那样售价高达数千美元。我们相信 Crypto Obfuscator 是目前在特性、功能与价格方面的最佳结合。

Crypto Obfuscator 还提供了其他一些特性,包括支持对多种类型的应用进行代码混淆,例如:基于 Windows 8 的 WinRT/Metro 应用,Windows Phone 8/7 应用、Silverlight 应用;以及自动化的命令行支持、程序签名、MSBuild 的集成支持、支持 Pdb 文件、直接对 XA 片进行代码混淆、XAML/BAML 代码混淆等。

InfoQ: 自动化异常报告是如何工作的?

自动化异常报告通过在代码混淆过程中监测你的代码,来捕捉你的程序中出现的任何未处理的异常,并帮助你的用户使其仅需一次简单的点击即可将这些异常报告给你。异常报告包括所有的相关信息,包括完整的堆栈跟踪信息、异常发生的时间、版本号,以及可选的开发者定义的用户数据,例如日志文件、屏幕截图等。

所有的异常报告可从 Crypto Obfuscator 的异常报告服务器端自动下载并在其中查看。每份报告及其相关数据会被清晰的表述,以便你根据这些信息来修订引发异常的问题。

InfoQ: Crypto Obfuscator For .Net 是如何帮助我提高程序性能的?

Crypto Obfuscator 使用了一些技术来帮助提升性能,例如减少元数据、将类标记为封闭的、去除常量的域的值等等。其他代码混淆机制也会引入性能提升,例如符号重命名会极大地缩短类 / 方法 / 域 / 属性的名字,从而会提升性能。

InfoQ:是否可以在 Visual Studio 2012 中使用 Crypto Obfuscator For .Net v2013?

是的,Crypto Obfuscator 提供了 Visual Studio 的项目集成向导,可以帮助你在将代码混淆的步骤整合(借助 MSBuild)到 Visual Studio 的项目构建流程中。 整合后,程序集会在构建项目的过程中自动通过 Crypto Obfuscator 完成代码混淆。

InfoQ: 为何要支持 Windows Phone 和 WinRTF 平台?

我们相信 Windows Phone 和 WinRT/Metro 平台有着巨大的潜力,而且会随着时间的推移变得更加流行。我们大量的客户要求增加针对这些平台程序集的代码混淆支持,所以我们毫不费力的做出了这个决定。

InfoQ: 你们支持 Android, iOS 吗?

是的,Crypto Obfuscator 支持这些平台下使用 Mono for Android Mono Touch 框架开发的程序.

InfoQ: 能为我们分享一些 Crypto Obfuscator for .Net v2013 的未来路线吗?

我们计划在接下来的数月中,为 Crypto Obfuscator 添加一些新的代码混淆和保护机制。此外,我们还计划改进已有的代码混淆机制。最终,这一切的目标都是为了使.NET 程序集变得更难被反编译或被进行反向工程。

查看英文原文 Crypto Obfuscator .Net v2013 with Portable Class Library and WinRT


感谢侯伯薇对本文的审校。

给InfoQ 中文站投稿或者参与内容翻译工作,请邮件至 editors@cn.infoq.com 。也欢迎大家通过新浪微博( @InfoQ )或者腾讯微博( @InfoQ )关注我们,并与我们的编辑和其他读者朋友交流。

2013-02-08 09:123268
用户头像

发布了 256 篇内容, 共 78.0 次阅读, 收获喜欢 10 次。

关注

评论

发布
暂无评论
发现更多内容

我的sql没问题为什么还是这么慢|MySQL加锁规则

做梦都在改BUG

Java MySQL 数据库

前端已死?我看未必,但「低代码」已剑指前端程序员

引迈信息

面试 Vue 前端 低代码

从智能进化模型看用友BIP的AI平台化能力

YonBuilder低代码开发平台

运维训练营第16周作业

好吃不贵

一文读懂PaddleSpeech中英混合语音识别技术

飞桨PaddlePaddle

语音识别 百度飞桨

鲁班软件使用明道云优化项目管理的全过程

明道云

跨境数据传输是日常业务中经常且至关重要的组成部分

镭速

解读场景化视频制作工具的实现过程

阿里云CloudImagine

云计算 智能生产

再次飙升GitHub榜首!这份“保姆级”的SpringBoot笔记,不服不行

做梦都在改BUG

Java spring 微服务 Spring Boot 框架

2022 IoTDB Summit:国网信通谢可《Apache IoTDB 在国家电网的应用案例》

Apache IoTDB

数据库·

《数据治理行业实践白皮书》正式发布,开辟数据治理新范式(附下载)

袋鼠云数栈

数据治理

玩好 StarRocks,大厂 offer 接不完!|字节跳动、小红书、京东物流、唯品会、腾讯音乐要的就是你!

StarRocks

数据库

2022 IoTDB Summit:中国工程院院士倪光南《发展开源教育,汇天下英才激活中国创新动能》

Apache IoTDB

数据库· ;开源

借助阿里云 AHPA,苏打智能轻松实现降本增效

阿里巴巴云原生

阿里云 容器 云原生 AHPA

听说你没法在 JRE 中使用 arthas?不,你可以

阿里巴巴云原生

Java 阿里云 容器 云原生

安全高效 | AIRIOT智慧工地管理解决方案

AIRIOT

物联网 智慧工地

在云原生和裸金属环境开展NFS存储性能比对测试

QE_LAB

云原生 性能测试

最佳实践 | 基于腾讯云MRCP-Server打造简单智能外呼系统

牵着蜗牛去散步

人工智能 腾讯云 腾讯 语音识别 智能外呼系统

一文吃透 Go 内置 RPC 原理

捉虫大师

Go RPC

3.基于Label studio的训练数据标注指南:文本分类任务

汀丶人工智能

信息抽取 数据标注 文本分类 labelstudio

深度访谈 Vland CTO:像乐高一样搭建元宇宙

万事ONES

元宇宙 访谈

阿里云云原生每月动态 | 聚焦实战,面向开发者的系列课程全新上线

阿里巴巴云原生

阿里云 云原生

Spring中Autowired注解到底怎么实现的

做梦都在改BUG

Java spring 框架

【技术干货】第1篇:有道实况OCR技术

有道技术团队

GitLab 专家分享|关于 DevSecOps ,你需要知道这几点

极狐GitLab

DevOps DevSecOps 极狐GitLab 研发运维 安全左移

探究计算机视觉新兴能力:如何通过提示检索提高性能?

Zilliz

计算机视觉

请你喝一杯 Corretto?谈一谈 JDK 的新选择

亚马逊云科技 (Amazon Web Services)

Java jdk

基于 eBPF 的 Serverless 多语言应用监控能力建设

阿里巴巴云原生

阿里云 Serverless 云原生

解锁智能合约的力量:区块链入门教程

领创集团Advance Intelligence Group

区块链 智能合约 以太坊

龙蜥LoongArch架构研发全揭秘,龙芯开辟龙腾计划技术合作新范式

OpenAnolis小助手

操作系统 龙蜥社区 龙腾计划 龙芯中科 LoongArch

2022 IoTDB Summit:Dr.Feinauer《Apache IoTDB 在德国汽车生产线多级数据同步中的应用实践》

Apache IoTDB

数据库·

支持可移植类库及WinRT的Crypto Obfuscator .Net v2013_语言 & 开发_Anand Narayanaswamy_InfoQ精选文章