使用keytool查看Android APK签名

文章目录

一、找到JDK位置

  • 安卓AS之后,可选择继续安装JDK,如本文使用amazon版本
  • 默认位置:C:\Users\66176.jdks\corretto-1.8.0_342
  • 可通过自己的AS设置查看具体位置

二、使用方法

2.1 打开windows命令行工具

  • win + r 运行, 输入cmd

2.2 查看签名

  • 1.先切换到keytool的工具目录下,方便使用
  • 2.输入命令:keytool.exe -list -printcert -jarfile
  • 3.将apk工具,直接拖到命令行窗口内,会自动补齐APK路径信息
bash 复制代码
Microsoft Windows [版本 10.0.22000.856]
(c) Microsoft Corporation。保留所有权利。

C:\Users\66176\.jdks\corretto-1.8.0_342\bin>keytool.exe -list -printcert -jarfile C:\Users\66176\Downloads\20220829\test-signed.apk
签名者 #1:

签名:

所有者: CN=MediaTek Android TV, OU=Home Entertainment BU, O=MediaTek Inc., L=TW, ST=TW, C=TW
发布者: CN=MediaTek Android TV, OU=Home Entertainment BU, O=MediaTek Inc., L=TW, ST=TW, C=TW
序列号: e5c91345970d1155
有效期为 Mon Dec 10 20:22:55 CST 2012 至 Fri Apr 27 20:22:55 CST 2040
证书指纹:
         MD5:  91:00:3C:AF:A9:13:2E:71:92:4C:2C:DA:B3:9D:AF:F9:2F:9F:0E:54
         SHA1: FE:96:88:12:8F:8D:1E:15:71:D9:F3:67:AC:3D:71:67:80:8F:23:22:2D:03:35:F3:77:1E:A2:85:17:70:AB:DD
         SHA256: SHA1withRSA (弱)
签名算法名称: 2048 位 RSA 密钥
主体公共密钥算法: 3
版本: {10}

扩展:

#1: ObjectId: 2.5.29.35 Criticality=false
AuthorityKeyIdentifier [
KeyIdentifier [
0000: B6 F6 DB FC 27 84 8F 0C   D3 41 1A 4B 23 09 82 70  ....'....A.K#..p
0010: CB 35 8D 61                                        .5.a
]
[CN=MediaTek Android TV, OU=Home Entertainment BU, O=MediaTek Inc., L=TW, ST=TW, C=TW]
SerialNumber: [    e5c91345 970d1155]
]

#2: ObjectId: 2.5.29.19 Criticality=false
BasicConstraints:[
  CA:true
  PathLen:2147483647
]

#3: ObjectId: 2.5.29.14 Criticality=false
SubjectKeyIdentifier [
KeyIdentifier [
0000: B6 F6 DB FC 27 84 8F 0C   D3 41 1A 4B 23 09 82 70  ....'....A.K#..p
0010: CB 35 8D 61                                        .5.a
]
]



Warning:
证书 uses the SHA1withRSA signature algorithm which is considered a security risk. This algorithm will be disabled in a future update.

C:\Users\66176\.jdks\corretto-1.8.0_342\bin>

三、如何给APK做系统签名呢?

  • 执行如下命令即可
  • 不同版本的AOSP代码,signapk.jar的路径会有变化,如找不到的话,用find . -name signapk.jar 命令查找一下
bash 复制代码
$cd vendor/mediatek/proprietary_tv/open/common/security
$java -jar  -Djava.library.path="/home/builder/code/out/host/linux-x86/lib64/" /home/builder/code/out/host/linux-x86/framework/signapk.jar platform.x509.pem platform.pk8 tv.apk  signed-tv.apk    
相关推荐
云云鬼才44 分钟前
CoCo编辑器、图形化编程怎么调用Scheme(跳转应用)
android
Jason__Young3 小时前
Android ViewModel为什么能够跨越Activity的生命周期?
android
TechMix3 小时前
【性能优化】RenderThread各工作阶段梳理
android·性能优化
草莓熊Lotso3 小时前
MySQL 内置函数指南:日期、字符串、数学函数实战
android·java·linux·运维·数据库·c++·mysql
2401_895521344 小时前
mysql中general_log日志详解
android·数据库·mysql
zh_xuan4 小时前
Android compose 自定义主题
android·compose
一只程序熊4 小时前
uniapp 高德地图 打开选择地址报错,也没有展示出附近的位置
android·uni-app
贤泽4 小时前
Android View 触摸事件分发机制
android·aosp
zh_xuan4 小时前
Android compose 使用viewModel
android·compose
0pen14 小时前
我用 AI 写了一个 Android 群控工具,从零到可用只花了一个下午
android·人工智能