赞
踩
记得安装 Java JDK,有 java
环境才能走下面的操作。
# 检查是否安装了 JDK
$ java --version
生成 .keystore
证书,Keytool 指令详细介绍。
# 指令参数解释
$ keytool -genkeypair -alias 别名 -keyalg RSA -keypass 密码 -validity 365(默认90天) -keystore server.keystore -storepass 密码
# 案例指令,可以拷贝直接运行,注意:记录好【别名】跟【密码】
$ keytool -genkeypair -alias dzm -keyalg RSA -keypass 123456 -validity 20000 -keystore ./server.keystore -storepass 123456
# 细节:如果指令带上 -keysize 1024(密钥位数) 参数会报错:(所以去掉)
# 生成的证书 使用的 1024 位 RSA 密钥 被视为存在安全风险。此密钥大小将在未来的更新中被禁用。
-genkeypair
:原 -genkey
,Java 1.6 之后更改,表示生成密钥对
-alias
:产生别名,每个 keystore 都会关联这一个独一无二的 alias,alias 不区分大小写
-keyalg
:指定产生密钥的算法
-keypass
:指定别名条目的密码(私钥的密码)
-sigalg
:签名算法名称
-dname
:唯一判别名,cn 所有者名称,ou 组织单位名称,o 组织名称,l 城市或区域名称,st 州或省份名称,c 两字母国家代码
-validity
:有效天数
-keystore
:密钥库名称
-storetype
:密钥库类型
-storepass
:密钥库口令
查看证书
详细输出:
$ keytool -list -v -keystore server.keystore -storepass 密码
RFC样式输出:
$ keytool -list -rfc -keystore server.keystore -storepass 密码
导出证书
$ keytool -export -alias server -keystore server.keystore -file server.crt -storepass 密码
查看导出证书
$ keytool -printcert -file server.crt
客户端导入证书
$ keytool -import -alias server -keystore server.keystore -file server.crt
以上指令借鉴于 Keytool 生成证书。
打开 Android Studio
,找到菜单上的 Build
:
附:Android App Bundle 与 APK 有什么区别
新建一个证书,Password
后面的 Confirm
就是在输入一次,两次要一样。
Android App
在打包成安装包时需要用到签名文件,不同的编译器生成的签名文件格式也不同。Eclipse
的签名文件是以 .ketstore
为后缀的文件;Android Studio
是以 .jks
为后缀的文件。
创建的证书也可以使用上面的 Keytool
指令查看 SHA1、SHA256
之类的。
现在通过 Keytool
展示证书信息后,也无法获得 MD5
值,可以查看这篇文章:Android keystore 多种方式获取 MD5、签名信息等(包含快应用)。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。