首页
IT
登录
6mi
u
盘
搜
搜 索
IT
Android程序签名文件
Android程序签名文件
xiaoxiao
2021-03-26
21
J2SDK提供了keytool命令行工具,可以根据指定的参数来创建数字证书。生成的证书或证书库默认保存在命令行当前目录下。
1. 创建数字证书
Command代码
keytool -genkey -v -alias scent -dname
"CN=John,OU=MNG,O=Corp,L=Hangzhou,ST=Zhejiang,C=CN"
-keyalg RSA -keysize
2048
-keypass
123456
-keystore prospectlib -storepass
123456
-storetype JCEKS -validity
900
注:-genkey可以写成-genkeypair
dname的值详解:
CN(Common Name名字与姓氏)
OU(Organization Unit组织单位名称)
O(Organization组织名称)
L(Locality城市或区域名称)
ST(State州或省份名称)
C(Country国家名称)
2. 查看证书库中的所有数字证书
Command代码
keytool -list -rfc -keystore prospectlib -storepass
123456
-storetype JCEKS
注:如果证书库是非默认storetype,需要明确指定。
3. 查看证书详细
Command代码
keytool -list -v -alias scent -keystore prospectlib -storepass
123456
-storetype JCEKS
注:如果证书是非默认storetype,需要明确指定。
4. 导入证书
Command代码
keytool -import -v -trustcacerts -alias scent -file scent.cer -keypass
123456
-keystore prospectlib -storepass
123456
注:
-import可以写成-importcert
-trustcacerts和-v 可以不写,效果一样
5. 导出证书
Command代码
keytool -export -alias scent -file scent.cer -keystore prospectlib -storepass
123456
注:-export可以写成-exportcert
6. 删除证书
Command代码
keytool -delete -alias scent -keystore prospectlib -storepass
123456
-storetype JCEKS
注:如果证书是非默认storetype,需要明确指定。
7. 生成证书签名申请
Command代码
keytool -certreq -alias scent -sigalg
"MD5withRSA"
-file scent.csr -keypass
123456
-keystore cacerts.jks -storepass
123456
注:将生成的scent.scr文件发给CA机构来申请签名。
8. 显示证书
Command代码
keytool -printcert -v -file scent.cer
9. 更改证书别名
Command代码
keytool -changealias -v -alias scent -destalias perfume -keystore prospectlib -storepass
123456
10. 导入证书库
Command代码
keytool -importkeystore -v -srckeystore prospectlib -srcstoretype JKS -srcstorepass
123456
-destkeystore intrinsic -deststoretype JKS -deststorepass
123456
-srcalias terrific prospect -destalias terrific prospect
注:如果不提供-srcalias, -destalias,则会将源库的所有证书导入到目标库中。
11. 修改证书密码
Command代码
keytool -keypasswd -alias brilliant -keystore range -storepass
123456
-keypass
123456
-new
654321
注:如果不提供-keypass,系统会提示你输入新密码。
12. 修改证书库密码
Command代码
keytool -storepasswd -v -new
654321
-keystore range -storepass
123456
-storetype JKS
参数详解:
-dname
"CN=xx,OU=xx,O=xx,L=xx,ST=xx,C=xx"
dn名为"CN=..."
-alias
scent
别名为scent的一个证书
-keyalg
DSA RSA
DSA或RSA算法(当使用-genkeypair参数)
DES DESede AES
DES或DESede或AES算法(当使用-genseckey参数)
-keysize
512
~
1024
密钥的长度为512至1024之间(64的倍数)(当使用-genkeypair和-keyalg DSA参数)
>
512
密钥的长度大于512 (当使用-genkeypair和-keyalg RSA参数)
56
密钥的长度为56 (当使用-genseckey和-keyalg DES 参数)
112 168
密钥长度为112或168(当使用-genseckey和-keyalg DESede 参数)
128 192 256
密钥长度为128或192或256 (当使用-genseckey和-keyalg AES 参数)
-keypass
123456
这个证书的私钥密码为123456
-keystore
prospectlib
证书库的名称为prospectlib
-storepass
123456
证书库的访问密码为123456
-validity
900
证书有效期为900天
-file
scent.cer
从scent.cer文件导入证书,或者导出证书到scent.cer文件
-v
显示详细信息
-rfc
以Base64的编码格式打印证书
-storetype
JCEKS
密钥库的类型为JCEKS。常用的有JKS(默认),JCEKS(推荐),PKCS12,BKS,UBER。每个密钥库只可以是其中一种类型。
转载请注明原文地址: https://ju.6miu.com/read-659353.html
技术
最新回复
(
0
)