zoukankan      html  css  js  c++  java
  • 给APK签名,修改签名

    简介:

    本来是不需要签名的,但是我有个android的专用设备,限制安装,但是售后给我通过了一个证书的验证。

    那么我想装什么软件,就需要这个证书验证。

    现在记录一下签名的主要过程,还有修改签名的方法。

    一:环境准备

    其实也没用什么特别的工具JAVA JDK 就够用了。

    https://www.oracle.com/technetwork/java/javase/downloads/jdk12-downloads-5295953.html

    根据自己的版本下载,我下载的是Windows    158.63 MB      jdk-12.0.2_windows-x64_bin.exe

    一路下一步安装就可以了。

    二:生成签名的证书

    找到你安装文件夹

    D:Program FilesJavajdk-12.0.1in>keytool -genkey -alias jackadam -keyalg RSA -validity 36500 -keystore jackadam.keystore
    输入密钥库口令:
    再次输入新口令:
    您的名字与姓氏是什么?
      [Unknown]:  jack
    您的组织单位名称是什么?
      [Unknown]:  technology
    您的组织名称是什么?
      [Unknown]:  fntco
    您所在的城市或区域名称是什么?
      [Unknown]:  zhengzhou
    您所在的省/市/自治区名称是什么?
      [Unknown]:  henan
    该单位的双字母国家/地区代码是什么?
      [Unknown]:  cn
    CN=jack, OU=technology, O=fntco, L=zhengzhou, ST=henan, C=cn是否正确?
      [否]:  y
    
    正在为以下对象生成 2,048 位RSA密钥对和自签名证书 (SHA256withRSA) (有效期为 36,500 天):
             CN=jack, OU=technology, O=fntco, L=zhengzhou, ST=henan, C=cn
    

    标红的可以根据自己喜好来换。会在bin目录生成证书名称为jackadamjackadam.keystore这个密钥文件。

     -validity 36500 很多资料里没写这个参数,这个参数是100年的有效期。

    谁没事换证书玩啊?就写100年吧。

    三:查看签名

    第一步:将apk解压
    第二步:找到META-INF 下的.RSA文件
    第三步:在mac终端或者window控制器上输入命令:
    keytool -printcert -file xxx.RSA回车,即可查看签名文件.将.RSA文件拖入到-file后面,即可查看:如下图

    这比我还狠,1000年,365000天。真是地老天荒啊。

    四:删除签名

    其实很简单,用WinRAR打开apk,找到META-INF文件夹,删除MANIFEST.MF之外的所有其他文件即可。

    五:签名

    签名命令如图下:
    使用jarsigner进行签名
    jarsigner -verbose -keystore [您的私钥存放路径] -signedjar [签名后文件存放路径] [未签名的文件路径] [您的证书名称]
    或者直接把密码给带进签名里面去,就不用手动输入密码库密码了:命令如下
    jarsigner -verbose -keystore [您的私钥存放路径] -storepass 密码库密码 -signedjar [签名后文件存放路径] [未签名的文件路径] [您的证书名称]
    或者
    jarsigner -verbose -keystore [您的私钥存放路径] -signedjar [签名后文件存放路径] [未签名的文件路径] [您的证书名称] -storepass 密码库密码

    我的操作如下:

    六:验证签名

    这怎么验?和查看签名样啊。

    查看到有签名就对了。

  • 相关阅读:
    方差、协方差、相关系数的理解
    yii2原生sql
    Oracle中日期作为条件的查询
    IDEA 中tomcat图片储存和访问虚拟路径(图片和程序分家)
    nginx配置静态资源:配置绝对路径
    一般spring配置上下文
    spring boot 集成 redis lettuce(jedis)
    windows下面同时部署多个tomcat的方法
    oracel: 通过特殊表序列来实现oracle自增id (mybatis实现自增id)
    使用fastjson 进行jsonObject转实体类对象
  • 原文地址:https://www.cnblogs.com/jackadam/p/11266396.html
Copyright © 2011-2022 走看看