DexGuard 与 ProGuard区别

原文链接https://www.guardsquare.com/en/blog/dexguard-vs-proguard

DexGuard基于ProGuard。这就是为什么升级到DexGuard如此容易的原因。但这两种产品却提供的功能差异很大。ProGuard是Java字节码的通用优化器,而DexGuard为Android应用程序提供高级保护。在本博客中,您将找到ProGuard和DexGuard之间差异的概述。

ProGuard是Java字节码的通用优化器。DexGuard是一款专门用于保护Android应用程序的工具。

ProGuard是Java字节码的通用优化器。它使您能够压缩,优化和混淆桌面应用程序,嵌入式应用程序和移动应用程序(Android)。另一方面,DexGuard专门用于保护和优化Android应用程序。DexGuard提供的多层保护适用于应用了分布式和快速更新的App。此外,DexGuard还提供可帮助您充分利用Android平台的功能。它配备了针对Android运行时和公共库(Google Play服务,Dagger,Realm,SQLCipher等)的调整配置,并自动拆分超出格式(MultiDex)规定的大小限制的DEX文件。

ProGuard提供针对静态分析的基本保护。DexGuard可保护应用程序免受静态和动态分析的影响。

在尝试对应用程序进行逆向工程时,黑客通常会将两种方法结合他们尝试使用反编译器(静态分析)访问应用程序的源代码,并在运行时监视应用程序的行为(动态分析)。ProGuard仅提供针对静态分析的基本保护,而DexGuard可保护应用程序免受静态和动态分析的影响。DexGuard不仅使用多种混淆和加密技术来强化应用程序的源代码,还将一系列运行时安全机制(运行时应用程序自我保护)集成到其中。这些机制检查应用程序及其运行环境的完整性,并使应用程序能够在检测到可疑活动时做出反应。

ProGuard提供最小的混淆。DexGuard应用多层加密和混淆。

ProGuard和DexGuard都强化了应用程序代码,以防止它们被反编译,但它们的所做的程度是不同的。ProGuard以名称混淆的形式提供基本保护。DexGuard不仅模糊了类,字段和方法的名称,还模糊了代码中的算术和逻辑表达式以及方法内部代码的控制流。此外,DexGuard会对字符串和类进行加密,并为访问敏感的API添加反射。最终提供一个被保护很好的应用。

ProGuard专注于字节码。DexGuard处理应用程序的所有组件。

虽然ProGuard的操作仅限于Java应用程序的字节码,但DexGuard提供360度保护。除了Dalvik字节码,它还优化、混淆和加密清单文件,native 库,资源,资源文件和assets文件。

ProGuard是一个开源工具。DexGuard是一种商业级企业级产品

ProGuard可以免费下载和使用,以处理您的商业和非商业应用程序。有关设置ProGuard所需的所有信息,请参见在线手册。DexGuard是一种商业产品。许可证允许您使用DexGuard,并允许您通过经验丰富的工程师团队帮助你设置和配置软件。

DexGuard 与 ProGuard区别相关推荐

  1. App 瘦身的七种方法

    极力推荐文章:欢迎收藏 Android 干货分享  和您一起终身学习,这里是程序员Android 一个APP的包之所以大,主要包括以下文件 代码 lib so本地库 资源文件(图片,音频,字体等) 瘦 ...

  2. android 动态 dex,Android 动态加载dex

    首先如果仅仅是因为64K method的问题可以直接看这里DexGuard.Proguard.Multi-dex给出的解决方案. 本文主要讨论从编译层面,dex动态加载器选择层面以及安全层面讨论dex ...

  3. Android Proguard工具使用和配置详解

    Android开发中的Proguard Proguard是Android开发时经常会用到的一个工具,在Android SDK中已经集成了一个免费的Proguard版本,位于<sdk>/to ...

  4. ProGuard参数使用说明

    ProGuard 使用说明 本文主要是翻译proguad的官方文档,以便以后使用的时候不需要再次去看英文,每次写proguard总是那么痛苦,必须写个博客记录一下,有些地方的意思我也不懂,有注明原文! ...

  5. Android开发中的Proguard

    转自:https://blog.csdn.net/ccpat/article/details/52059344 Proguard是Android开发时经常会用到的一个工具,在Android SDK中已 ...

  6. ProGuard 详解

    Android开发中的Proguard 本文为转载,原文链接:http://blog.csdn.net/ccpat/article/details/52059344 Proguard是Android开 ...

  7. android proguard 第三方jar,Android Studio代码混淆-第三方jar混淆汇总(持续更新)

    前言 Android有非常多的优秀的第三方开源jar包,我们经常在我们的项目中使用了不少jar包,但是往往到了release的时候就忘了混淆第三方jar包了,会给我们开发带来不少麻烦,所有在这里汇总一 ...

  8. 【Android 安全】DEX 加密 ( ProGuard 混淆 | -keepclassmembers 混淆效果 | -keepclasseswithmembernames 混淆效果 )

    文章目录 一.Proguard 默认混淆结果 二.-keepclassmembers 混淆效果 二.-keepclasseswithmembernames 混淆效果 更多 ProGuard 混淆配置参 ...

  9. linux和Windows平台 android sdk 中build tools 区别

    在linux和Windows平台上,gradle wrapper和gradle依赖的jar 都是不区分平台的 ├── gradle │ └── wrapper │ ├── gradle-wrapper ...

最新文章

  1. python lambda_Python 匿名函数 lambda
  2. 正定矩阵(用于SVM的Mercer定理)
  3. Meteor创建示例项目 Simple-todos
  4. 类、变量、块、构造器、继承初始化顺序,终极解答
  5. “约见”面试官系列之常见面试题第三十篇之计算机操作系统进程和线程区别
  6. poj-2528线段树练习
  7. 【转】Dynamics CRM 365零基础入门学习(五)权限管理
  8. (54)Verilog HDL下升沿采样
  9. Android Studio 使用艺术 - Android Windows 开发环境配置
  10. 现实JS模板,可设置默认值
  11. W3C小组宣布:HTML5标准制定完成
  12. 如何证明永动机不可能制造出来
  13. echarts如何获取后端的值_echarts图怎么用从后台获取的数据
  14. webstorm汉化后乱码现象解决
  15. Linux C语言写的超级简单端口扫描器
  16. python学习笔记六
  17. 洛谷【入门4】数组 P2615 [NOIP2015 提高组] 神奇的幻方
  18. hive报错Could not get block locations. Source file “/user/hive/warehouse/xxx
  19. 《SpringBoot2.0 实战》系列-整合thymeleaf 实现模板文件转word打印
  20. 木板切割最优matlab,矩形木板最优切割方案的设计与实现

热门文章

  1. CentOS7下安装yara
  2. 宅男必备:iStripper for Mac(桌面上的跳舞女郎表
  3. Linux Cgroup 系列:CentOS 7 Systemd Cgroup 层级
  4. 【转】Blogcn(中国博客网)宣布终止免费服务
  5. mysql update 负数_解决并发情况下库存减为负数问题--update2016.04.24
  6. mysql 查询每个月的销售额 和 每天的销售额
  7. DockerCon 2016 西雅图即将到来,8大主题详尽解读
  8. 7628刷breed_自制各类路由原厂直刷Breed的文件,无需修改mac无需重刷无线
  9. php h5 调用摄像头_利用html5调用本地摄像头拍照上传图片
  10. 数据分析案例-BI工程师招聘岗位信息可视化分析