zoukankan      html  css  js  c++  java
  • Android自有证书生成指南

    Android部署打包apk应用,需要用上数字证书进行签名,来表明身份的。

    说到苹果证书,那是要收费的。而安卓证书恰恰相反,免费又不需要审批。

    安卓证书可以使用Java的keytool工具生成,以下是window平台生成的方法:

    安装java(已安装的跳过)

     可访问Oracle官方去安装java:https://www.java.com/zh_CN/download/win10.jsp

     下面已安装目录“C:Program Files (x86)Javajdk1.8.0_73”为例,实际操作请修改自己的安装目录

    安装java完成后,打开安装目录,找到bin文件夹,如果里面有keytool.exe这个文件,那么下面的安卓证书就能搞了

    生成签名证书

     在“C:Program Files (x86)Javajdk1.8.0_73in”目录下,打开终端,使用keytool工具的-genkey命令生成证书(如果你配置了系统变量,可以直接使用keytool命令,就没必要和我一样输入相对路径“./keytool.exe”)

    ./keytool.exe -genkey -alias testalias -keyalg RSA -keysize 2048 -validity 36500 -keystore test.keystore
    
    testalias是证书别名,可修改为自己想设置的字符,建议使用英文字母和数字
    test.keystore是证书文件名称,可修改为自己想设置的文件名称,也可以指定完整文件路径   

    Enter后会提示:

    Enter keystore password:  //输入证书文件密码,输入完成回车  
    Re-enter new password:   //再次输入证书文件密码,输入完成回车  
    What is your first and last name?  
      [Unknown]:  //输入名字和姓氏,输入完成回车  
    What is the name of your organizational unit?  
      [Unknown]:  //输入组织单位名称,输入完成回车  
    What is the name of your organization?  
      [Unknown]:  //输入组织名称,输入完成回车  
    What is the name of your City or Locality?  
      [Unknown]:  //输入城市或区域名称,输入完成回车  
    What is the name of your State or Province?  
      [Unknown]:  //输入省/市/自治区名称,输入完成回车  
    What is the two-letter country code for this unit?  
      [Unknown]:  //输入国家/地区代号(两个字母),中国为CN,输入完成回车  
    Is CN=XX, OU=XX, O=XX, L=XX, ST=XX, C=XX correct?  
      [no]:  //确认上面输入的内容是否正确,输入y,回车  
    
    Enter key password for <testalias>  
            (RETURN if same as keystore password):  //确认证书密码与证书文件密码一样,直接回车就可以 
    以上的命令运行完成后,在当前目录下(C:Program Files (x86)Javajdk1.8.0_73in)会有一个test.keystore文件生成

    查看证书信息

    可以用以下命令查看:

    ./keytool.exe -list -v -keystore test.keystore  
    Enter keystore password: //输入密码,Enter  

    会输出以下格式信息:

    密钥库类型: JKS
    密钥库提供方: SUN
    
    您的密钥库包含 1 个条目
    
    别名: testalias
    创建日期: 2020-5-22
    条目类型: PrivateKeyEntry
    证书链长度: 1
    证书[1]:
    所有者: CN=murenziwei, OU=web, O=个人, L=神之领域, ST=天庭, C=CN
    发布者: CN=murenziwei, OU=web, O=个人, L=神之领域, ST=天庭, C=CN
    序列号: 1bfbc40a
    有效期开始日期: Fri May 22 15:11:17 CST 2020, 截止日期: Sun Apr 28 15:11:17 CST 2120
    证书指纹:
             MD5: E6:FB:23:EB:BF:C3:D0:0D:94:36:DE:E2:76:E0:1A:F5
             SHA1: FE:1D:71:B2:1F:3F:AE:E8:CB:E4:A4:DE:05:B9:D7:49:BA:50:41:0D
             SHA256: 7B:17:60:8A:B4:0C:3C:8F:E6:98:75:5A:61:E0:54:BC:EA:32:EB:22:CF:19:49:04:C8:CF:25:1E:1C:88:5B:ED
             签名算法名称: SHA256withRSA
             版本: 3
    
    扩展:
    
    #1: ObjectId: 2.5.29.14 Criticality=false
    SubjectKeyIdentifier [
    KeyIdentifier [
    0000: E8 52 AA 7D 17 3D F4 DB   1E EC 14 D2 C6 F0 A7 52  .R...=.........R
    0010: 16 E5 36 FF                                        ..6.
    ]
    ]
    
    
    
    *******************************************
    *******************************************  

    其中的证书指纹信息:

    MD5
    证书的MD5指纹信息(安全码MD5)
    SHA1
    证书的SHA1指纹信息(安全码SHA1)
    SHA256
    证书的SHA256指纹信息(安全码SHA245) 
  • 相关阅读:
    Struts2-Spring和Hibernate整合
    windows下使用Eclipse编译执行MapReduce程序 Hadoop2.6.0/Ubuntu
    Android 基于Netty的消息推送方案之对象的传递(四)
    基于JQuery实现表单元素值的回写
    iOS 从UITableViewController中分离数据源
    navicat premium 的使用——navicat 连接MySQL数据库
    【甘道夫】Ubuntu14 server + Hadoop2.2.0环境下Sqoop1.99.3部署记录
    罗永浩和锤子手机:对不起,我被你打动了
    用C语言解决迷宫问题
    Android利用reative_layout生成梅花界面
  • 原文地址:https://www.cnblogs.com/murenziwei/p/12937512.html
Copyright © 2011-2022 走看看