android 判断Apk是否签名和 签名是否一致

判断Apk是否签名

用命令:jarsigner -verify -verbose -certs <apk文件>

如果有Android Debug字樣就是debug

如果已经签名: [证书的有效期为13-8-31 下午2:31至41-1-16 下午2:31]

判断Apk签名是否一致

    

jdk 需要安装;

想查demo.apk所使用的签名的fingerprint,可以这样做:

1.
查找apk里的rsa文件

Windows 平台:

> jar tfdemo.apk
|findstr RSA

Linux 平台:

$ jar tfdemo.apk
|grep RSA

META-INF/CERT.RSA

2. 从apk中解压rsa文件

jar xfdemo.apk
META-INF/CERT.RSA

3. 获取签名的fingerprints

keytool -printcert -file META-INF/CERT.RSA

证书指纹:

MD5: 5A:5A:96:63:8E:EF:FC:66:9E:BC:1C:2A:A9:1E:E5:95

SHA1: 44:BD:33:2D:C5:21:AE:78:D5:04:92:1A:39:FD:AC:01:E2:32:3C:AB

SHA256: 2F:C0:A3:8C:0D:42:84:70:48:78:44:A4:2E:64:5B:50:B3:B3:1E:33:94:62:A3:9F:2F:10:DD:EF:D7:CF:02:0B

签名算法名称: SHA1withRSA

版本: 3

两个apk是否同签名,比较签名的MD5码或SHA1码 ,一样就是相同的,反之,不是

时间: 2024-10-11 13:26:05

android 判断Apk是否签名和 签名是否一致的相关文章

【转】Android学习系列(1)--为App签名(为apk签名)

原文网址:http://www.cnblogs.com/qianxudetianxia/archive/2011/04/09/2010468.html Android学习系列(1)--为App签名(为apk签名) 写博客是一种快乐,前提是你有所写,与人分享,是另一种快乐,前提是你有舞台展示,博客园就是这样的舞台.这篇文章是android开发人员的必备知识,是我特别为大家整理和总结的,不求完美,但是有用. 1.签名的意义 为了保证每个应用程序开发商合法ID,防止部分开放商可能通过使用相同的Pack

Android - 查看Android应用(apk)签名

查看Android应用(apk)签名 本文地址: http://blog.csdn.net/caroline_wendy 在微博.微信开放平台注册应用时,需要填写应用(apk)的签名,可以使用keytool工具找到已签名应用的签名. 1. 使用解压缩工具,找到apk包内的CERT.RSA文件,这个文件就包含应用的签名. 2. 使用命令: keytool -printcert -file CERT.RSA 输出文件的签名,包含三种: MD5,SHA1,SHA256,一般选择MD5,32个符号.

Android 发布Apk签名

1.签名的意义 为了保证每个应用程序开发商合法ID,防止部分开放商可能通过使用相同的Package Name来混淆替换已经安装的程序,我们需要对我们发布的APK文件进行唯一签名,保证我们每次发布的版本的一致性(如自动更新不会因为版本不一致而无法安装). 2.签名的步骤 a.创建key b.使用步骤a中产生的key对apk签名 3.具体操作 方法一: 命令行下对apk签名(原理) 创建key,需要用到keytool.exe (位于jdk1.6.0_24\jre\bin目录下),使用产生的key对a

Android之apk文件签名——keytool 和 jarsigner

一.生成密钥库将位置定位在jdk的bin文件中,输入以下命名行: keytool -genkey -alias ChangeBackgroundWid get.keystore -keyalg RSA -validity 20000 -keystore ChangeBackgroundWidget.keystore 上面的命令中间不换行,按下"Enter"键,并根据提示填写相关信息,详细信息如下及图1(validity为有效期,这里有效期为20000天):输入keystore密码:再次

浅析:android的apk文件上线前加密和签名经验分享

第一步加密: 1.加密的意义 如果不对其软件进行加密很容易被人家反编译导致源代码的泄漏,查出服务器的地址而间接的收到攻击,等一系列问题. 2.加密的方法 可以使用爱加密网址:  http://www.ijiami.cn/     对apk进行加密,这是第三方提供的安全可靠!,详情可以参考:http://jingyan.baidu.com/album/925f8cb8151347c0dde0563d.html 第二部签名 第二部签名: 1.签名的意义 为了保证每个应用程序开发商合法ID,防止部分开

Android学习系列(1)--为App签名(为apk签名)

写博客是一种快乐,前提是你有所写,与人分享,是另一种快乐,前提是你有舞台展示,博客园就是这样的舞台.这篇文章是android开发人员的必备知识,是我特别为大家整理和总结的,不求完美,但是有用. 1.签名的意义 为了保证每个应用程序开发商合法ID,防止部分开放商可能通过使用相同的Package Name来混淆替换已经安装的程序,我们需要对我们发布的APK文件进行唯一签名,保证我们每次发布的版本的一致性(如自动更新不会因为版本不一致而无法安装). 2.签名的步骤 a.创建key b.使用步骤a中产生

Android 对APK进行系统签名

第一个方法简单点,不过需要在Android系统源码的环境下用make来编译: 1. 在应用程序的AndroidManifest.xml中的manifest节点中加入android:sharedUserId="android.uid.system"这个属性. 2. 修改Android.mk文件,加入LOCAL_CERTIFICATE := platform这一行 3. 使用mm命令来编译,生成的apk就有修改系统时间的权限了. 第二个方法麻烦点,不过不用开虚拟机跑到源码环境下用make来

[Android_提交前工作]android项目apk签名

生成apk最懒惰的方法是:只要你运行过android项目,到工作目录的bin文件夹下就能找到与项目同名的apk文件,这种apk默认是已经使用debug用户签名的. 如果想要自己给apk签名: 1.签名的意义 为了保证每个应用程序开发商合法ID,防止部分开放商可能通过使用相同的Package Name来混淆替换已经安装的程序,我们需要对我们发布的APK文件进行唯一签名,保证我们每次发布的版本的一致性(如自动更新不会因为版本不一致而无法安装).2.签名的步骤 a.创建key b.使用步骤a中产生的k

[Android Pro] 查看 keystore文件的签名信息 和 检查apk文件中的签名信息

1: 查看 keystore文件的签名信息 keytool -list -v -keystore keystoreName -storepass keystorePassword 2: 检查apk文件中的签名信息 解出apk中RSA文件,然后用keytool即可查看签名信息: keytool -printcert -file ~/test/CERT.RSA