命令行生成Android jks签名文件并获取jks信息

Javakeytool是用于管理和生成密钥对及证书的工具,支持创建Androidjks签名文件。通过指定别名、密钥算法(如RSA)、口令等参数,可以在命令行中生成签名文件。使用keytool的`list`命令可以查看keystore中的信息,包括条目、证书指纹等。
摘要由CSDN通过智能技术生成

Java keytool是密钥和证书管理工具。它使用户能够管理自己的公钥/私钥对及相关证书,用于(通过数字签名)自我认证(用户向别的用户/服务认证自己)或数据完整性以及认证服务。它还允许用户储存他们的通信对等者的公钥(以证书形式)。

本篇主要介绍

  • 查看keytool的参数说明
  • 如何用命令行生成Android jks签名文件
  • 获取jks信息

查看keytool的参数说明

在Terminal输入以下命令,可查看keytool所有命令选项

keytool -genkey --help
keytool -genkey --help
keytool -genkeypair [OPTION]...

生成密钥对

选项:

 -alias <alias>          要处理的条目的别名
 -keyalg <alg>           密钥算法名称
 -keysize <size>         密钥位大小
 -groupname <name>       组名。例如,椭圆曲线名称。
 -sigalg <alg>           签名算法名称
 -dname <name>           唯一判别名
 -startdate <date>       证书有效期开始日期/时间
 -ext <value>            X.509 扩展
 -validity <days>        有效天数
 -keypass <arg>          密钥口令
 -keystore <keystore>    密钥库名称
 -storepass <arg>        密钥库口令
 -storetype <type>       密钥库类型
 -providername <name>    提供方名称
 -addprovider <name>     按名称 (例如 SunPKCS11) 添加安全提供方
   [-providerarg <arg>]    配置 -addprovider 的参数
 -providerclass <class>  按全限定类名添加安全提供方
   [-providerarg <arg>]    配置 -providerclass 的参数
 -providerpath <list>    提供方类路径
 -v                      详细输出
 -protected              通过受保护的机制的口令

使用 "keytool -?, -h, or --help" 可输出此帮助消息

使用keytool生成签名文件

命令行举例:

keytool -genkeypair -alias <别名> -keyalg RSA -keypass <密码> -keystore <签名文件名>.jks -storepass <密码>  <文件保存路径(可有可无)>

这里来一个流程示范,仅供参考,正式发布签名不建议这样写。

keytool -genkeypair -alias mytest -keyalg RSA -keypass mypass -keystore mytest.jks -storepass mypass

下面是一个完成的创建流程

keytool -genkeypair -alias mytest -keyalg RSA -keypass mypass -keystore mytest.jks -storepass mypass
您的名字与姓氏是什么?
  [Unknown]:  WH
您的组织单位名称是什么?
  [Unknown]:  WH
您的组织名称是什么?
  [Unknown]:  WH
您所在的城市或区域名称是什么?
  [Unknown]:  WH
您所在的省/市/自治区名称是什么?
  [Unknown]:  HB
该单位的双字母国家/地区代码是什么?
  [Unknown]:  86
CN=WH, OU=WH, O=WH, L=WH, ST=HB, C=86是否正确?
  [否]:  Y

正在为以下对象生成 2,048 位RSA密钥对和自签名证书 (SHA256withRSA) (有效期为 90 天):
     CN=WH, OU=WH, O=WH, L=WH, ST=HB, C=86

获取jks信息

查看的命令:

keytool -list -keystore test.jks

Terminal控制台输出如下

keytool -list -keystore mytest.jks
输入密钥库口令:  
密钥库类型: PKCS12
密钥库提供方: SUN

您的密钥库包含 1 个条目

mytest, 2022年8月1日, PrivateKeyEntry, 
证书指纹 (SHA-256): 3B:85:2A:26:19:92:B9:A2:27:96:0C:43:75:6A:6D:11:46:05:36:27:D2:F4:FE:7E:04:04:49:4D:7E:FD:29:E3
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值