IT技术博客大学习 共学习 共进步
全部 移动开发 后端 数据库 AI 算法 安全 DevOps 前端 设计 开发者

标签:APK

共 2 篇相关文章

IT 累计浏览 3,696

Mac下.apk的反编译

这篇教程详细演示了如何在Mac环境下对Android应用的.apk文件进行反编译。作者从准备一个.apk文件开始,核心方案是结合使用三个关键的开源工具来逐步剥离应用内容。 第一步是使用 apktool,通过指定路径的命令,对.apk文件进行解码。这个过程会提取出资源文件,并解码出 AndroidManifest.xml 等XML内容。第二步则是使用 dex2jar 工具,它能将apk中的classes.dex文件转换成通用的Java归档文件(.jar)。作者提示,生成jar包后需要耐心进行下一步。第三步,用 JD-GUI 这个Java反编译器打开上一步生成的.jar包,此时就能直观地浏览应用的Java源代码了。 整个流程清晰地串联了三个工具,各自负责不同层面的解包与反编译工作。作者通过具体的命令行示例和输出反馈,将原本可能复杂的逆向过程分解成了可跟随的操作步骤。最终,读者可以掌握一套完整的组合技,从资源到代码,实现对APK文件的深度查看。

IT 累计浏览 2,742

Android APK 签名文件MANIFEST.MF、CERT.SF、CERT.RSA分析

这篇讲的是Android APK签名中三个关键文件:MANIFEST.MF、CERT.SF和CERT.RSA的内部结构和作用。作者从一个已签名的APK入手,逐步解剖了这三个文件如何构成一个层层校验的“信任链”。 核心机制是“三明治”式的校验:MANIFEST.MF首先记录了APK内所有文件的SHA-1哈希值,确保每个资源文件的完整性;接着,CERT.SF文件不仅保存了MANIFEST.MF本身的哈希值,还对MANIFEST.MF中的每一项描述再次进行SHA-1计算并存储,这相当于对“清单的清单”进行了二次确认。最后,CERT.RSA文件则包含了用于验证上述所有哈希值的公钥和签名者证书信息,完成了整个数字签名的闭环。 文章不仅展示了每个文件的具体内容,还通过手动计算和使用OpenSSL工具生成密钥、提取证书等方式进行了实战验证,并引用了Android源码佐证。整个分析过程清晰地揭示了Android签名机制如何通过这种“文件哈希 -> 清单哈希 -> 对清单的签名”的三重保障,来确保应用的完整性与来源可信度。