Android Studio 生成签名文件以及JKS 密钥库专用格式 PKCS12 适配

时间:2021-6-17 作者:qvyue

重点概要:
1:Android Studio 生成 jks签名文件
2:签名文件行业标准格式PKCS12兼容
3:生成SHA1,MD5

1:cd 到Android Studio 的 jre 文件夹中的bin目录下(在此目录下才能调用keyTool,xx盘)

注意: cd 返回根目录 d: 切换盘符 cd.. 倒退文件夹 cd 打开文件夹

Android Studio 生成签名文件以及JKS 密钥库专用格式 PKCS12 适配
5317456-e2d68b178d397ea1.png

2:生成jks签名文件

语法:

    keytool -genkey -v -keystore demo.jks -alias demo  -storepass 123456 -keypass 123456 -keyalg RSA -validity 14000

    备注:
    -keystore:设置生成的文件名称,包含后缀;
    -alias:设置别名
    -storepass:设置文件的密码
    -keypass:设置key的密码
    -keyalg:设置使用的加密算法,一般写RSA
    -validity:设置有效期,尽可能长啦

后续

D:developAndroid Studiojrebin>keytool -genkey -v -keystore demo.jks -alias demo  -storepass 123456 -keypass 123456 -keyalg RSA -validity 14000
您的名字与姓氏是什么?
  [Unknown]:  wu
您的组织单位名称是什么?
  [Unknown]:  xxx公司
您的组织名称是什么?
  [Unknown]:  xxx组织
您所在的城市或区域名称是什么?
  [Unknown]:  北京
您所在的省/市/自治区名称是什么?
  [Unknown]:  京
该单位的双字母国家/地区代码是什么?
  [Unknown]:  86
CN=wu, OU=xxx公司, O=xxx组织, L=北京, ST=京, C=86是否正确?
  [否]:  是

正在为以下对象生成 2,048 位RSA密钥对和自签名证书 (SHA256withRSA) (有效期为 14,000 天):
         CN=wu, OU=xxx公司, O=xxx组织, L=北京, ST=京, C=86
[正在存储demo.jks]

Warning:
JKS 密钥库使用专用格式。建议使用 "keytool -importkeystore -srckeystore demo.jks -destkeystore demo.jks -deststoretype pkcs12" 迁移到行业标准格式 PKCS12。

D:developAndroid Studiojrebin>

3:JKS 迁移到行业标准格式 PKCS12

语法:Android Studio会提示出来迁移的方法直接复制运行就可以了

keytool -importkeystore -srckeystore demo.jks -destkeystore demo.jks -deststoretype pkcs12" 迁移到行业标准格式 PKCS12

效果:

D:developAndroid Studiojrebin>keytool -genkey -v -keystore demo.jks -alias demo  -storepass 123456 -keypass 123456 -keyalg RSA -validity 14000
您的名字与姓氏是什么?
  [Unknown]:  wu
您的组织单位名称是什么?
  [Unknown]:  xxx公司
您的组织名称是什么?
  [Unknown]:  xxx组织
您所在的城市或区域名称是什么?
  [Unknown]:  北京
您所在的省/市/自治区名称是什么?
  [Unknown]:  京
该单位的双字母国家/地区代码是什么?
  [Unknown]:  86
CN=wu, OU=xxx公司, O=xxx组织, L=北京, ST=京, C=86是否正确?
  [否]:  是

正在为以下对象生成 2,048 位RSA密钥对和自签名证书 (SHA256withRSA) (有效期为 14,000 天):
         CN=wu, OU=xxx公司, O=xxx组织, L=北京, ST=京, C=86
[正在存储demo.jks]

Warning:
JKS 密钥库使用专用格式。建议使用 "keytool -importkeystore -srckeystore demo.jks -destkeystore demo.jks -deststoretype pkcs12" 迁移到行业标准格式 PKCS12。

D:developAndroid Studiojrebin>keytool -importkeystore -srckeystore demo.jks -destkeystore demo.jks -deststoretype pkcs12
输入源密钥库口令:
已成功导入别名 demo 的条目。
已完成导入命令: 1 个条目成功导入, 0 个条目失败或取消

Warning:
已将 "demo.jks" 迁移到 Non JKS/JCEKS。将 JKS 密钥库作为 "demo.jks.old" 进行了备份。

D:developAndroid Studiojrebin>

3: 生成SHA1 MD5

1:第一步配置将jks配置到项目的app的build.gradle
注意:jks文件也要放在app目录下或者动态替换storeFile的文件路径


signingConfigs {
      debug {
          keyAlias 'dh'              //别名
          keyPassword '123456'        //key密码
          storePassword '123456'    // store的密码,注意是否与key的密码相同
          storeFile file('dh.keystore')//key的路径,注意不能与release版本相同   
   }
      release {
          keyAlias 'dh'
          keyPassword '123456'
          storePassword '123456'
          storeFile file('dh.keystore')
      }
  }
  buildTypes {
      release {
          zipAlignEnabled true                    //Zipalign优化
          signingConfig signingConfigs.release    //签名
      }
      debug {
          signingConfig signingConfigs.debug
          zipAlignEnabled true                    //Zipalign优化
      }
  }

2:生成SHA1,以及MD5
双击: signingReport


Android studio -->右边框 -->Gradle --> 项目 --> Task -->  signingReport(双击)

Android Studio 生成签名文件以及JKS 密钥库专用格式 PKCS12 适配
微信图片_20210422155245.png
Android Studio 生成签名文件以及JKS 密钥库专用格式 PKCS12 适配
微信图片_20210422155250.png
声明:本文内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:qvyue@qq.com 进行举报,并提供相关证据,工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。