你可能想知道 通过这篇博客可以解决哪些问题以及学到什么:

1.如果我们有一个应用,如何查看应用的签名信息?

2.如果我们有签名原始文件,如何查看签名文件中的签名信息?

这篇博客介绍了如何查看应用和签名文件中的签名信息。

目录

一、查看Android apk的签名信息方式有两种

1. 直接查看apk的签名信息(推荐)

1)输入命令查看 (wechat.apk)

2. 通过apk中的RSA文件查看签名信息

1) 先将apk后缀改为.zip,然后解压,再进入META-INF目录,找到RSA文件

2) 输入命令查看

二、查看签名文件中的签名信息

1. 查看x509.pem签名文件的签名信息 (编译源码时使用)

2. 查看keystore签名文件的签名信息 (Eclipse编译时使用)

3. 查看jks签名文件的签名信息(AndroidStudio编译时使用)


一、查看Android apk的签名信息方式有两种

1. 直接查看apk的签名信息(推荐)

keytool -list -printcert -jarfile [APK文件路径]

1)输入命令查看 (wechat.apk)

Jackchen$ keytool -list -printcert -jarfile wechat.apk
签名者 #1:签名:所有者: CN=Tencent, OU=Tencent Guangzhou Research and Development Center, O=Tencent Technology(Shenzhen) Company Limited, L=Shenzhen, ST=Guangdong, C=86
发布者: CN=Tencent, OU=Tencent Guangzhou Research and Development Center, O=Tencent Technology(Shenzhen) Company Limited, L=Shenzhen, ST=Guangdong, C=86
序列号: 4d36f7a4
生效时间: Wed Jan 19 22:39:32 CST 2011, 失效时间: Fri Jan 11 22:39:32 CST 2041
证书指纹:SHA1: CC:80:D7:6A:A9:FE:94:EC:20:5E:F0:C3:36:BF:C4:24:59:6D:A2:90SHA256: 0F:E4:FF:85:C2:15:91:83:96:DA:DC:7C:D8:CE:69:63:33:9A:F3:3D:37:75:1A:56:E5:4C:72:06:B6:3A:3C:7C
签名算法名称: SHA1withRSA (弱)
主体公共密钥算法: 1024 位 RSA 密钥 (弱)
版本: 3Warning:
证书 使用的 SHA1withRSA 签名算法被视为存在安全风险。此算法将在未来的更新中被禁用。
证书 使用的 1024 位 RSA 密钥 被视为存在安全风险。此密钥大小将在未来的更新中被禁用。

2. 通过apk中的RSA文件查看签名信息

keytool -printcert -file [RSA文件路径]

1) 先将apk后缀改为.zip,然后解压,再进入META-INF目录,找到RSA文件

2) 输入命令查看

Jackchen$ keytool -printcert -file COM_TENC.RSA
所有者: CN=Tencent, OU=Tencent Guangzhou Research and Development Center, O=Tencent Technology(Shenzhen) Company Limited, L=Shenzhen, ST=Guangdong, C=86
发布者: CN=Tencent, OU=Tencent Guangzhou Research and Development Center, O=Tencent Technology(Shenzhen) Company Limited, L=Shenzhen, ST=Guangdong, C=86
序列号: 4d36f7a4
生效时间: Wed Jan 19 22:39:32 CST 2011, 失效时间: Fri Jan 11 22:39:32 CST 2041
证书指纹:SHA1: CC:80:D7:6A:A9:FE:94:EC:20:5E:F0:C3:36:BF:C4:24:59:6D:A2:90SHA256: 0F:E4:FF:85:C2:15:91:83:96:DA:DC:7C:D8:CE:69:63:33:9A:F3:3D:37:75:1A:56:E5:4C:72:06:B6:3A:3C:7C
签名算法名称: SHA1withRSA (弱)
主体公共密钥算法: 1024 位 RSA 密钥 (弱)
版本: 3Warning:
证书 使用的 SHA1withRSA 签名算法被视为存在安全风险。此算法将在未来的更新中被禁用。
证书 使用的 1024 位 RSA 密钥 被视为存在安全风险。此密钥大小将在未来的更新中被禁用。

其结果和“直接查看apk的签名信息”一致。

二、查看签名文件中的签名信息

1. 查看x509.pem签名文件的签名信息 (编译源码时使用)

keytool -printcert -file [x509.pem文件路径]
例如:keytool -printcert -file platform.x509.pem

Jackchen$ keytool -printcert -file platform.x509.pem
所有者: EMAILADDRESS=android@android.com, CN=Android, OU=Android, O=Android, L=Mountain View, ST=California, C=US
发布者: EMAILADDRESS=android@android.com, CN=Android, OU=Android, O=Android, L=Mountain View, ST=California, C=US
序列号: b3998086d056cffa
生效时间: Wed Apr 16 06:40:50 CST 2008, 失效时间: Sun Sep 02 06:40:50 CST 2035
证书指纹:SHA1: 27:19:6E:38:6B:87:5E:76:AD:F7:00:E7:EA:84:E4:C6:EE:E3:3D:FASHA256: C8:A2:E9:BC:CF:59:7C:2F:B6:DC:66:BE:E2:93:FC:13:F2:FC:47:EC:77:BC:6B:2B:0D:52:C1:1F:51:19:2A:B8
签名算法名称: MD5withRSA(禁用)
主体公共密钥算法: 2048 位 RSA 密钥
版本: 3扩展: #1: ObjectId: 2.5.29.35 Criticality=false
AuthorityKeyIdentifier [
KeyIdentifier [
0000: 4F E4 A0 B3 DD 9C BA 29   F7 1D 72 87 C4 E7 C3 8F  O......)..r.....
0010: 20 86 C2 99                                         ...
]
[EMAILADDRESS=android@android.com, CN=Android, OU=Android, O=Android, L=Mountain View, ST=California, C=US]
SerialNumber: [    b3998086 d056cffa]
]#2: ObjectId: 2.5.29.19 Criticality=false
BasicConstraints:[CA:truePathLen:2147483647
]#3: ObjectId: 2.5.29.14 Criticality=false
SubjectKeyIdentifier [
KeyIdentifier [
0000: 4F E4 A0 B3 DD 9C BA 29   F7 1D 72 87 C4 E7 C3 8F  O......)..r.....
0010: 20 86 C2 99                                         ...
]
]Warning:
证书 使用的 MD5withRSA 签名算法被视为存在安全风险而且被禁用。

2. 查看keystore签名文件的签名信息 (Eclipse编译时使用)

keytool -list -v -keystore [keystore文件路径]
例如:keytool -list -v -keystore system_signature.keystore

Jackchen$ keytool -list -v -keystore system_signature.keystore
输入密钥库口令:
密钥库类型: jks
密钥库提供方: SUN您的密钥库包含 1 个条目别名: system_signature
创建日期: 2021-8-14
条目类型: PrivateKeyEntry
证书链长度: 1
证书[1]:
所有者: EMAILADDRESS=android@android.com, CN=Android, OU=Android, O=Android, L=Mountain View, ST=California, C=US
发布者: EMAILADDRESS=android@android.com, CN=Android, OU=Android, O=Android, L=Mountain View, ST=California, C=US
序列号: b3998086d056cffa
生效时间: Wed Apr 16 06:40:50 CST 2008, 失效时间: Sun Sep 02 06:40:50 CST 2035
证书指纹:SHA1: 27:19:6E:38:6B:87:5E:76:AD:F7:00:E7:EA:84:E4:C6:EE:E3:3D:FASHA256: C8:A2:E9:BC:CF:59:7C:2F:B6:DC:66:BE:E2:93:FC:13:F2:FC:47:EC:77:BC:6B:2B:0D:52:C1:1F:51:19:2A:B8
签名算法名称: MD5withRSA(禁用)
主体公共密钥算法: 2048 位 RSA 密钥
版本: 3扩展: #1: ObjectId: 2.5.29.35 Criticality=false
AuthorityKeyIdentifier [
KeyIdentifier [
0000: 4F E4 A0 B3 DD 9C BA 29   F7 1D 72 87 C4 E7 C3 8F  O......)..r.....
0010: 20 86 C2 99                                         ...
]
[EMAILADDRESS=android@android.com, CN=Android, OU=Android, O=Android, L=Mountain View, ST=California, C=US]
SerialNumber: [    b3998086 d056cffa]
]#2: ObjectId: 2.5.29.19 Criticality=false
BasicConstraints:[CA:truePathLen:2147483647
]#3: ObjectId: 2.5.29.14 Criticality=false
SubjectKeyIdentifier [
KeyIdentifier [
0000: 4F E4 A0 B3 DD 9C BA 29   F7 1D 72 87 C4 E7 C3 8F  O......)..r.....
0010: 20 86 C2 99                                         ...
]
]*******************************************
*******************************************Warning:
<system_signature> 使用的 MD5withRSA 签名算法被视为存在安全风险而且被禁用。
JKS 密钥库使用专用格式。建议使用 "keytool -importkeystore -srckeystore system_signature.keystore -destkeystore system_signature.keystore -deststoretype pkcs12" 迁移到行业标准格式 PKCS12。

3. 查看jks签名文件的签名信息(AndroidStudio编译时使用)

keytool -list -v -keystore [jks文件路径]
例如:keytool -list -v -keystore system_signature.jks

结果同上

Android签名 (一) 查看签名信息相关推荐

  1. Android签名机制:生成keystore、签名、查看签名信息

    2019独角兽企业重金招聘Python工程师标准>>> Android独有的安全机制,除了权限机制外,另外一个就是签名机制了.签名机制主要用在以下两个主要场合起到其作用:升级App和 ...

  2. Android签名 一 查看签名信息

    你可能想知道 通过这篇文章可以解决哪些问题以及学到什么: 1.如果我们有一个应用,如何查看应用的签名信息? 2.如果我们有签名原始文件,如何查看签名文件中的签名信息? 这篇文章介绍了如何查看应用和签名 ...

  3. Android 对apk进行重签名和查看签名(window 和mac)及生成签名

    生成签名文件:其实是有很多工具可以做到,这里不过是想用命令来生成 其命令如下:生成的签名默认在c盘根目录下 keytool -genkey -alias aaaa.keystore -keyalg R ...

  4. 如何在Android Studio中查看方法信息?

    本文翻译自:How can I view method information in Android Studio? In Eclipse, when you hover your mouse ove ...

  5. Android签名机制介绍:生成keystore.签名.查看签名信息等方法

    为什么80%的码农都做不了架构师?>>>    Android独有的安全机制,除了权限机制外,另外一个就是签名机制了.签名机制主要用在以下两个主要场合起到其作用:升级App和权限检查 ...

  6. php给apk包签名,Android_查看apk签名信息方法,用shell写了一个查看apk签名的 - phpStudy...

    查看apk签名信息方法 用shell写了一个查看apk签名的脚本.代码很少也很简单 #!/bin/bash mkdir .temp_for_certificate cd .temp_for_certi ...

  7. Android APK的签名--笔记版 V1 签名和V2签名总结

    1. 工具介绍 jarsigner 是JDK提供的针对jar包签名的通用工具, 位于 JDK/bin/jarsigner apksigner 是Google官方提供的针对Android apk 签名验 ...

  8. 为你的android App实现自签名的ssl证书

    为你的android App实现自签名的ssl证书(https) 最近公司项目用到https的接口形式,对于一般的网络请求 我们用的是http://******      使用的是 代码用来打开一个  ...

  9. android 录音原始文件_5分钟短文 | Android证书生成,签名,验证,虽然难,但学一次就够了!...

    引言 从Android演进开始,APK签名就已经成为Android的一部分,并且android要求所有Apks都必须先签名,然后才能将其安装在设备上.关于如何生成密钥以及如何签名的文章很多.一个Apk ...

  10. java 1.8签名apk_给Android的APK程序签名和重新签名的方法

    签名工具的使用Android源码编译出来的signapk.jar既可给apk签名,也可给rom签名的.使用格式: java –jar signapk.jar [-w] publickey.x509[. ...

最新文章

  1. 全网把Map中的hash()分析的最透彻的文章,别无二家。
  2. matlab同时给多个变量赋值(deal)
  3. 网易云信携手海信S7,新社交开拓电视领域新未来
  4. MVC简捷调用EasyUI的datagrid
  5. octave安装 缺java_Octave信号包安装
  6. C++总结笔记(十)——堆区内存开辟数组和二级指针
  7. b树与b+树的区别_面试必考:B树、B树、B+树、B*树图文详解
  8. mysql快速上手3
  9. emlog模板 超帅的资源娱乐网模板 全版本兼容 修复各种bug
  10. html5实现拖拽上传头像
  11. VirtualBox虚拟机移到另外一台机器,需要在设置中禁用usb
  12. 小说PHP最新源码,2019最新PTCMS小说精美多风格四套全新版源码+模板
  13. 前端实现登录时记住密码功能
  14. 文件后缀对应文件类型表
  15. Ubuntu18.04启动盘制作
  16. 迅雷php源码,PHP生成迅雷、快车、旋风等软件的下载链接代码实例
  17. Flask教程(二十)flask-apscheduler
  18. 使用nprobe+ntopng监控上百个路由器流量
  19. 《保姆教程一》Idea 必装插件,墙裂推荐!!!
  20. c语言坐标画折线,如何用C语言画折线图

热门文章

  1. [Opencv]圆盘目标跟踪系统——激光打靶
  2. cleverhans库——FGSM代码实战
  3. 《推荐系统实战(一)》基于统计的电影推荐系统(tmdb-5000数据集,数据清洗、特征提取、搭建模型等详细过程)
  4. jcr多久更新一次_2020年期刊影响因子正式发布,几家欢喜几家愁?!
  5. 我的世界夜视指令java_我的世界状态效果大全及指令使用方法
  6. OpenCv学习篇——图像中值滤波算法
  7. 用php编写室友通讯录_使用 XML 和 PHP 创建一个更具适应性的电话簿和通讯录
  8. ZigBee协议栈点播
  9. 【入门】用matlab做数字信号处理(学习记录)
  10. 解决“gettools.exe 已停止工作”问题