android apk 加固后重新签名

article/2025/10/6 14:21:43

针对于加固平台在加固的过程中不能配置签名文件,加固后的apk需要进行重新签名才能安装,并发布到应用市场。

第一步,用AS对项目进行打包,生成签名的apk文件。

第二步,使用加固平台,对apk包进行加固,加固完成后,得到一个加固后的apk。

第三步,我们可以使用Android SDK自带的apksigner.jar 对APK进行签名操作,apksigner.jar 存放在\Android\Sdk\build-tools\30.0.1\lib目录下。

对加固apk进行重新签名的方法:

  1. cmd编辑,打开指定的目录

cd C:\Users\PC\AppData\Local\Android\Sdk\build-tools\33.0.1\lib

查看apk签名情况

这是安装失败的apk文件路径 C:\Users\PC\Desktop\pub\abc.apk

java -jar apksigner.jar verify -v C:\Users\18745\Desktop\DNP_3.3.96.2(6.1.8)_psigned.apk

通过执行命令返回的结果可以看到V1与V2的签名情况

这是未签名的APK返回的的结果:

DOES NOT VERIFY ERROR: Missing META-INF/MANIFEST.MF

这是v1签名的APK返回的的结果:

Verifies Verified

using v1 scheme (JAR signing): true Verified

using v2 scheme (APK Signature Scheme v2): false

这是v1v2都签名的APK返回的的结果:

Verifies Verified

using v1 scheme (JAR signing): true Verified

using v2 scheme (APK Signature Scheme v2): true

  1. 使用android sdk中的apksigner.jar对加固后的apk进行重新签名

示例

java -jar apksigner.jar sign --ks [签名路径] --ks-key-alias [alias名称] --ks-pass pass:[密码] --key-pass pass:[密码] --out [签名后的新包路径] [待签名的包路径]

我的具体使用

java -jar apksigner.jar sign --ks C:\work\android-app\dgj.jks --ks-key-alias dgj --ks-pass pass:dgj123456! --key-pass pass:dgj123456! --out C:\Users\PC\Desktop\pub\20230309_dgj.apk C:\Users\PC\Desktop\pub\111.apk

  1. 生成签名apk后,再次验证生成的签名apk是否有V1、V2签名

java -jar apksigner.jar verify -v C:\Users\PC\Desktop\pub\20230309_dgj.apk

4.签名后的apk就可以安装到android 手机上了


http://chatgpt.dhexx.cn/article/MKVk3l0x.shtml

相关文章

Android Apk加固原理解析

前言 为什么要加固 对APP进行加固,可以有效防止移动应用被破解、盗版、二次打包、注入、反编译等,保障程序的安全性、稳定性。 常见的加固方案有很多,本文主要介绍如果通过对dex文件进行加密来达到apk加固的目的; APK加固整体…

apk加固后再签名

目录 前言v1签名v1v2签名 前言 apk更新之前需要做安全检测,检测之前一版会做加固处理,加固后还需要重新进行签名。本文介绍一下v1签名和v1v2签名两种方式。 有文章说需要把apk原来的签名文件,即META-INF文件夹删除,实测不删好像也…

Android apk 加固混淆的作用之解决apk报毒

现在市面上对apk的安全合规管控越来越严格了,也就要求了apk在上架之前一定要做合规检测和加固处理。对apk就是加固的好处,可以提高apk的安全性,提高apk被逆向分析破解的门槛,同时通过加固保护可以提高过安全合规的检测。由于APP加…

简书 android 加固,Android apk加固(加壳)整理

一、Dex加壳由来 最近在学习apk加密,在网上看了一篇《Android中的Apk的加固(加壳)原理解析和实现》,我发现原文把整个apk都写入到dex文件中,如果apk小还好,当原APK大于200M,客户端解壳很费劲,打开后应用就卡…

019 Android加固之APK加固的原理和实现

文章目录 前言加载Activity遇到的问题APK的启动过程替换ClassLoader流程获取ActivityThread类对象获取AppBindData类对象mBoundApplication获取LoadedApk类对象info获取info对象中的ClassLoader 设计傀儡dex文件手工加固APK代码实现APK加固实现步骤 总结 前言 动态加载dex之后…

【Android 安全】Android 应用 APK 加固总结 ( 加固原理 | 应用加固完整的实现方案 | 源码资源 )

文章目录 一、 APK 加固原理1、 Android 应用反编译2、 ProGuard 混淆3、 多 dex 加载原理4、 代理 Application 开发5、Java 工具开发6、Application 替换 二、 应用加固完整的实现方案1、 代理 Application( 1 ) ProxyApplication( 2 ) OpenSSL 解码 Kotlin 类( 3 ) 反射工具…

android资源加固,Android apk加固实现原理

apk加固是每一个app发布之前必须要做的事情;如果一个apk没有加固那么别人就很容易被别人反编译,看到这其中的原码,虽然现在有代码混淆、把业务写到native层,但是这都是治标不治本。反编译的技术在更新,那么保护Apk的技术就不能停止…

Android中Apk加固代码实现

前言:上一篇博客已经把Apk加固的思路详细的介绍过了,也开始创建了一个空的demo进行,然后在项目中添加一个代理module(解密,和系统源码交互功能)和tools工具加密Java library 的module ,这里开始…

Android APK加固原理

一、前言 Android作为开源框架,开放之余,所要面临的就是安全问题,世间之事,有正就有邪,有攻就有守,作为开发者虽然不需要进入专业安全领域,但还是需要掌握基本的安全常识和原理。 二、加壳 加…

APK加固原理详解

一、前言 之前使用的360加固,挺好用的,从2021年底的时候限制每天每个账号仅上传2次apk(免费的,不知道VIP的是不是这样)。通过这个事情,感觉技术还是掌握在自己手里稳妥点,不用受制于人&#xf…

Android中的Apk的加固(加壳)原理解析和实现

本文转载自:Android中的Apk的加固(加壳)原理解析和实现 - roccheung - 博客园 一、前言 今天又到周末了,憋了好久又要出博客了,今天来介绍一下Android中的如何对Apk进行加固的原理。现阶段。我们知道Android中的反编译工作越来越让人操作熟…

浅谈安卓apk加固原理和实现

转载本文需注明出处:微信公众号EAWorld,违者必究。 引言: 在安卓开发中,打包发布是开发的最后一个环节,apk是整个项目的源码和资源的结合体;对于懂点反编译原理的人可以轻松编译出apk的源码资源&#xff0c…

安卓逆向笔记--apk加固

安卓逆向笔记–apk加固 资料来源: 浅谈安卓apk加固原理和实现 Android中的Apk的加固(加壳)原理解析和实现 前两个太老了所以具体代码借鉴下面的 Android Apk加壳技术实战详解 一、apk常见加固方法 (1)代码层级加密–代码混淆 代码混淆是一种常见的加密方式。本质是把工程中原…

imx6ull uboot移植

以下内容来自:正点原子Linux驱动文档 一、简介 uboot移植主要是根据原厂的uboot移植:芯片厂商通常会做一块自己的评估板并发布BSP,当我们需要定制自己的开发板时可以根据自己的需求(硬件上的不同),对原厂…

全志V3S嵌入式驱动开发(uboot移植)

【 声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing @163.com】 安装了ubuntu操作系统,有了开发板,下面就可以进行我们的开发工作了。第一步,我们要面临的问题就是uboot移植。一般来说,嵌入式的基础环境就是uboot、linux和rootfs。uboot完成一…

2021-09-14 uboot移植开发

引言:最近要改动uboot,实现像微软PC上,u盘一键刷机或手机上安全模式下刷机的操作 专门去好好研究了点uboot的启动过程;以下为总结: 嵌入式系统 微软-PC ——…

iTOP4412 uboot移植教程

好多刚开始学习uboot移植的同学总是觉得uboot好难,但是再难的问题如果把它一步步拆开,一个个解决,问题也就将迎刃而解。做uboot移植,我们首先就得了解uboot的编译流程,这里以在iTOP4412精英版2G内存的板子上移植u-boot…

<Linux开发> -之-系统移植 uboot移植过程详细记录(第二部分)

<Linux开发> -之-系统移植 uboot移植过程详细记录(第二部分) 第一部分链接:系统移植-之-uboot移植第一部分 第一部分主要讲解了,uboot移植过程中使用的一些工具的安装,以及测试nxp远程uboot&a…

X210开发板(S5PV210芯片)uboot移植DM9000驱动移植

前言 本文是介绍在uboot中如何移植DM9000的驱动,并不深入去讲解DM9000芯片的操作时序和内部寄存器,想要读懂驱动代码要仔细阅读DM9000芯片的数据手册。移植的基础是手里有DM9000芯片可以用的驱动代码,只需要根据开发板中DM9000芯片的接线方式…

嵌入式linux UBoot移植篇

如何在U-boot添加自己的linux板卡并启动呢? uboot 的移植并不是说我们完完全全的从零开始将 uboot 移植到我们现在所使用的开发板或者开发平台上。这个对于我们来说基本是不可能的,这个工作一般是半导体厂商做的, 半导体厂商负责将 uboot 移…