zoukankan      html  css  js  c++  java
  • ionic andorid apk 签名, 查看签名MD5

    ionic cordova build android生成的是带签名的android-debug.apk, 这个是可以在手机上安装的, 但是换个电脑打包这个签名就不一样了, 这样就不能直接替换安装了, 需要卸载了再安装.
    ionic cordova build android --release 生成的是android-release-unsigned.apk, 这个apk是没有签名的, 无法安装到手机, 需要我们签名

    https://blog.csdn.net/jiangwei0910410003/article/details/50402000 - 深度解析
    https://www.jianshu.com/p/286d2b372334
    https://www.cnblogs.com/share123/p/5900583.html
    http://blog.csdn.net/maxbalance/article/details/49157579
    给apk签名一共要用到3个工具,或者说3个命令,分别是:keytool、jarsigner和zipalign,下面是对这3个工具的简单介绍:
    1)keytool:生成数字证书,即密钥,也就是上面说到的扩展名为.keystore的那类文件;JDK包含
    2)jarsigner:使用数字证书给apk文件签名;JDK包含
    3)zipalign:对签名后的apk进行优化(非必须),提高与Android系统交互的效率(Android SDK1.6版本开始包含)

    1. 生成keystore文件, 中间输入的密码牢记

    keytool -genkey -v -keystore mark.keystore -alias mark.keystore -keyalg RSA -validity 20000
    

    2. 对apk签名

    前面的是生成的apk文件, 后面的是要签名的apk路径, 可以相对和绝对

    jarsigner -verbose -keystore mark.keystore -signedjar mark_signed.apk d:/GitHub/qqtr/apk/android-release-unsigned.apk mark.keystore
    

    3. 查看证书信息 - 私钥信息

    将签名后的apk解压, 进入解压的目录, 执行下面的命令

    keytool -printcert -file META-INF/*.RSA
    
    所有者: CN=mark, OU=mark, O=mark, L=SZ, ST=guangdong, C=CN
    发布者: CN=mark, OU=mark, O=mark, L=SZ, ST=guangdong, C=CN
    序列号: 4b8b5121
    有效期开始日期: Tue Dec 26 13:36:45 CST 2017, 截止日期: Wed Sep 28 13:36:45 CST 2072
    证书指纹(私钥Hash, 用GenSignature看到的就是这个MD5):
             MD5: D6:BF:74:FA:B6:29:2C:D8:9F:45:0A:8E:B2:7F:6D:97
             SHA1: 93:2B:E9:CC:6E:41:01:A7:B7:7C:CC:DC:80:A9:6B:29:25:DB:A8:E9
             SHA256: 89:37:59:99:FA:36:57:52:E6:B3:2D:82:29:C0:F7:FF:B3:65:5F:72:8A:86:D4:6C:41:44:DF:C4:2E:CE:CE:53
             签名算法名称: SHA256withRSA
             版本: 3
    

    4. APP工具查看证书信息

    使用下面这个APP, 通过包名查看任意APP的签名值
    https://files.cnblogs.com/files/wancy86/Gen_Signature_Android2.apk

    5. 查看APP的实际签名信息

    解压APK后查看 META-INFXXXX.RSA中的内容
    这里我们看到的都是二进制文件,因为RSA文件加密了,所以我们需要用openssl命令才能查看其内容
    openssl pkcs7 -inform DER -in XXXX.RSA -noout -print_certs –text

  • 相关阅读:
    LVM逻辑卷管理练习
    浅谈TCP三次握手和四次分手
    centos模拟创建CA和申请证书
    破解root口令
    shell脚本编程进阶总结
    基于FIFO的串口发送机设计
    流水线方式LUT查表法乘法器
    verilog中有符号整数说明及除法实现
    LUT查表法乘法器所犯下错误。。。。
    似然函数
  • 原文地址:https://www.cnblogs.com/wancy86/p/apk_sign.html
Copyright © 2011-2022 走看看