Apk签名,安装校验过程

Mac  Android apk 重打包 修改数据 签名校验 Mac Android apk 重打包 1、 环境 前置条件必须安转java apktool :https://ibotpeaches.github.io/Apktool/install 1)安装Homebrew 2)​brew install apktool​ dex2jar:https://github.com/pxb1988/dex2jar jd-gui:http://jd.... 阅读详情

原文地址 https://www.jianshu.com/p/1e8cfea539e6

首先要了解是整个应用生成的过程

 

编译过程 .png

 

再来看一下最后生成的apk解压后的文件结构

 

Apk结构.png


这里主要关注未签名和签名的apk的区别
未签名的apk是没有MEAT-INF文件夹的,只有签名的apk才有这个文件夹。分别来看一下这个文件夹下的文件的含义

MANIFEST.MF

这个是校验应用完整性的文件,里面的结构是apk中每个文件生成的hash值

CERT.SF

这个是签名文件,是对MANIFEST.MF进行加密的

CERT.RSA

这个是公匙,用于解密使用

加密的过程

无论是debug还是release包都是要有签名文件的,我们在生成release包的时候也是先生成我们自己的私匙
1,为我们apk中文件都生成校验唯一性的hash值,生成MAINIFEST.MF文件
2,使用我们生成的私匙加密MANIFEST.MF生成CERT.SF,用于方式MAINIFEST.MF被篡改
3,最后三个文件都放到MEAT-INF文件夹下

解密过程

1,首先使用公匙解密CERT.SF,将CERF.SF解密后的数据与MANIFAST.MF进行比较,以此来证明证书的有效性。因而它并不是用来验证应用程序包完整性的
2,然后校验apk中文件hash值和MENIFEST.MF中的文件hash值是否都能对应的上
上面的步骤都对了就可以安装了

重新签名

从上面的过程来看,我们可以把市场上的apk下载下来,删除加密文件夹下的内容,然后重新为apk签名

Android应用安装失败?别慌,带你一步步拆解PMS的签名与权限校验流程 本文深入解析Android应用安装失败时PMS的签名与权限校验流程,提供详细的排查指南和解决方案。从日志分析到签名校验机制,再到权限声明问题排查,帮助开发者快速定位并解决APK安装过程中的常见问题,确保应用顺利安装和更新。 阅读详情

相关推荐

插件框架之插件Apk安装流程简介

对插件安装的流程和作用进行系统了解其中细节

在路上-codingAndlearning 3048

如何给apk文件签名(一)

给apk文件签名主要分三步,创建证书(如果没有)-->签名-->优化(可选 ) 1)使用jdk的keytool工具生成签名用的证书 > keytool -genkey -v -alias CERT -keyalg RSA -keysize 2048 -validity 10000 -keystore CERT.keystore  创建过程需要输入一些标识信息和密码,一

ShanDong_Chu 1万+

Android 签名机制 v1、v2、v3

本文转载自Android波斯湾 什么是签名? 要想知道签名是什么,先来看为什么需要签名 ? 了解 HTTPS 通信的同学应该知道,在消息通信时,必须至少解决两个问题:一是确保消息来源的真实性,二是确保消息不会被第三方篡改。 在安装 APK 时,同样需要确保 APK 来源的真实性,以及 APK 没有被第三方篡改。如何解决这两个问题呢? 方法就是开发者对 APK 进行签名:在 APK 中写入一个「指...

知道的越多,不知道的越多。 1509

Android apk签名方法介绍

还望支持个人博客站:http://www.enjoytoday.cn 参考博客:http://www.enjoytoday.cn/posts/203 为什么要签名 在介绍签名方法之前,首先我们来了解下,android系统为何需要我们签名后才可安装运行apk,其实这个签名和我们生活中的信用卡签名并无本质不同,就是一个对apk身份的验证,对于apk的一种担责行为。apk前面采用...

weixin_34194087的博客 339

Linux文件操作四剑客

① /^(d{2}|d{4})-((0([1-9]{1}))|(1[1|2]))-(([0-2]([1-9]{1}))|(3[0|1]))$/ // 年-月-日 yyyy-MM-dd / yy-MM-dd 格式。⑥“^(([0-9]+\.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*\.[0-9]+)|([0-9]*[1-9][0-9]*))$” //正浮点数。

wuds_158的博客 1611

OPC UA 协议详解

OPC UA(统一架构)是新一代工业自动化标准通信协议,替代传统OPC Classic,具有跨平台、高安全性、标准化等优势。基于TCP协议,支持全平台部署,采用面向对象架构组织数据,提供实时读写、事件订阅、历史数据访问等功能。作为工业4.0核心协议,适用于智能制造、数字孪生等场景,能实现多品牌设备统一接入。相比Modbus和MQTT,OPC UA协议更规范安全但复杂度较高,是大型工业集群互联的主流选择。

eastyuxiao的专栏 729

apk 进行系统签名

文章目录1、Android 源码中的编译1) 系统中默认的四种签名2、工具对apk进行签名 1、Android 源码中的编译 1) 系统中默认的四种签名 (1) testkey : 普通 APK ,默认情况下使用 (2) platform : 该APK 完成一些系统的核心的功能,经过对系统存在的文件夹访问测试,这种方式编译出来的 APK 所在的进程 为syatem. (3) shared : 该APK需要和 home/contacts 进程共享数据。 (4) media : 该APK 是media/dow

Venus 的博客 3714

PDS联合Modelsim仿真报错(Error loading design) line6报错 -novopt已禁用 (全网最详细!!!!!)

发现这个文档是Pango自动生成的,也就是说每一次我们点击"Run Behavior Simulation"的时候,PDS都会自动生成一次这个./run_behav_simulate.tcl文件,所以就算我们这一次把这个文件修改了,我点击"Run Behavior Simulation"想让它再跑一次正确的仿真,它此时又重新生成了这个带有-novopt的错误tcl文件,仿真依旧不能成功。问题真的是出在这里,那我们修改这个./run_behav_simulate.tcl文件就好了,但事实并非如此!

weixin_74058783的博客 3192

APK签名流程详解

本文最好对照我的APK签名解析示例进行阅读. 示例中的关键文件说明: keys - 存放签名公私钥的目录 signed_logcat.apk - 已经使用keys目录中的密钥签名后的apk signed_logcat - signed_logcat.apk解压出来的内容 sign.cmd - 对apk签名的批处理命令 signapk.jar - java版本的apk签名工具

技海淘金 9239

Linux系统安全学习手册

Linux反弹shell Linux系统应急响应 Linux服务器安全加固 Linux下的用户、组和权限 Linux中的gcc Linux中su和sudo的用法和区别 Linux系统python2与python3共存 Linux中grep工具的使用 Linux中环境变量的设置 Linux中常见的150个命令(干货) Linux中编写Shell脚本 LNMP环境搭建Wordpress博客 LAMP环境搭建一个Discuz论坛 Linux运维比较常用的一些脚本 Linux系统中安装软

谢公子的博客 7532

手把手教你在openclaw中白嫖英伟达羊毛调用GLM5/Minimax2.1/Kimi K 2.5等模型

本文介绍如何在OpenClaw中免费调用英伟达平台的GLM5、Minimax2.1和Kimi K2.5等模型。通过在openclaw.json配置文件中添加NVIDIA的API信息,设置免费模型参数(如contextWindow和maxTokens),并执行简单命令即可切换默认模型。该方法可节省token消耗成本,最后需重启gateway使配置生效。文中还提供了使用其他API平台时的配置模板。

Science prince的博客 5103

APK签名流程介绍

实际上,现在Android开发IDE自带签名功能,但是有时我们还是可能遇到自己签名apk的场景的,比如你有一个未签名的apk,但是你要adb install到device上,这时我们在adb install之前就必须对该apk进行签名处理才能install成功,这篇文章就简单的介绍下apk签名流程吧。 1、生成签名证书 签名需要签名证书,签名证书类型实际上是有很多的,如jks、keysto...

Yoryky的专栏 1346

YOLOv8全网首发:CVPR2026 MixerCSeg | DEGConv方向引导边缘门控,破解细长裂缝检测难题

DEGConv通过方向先验嵌入、边缘增强卷积和动态门控三大机制,针对性解决了YOLO在处理裂缝类细长、多方向、低对比度目标时的特征提取不足问题,显著提升了裂缝检测的精度与鲁棒性。

①答疑群聊服务;②YOLO大模型知识问答系统;③计算机视觉论文生成智能体; 518

面试:APK安装的过程

主要步骤列出来: 将apk文件复制到data/app目录 解析apk信息 dexopt操作 更新权限信息 完成安装,发送Intent.ACTION_PACKAGE_ADDED广播 1. 将apk文件copy至data/app目录 1.1 安装来源,包括adb,shell,all_user,然后向PMS的mHandler发送INIT_COPY的消息 1.2handleStartCopy的核心就是copyApk,顺便进行存储空间检查,权限检查等等安全校验 2 .解析apk信息 完成ap..

王温暖的博客 1922

小程序真机调试蓝牙可以使用,线上发布版本蓝牙无法使用

小程序提示请打开蓝牙,微信小程序蓝牙无法连接,小程序真机调试蓝牙可以使用,线上版本蓝牙无法使用,测试环境蓝牙正常,开发环境蓝牙正常,发布后蓝牙无法使用

renkai721的专栏 826

uniapp - 实现安卓App打包上架应用商店详细教程,详解Hbuilder打包编译apk发布上传到应用市场全流程,提供uniApp云打包、离线打包app、原生本地打包,附带APP备案和安卓证书申请

uni-app,安卓,APP,应用商店,打包编译apk,上架到应用市场,如何打包app并发布到主流应用市场,发布为AndroidApp流程,应用备案,如何申请安卓证书,hbuilder发布安卓apk后怎么上传到各家软件商店,创建app证书,uniapp发行原生APP本地打包安卓APK,详细最全的步骤教程,项目打包成apk,云打包,安心打包,安卓app离线打包,一直审核不通过,被拒绝,不符合规范,上架发布失败,申请安卓证书和获取证书信息,uni-app打包发布安卓Android软件到各大应用商店,腾讯应用

🏆 前端领域优质创作者 1万+

Android之安装apk

apk的安装历程

weixin_50358291的博客 1978

Outlook Express 6 (OE6) for Win7/Win8/Win10

英文版 Outlook Express6.0, 兼容Win7/Win10/WinXP,解压就可用。

Android升级apk签名文件校验

升级apk流程:从服务器下载更新的apk----对apk做校验----安装apk 本文讲一下对apk做签名文件校验,实际上就是获取本机已安装apk的签名和从服务器下载的apk的签名,计算两个签名文件的MD5,如果MD5一样,就说明签名文件正确。 boolean sigMd5 = veritySignature(getUpdateApkName(), downloadpath + filename); private boolean veritySignature(String pkgName, String

WeLoveSunFlower的专栏 1777

Data-Structures-and-Algorithm-Analysis-in-Java.pdf

作者: Weiss, Mark A. 出版社: Addison Wesley Data Structures and Algorithm Analysis in Java is an “advanced algorithms” book that fits between traditional CS2 and Algorithms Analysis courses. In the old ACM Curriculum Guidelines, this course was known as CS7. This text is for readers who want to learn good programming and algorithm analysis skills simultaneously so that they can develop such programs with the maximum amo...

廖雪峰Python教程[完整版]

廖雪峰的python教程整理的,已经排好版了,而且还是完整的,适合小白

Android 安装APK完整性校验(V1签名)

app在安装是会采集签名信息来验证apk的完成性 apk经过v1签名,解压后会得到META-INF文件夹,里面主要有三个文件CERT.RSA CERT.SF MANIFEST.MF,三者的介绍参考https://www.iteye.com/blog/myeyeofjava-2125348 http://www.blogjava.net/zh-weir/archive/2011/07/19/35...

Cailand的专栏 6440

Devexpress16.2.6破解工具

Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具

android+apk+修改+签名文件位置,Android5.1.1 - APK签名校验分析和修改源码绕过签名校验...

Android5.1.1 - APK签名校验分析和修改源码绕过签名校验@(Android研究)[APK签名校验|绕过签名校验]APK签名校验分析找到PackageParser类,该类在文件"frameworks/base/core/java/android/content/pm/PackageParser.java"中。PackageParser类的collectCertificates方法会对A...

weixin_39651325的博客 442

Android V1及V2签名原理简析

Android为了保证系统及应用的安全性,在安装APK的时候需要校验包的完整性,同时,对于覆盖安装的场景还要校验新旧是否匹配,这两者都是通过Android签名机制来进行保证的,本文就简单看下Android的签名与校验原理,分一下几个部分分析下: APK签名是什么 APK签名如何保证APK信息完整性 如何为APK签名 APK签名怎么校验 Android的APK签名是什么 签名是摘要与非对称密钥加...

weixin_34080571的博客 962

apk安装包签名--快速入门安全性测试

如何测试apk的安装包签名,这是安全测试其中一项; 安装包签名: jarsigner -verify -verbose -certs apk包路径 运行结果为“jar已验证”,说明签名校验成功

测试领域专家,多领域测试技术、管理、工具都略懂,略懂一二 1832

Android APK 签名原理

Android APK 签名原理涉及到密码学的加密算法、数字签名、数字证书等基础知识,这里做个总结记录。非对称加密需要两个密钥,一个是公开密钥,另一个是私有密钥;一个用作加密的时候,另一个则用作解密。其相对的加密即为对称加密,可以用现实世界中的例子来对比:一个传统保管箱,开门和关门都是使用同一条钥匙,这是对称加密;而一个公开的邮箱,投递口是任何人都可以寄信进去的,这可视为公钥;而只有邮箱主人拥有钥...

Jaqen's Blog 421

Android系统安全 — 5.2-APK V1签名介绍

APK V1签名介绍

qincheng168的博客 2132

移动安全逆向笔记 06:去除自签名校验

修改前后的变化(大小,MD5) 图片是一样的 重要的签名文件(没有签名无法安装): 在Androidkiller里.keystore文件用于签名app,开发者也有一个key,但是与Androidkiller不同(原创开发者只需要校验签名即可): 开发者签名校验设置 许多校验强的app无法像以上修改: 换一个银行的apk 做个副本签名一下,发下不能安装。 直接注释: 反编译错误。 找到哪个png: 删掉,替换,编译,通过校验。 仔细探究 用java Decomplier或jadx看一

ResumeProject的博客 2744

安卓APK逆向分析实战:破解智能手表应用安装限制

安卓应用安装包(APK)是Android生态中软件分发的核心格式。其本质是一个包含编译后代码、资源与配置文件的压缩包。通过反编译工具(如Apktool、jadx)进行静态分析,可以解析出应用的逻辑结构、权限声明和关键业务代码;结合动态调试工具(如Frida、Android Studio)进行运行时分析,则能深入理解其行为逻辑与数据流。这项技术在安全研究、漏洞挖掘、应用兼容性测试及功能扩展等领域具有重要价值,尤其在物联网(IoT)设备与封闭系统生态中,可用于分析系统应用的管控机制。本文以一次具体的智能手表应用

weixin_33670786的博客 824
上一篇: Client请求ServiceManager的交互过程
下一篇: 单例模式
杨殿生
博客等级 码龄10年 11粉丝 77原创
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值