日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

数字证书管理工具keytool常用命令介绍

發(fā)布時(shí)間:2025/5/22 编程问答 23 豆豆
生活随笔 收集整理的這篇文章主要介紹了 数字证书管理工具keytool常用命令介绍 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

需要給一個(gè)apk加簽名,用到了keytool這個(gè)工具,下面轉(zhuǎn)載一篇介紹keytool的文章

http://blog.chinaunix.net/uid-17102734-id-2830223.html

——————————————

Keytool 是一個(gè)Java 數(shù)據(jù)證書的管理工具 ,Keytool 將密鑰(key)和證書(certificates)存在一個(gè)稱為keystore的文件中。

在keystore里,包含兩種數(shù)據(jù):

(1)密鑰實(shí)體(Key entity)——密鑰(secret key)又或者是私鑰和配對公鑰(采用非對稱加密)
(2)可信任的證書實(shí)體(trusted certificate entries)——只包含公鑰

JDK中keytool常用命令:

-genkey????? 在用戶主目錄中創(chuàng)建一個(gè)默認(rèn)文件".keystore",還會(huì)產(chǎn)生一個(gè)mykey的別名,mykey中包含用戶的公鑰、私鑰和證書(在沒有指定生成位置的情況下,keystore會(huì)存在用戶系統(tǒng)默認(rèn)目錄,如:對于window xp系統(tǒng),會(huì)生成在系統(tǒng)的C:\Documents and Settings\UserName\文件名為“.keystore”)


-alias?????? 產(chǎn)生別名,每個(gè)keystore都關(guān)聯(lián)這一個(gè)獨(dú)一無二的alias,這個(gè)alias通常不區(qū)分大小寫


-keystore??? 指定密鑰庫的名稱(產(chǎn)生的各類信息將不在.keystore文件中)


-keyalg????? 指定密鑰的算法 (如 RSA? DSA(如果不指定默認(rèn)采用DSA))


-validity??? 指定創(chuàng)建的證書有效期多少天


-keysize???? 指定密鑰長度


-storepass?? 指定密鑰庫的密碼(獲取keystore信息所需的密碼)


-keypass???? 指定別名條目的密碼(私鑰的密碼)


-dname?????? 指定證書擁有者信息

例如:? "CN=名字與姓氏,OU=組織單位名稱,O=組織名稱,L=城市或區(qū)域名稱,ST=州或省份名稱,C=單位的兩字母國家代碼"


-list??????? 顯示密鑰庫中的證書信息?????


-v?????????? 顯示密鑰庫中的證書詳細(xì)信息


-export????? 將別名指定的證書導(dǎo)出到文件?

keytool -export -alias 需要導(dǎo)出的別名 -keystore 指定keystore -file 指定導(dǎo)出的證書位置及證書名稱 -storepass 密碼

-file??????? 參數(shù)指定導(dǎo)出到文件的文件名


-delete????? 刪除密鑰庫中某條目?

keytool -delete -alias 指定需刪除的別名? -keystore 指定keystore? -storepass 密碼?????

-printcert?? 查看導(dǎo)出的證書信息

keytool -printcert -file yushan.crt????????

-keypasswd?? 修改密鑰庫中指定條目口令???

keytool -keypasswd -alias 需修改的別名 -keypass 舊密碼 -new? 新密碼? -storepass keystore密碼? -keystore

-import????? 將已簽名數(shù)字證書導(dǎo)入密鑰庫?

keytool -import -alias 指定導(dǎo)入條目的別名 -keystore 指定keystore -file 需導(dǎo)入的證書

下面是各選項(xiàng)的缺省值
-alias "mykey"

-keyalg "DSA"

-keysize 1024

-validity 90

-keystore 用戶宿主目錄中名為 .keystore 的文件

-file 讀時(shí)為標(biāo)準(zhǔn)輸入,寫時(shí)為標(biāo)準(zhǔn)輸出
??????????


1、keystore的生成:

(1)分階段生成:
???? keytool -genkey -alias yushan(別名) -keypass
yushan(別名密碼) -keyalg RSA(算法) -keysize 1024(密鑰長度) -validity 365(有效期,天單位) -keystore e:\yushan.keystore(指定生成證書的位置和證書名稱) -storepass 123456(獲取keystore信息的密碼);回車輸入相關(guān)信息即可;
????
(2)一次性生成:
???? keytool -genkey -alias yushan -keypass yushan
-keyalg RSA -keysize 1024 -validity 365 -keystore?e:\yushan.keystore -storepass 123456 -dname "CN=(名字與姓氏), OU=(組織單位名稱), O=(組織名稱), L=(城市或區(qū)域名稱), ST=(州或省份名稱), C=(單位的兩字母國家代碼)";(中英文即可)

2、keystore信息的查看:
?? keytool -list? -v -keystore e:\keytool
\yushan.keystore -storepass 123456
顯示內(nèi)容:
---------------------------------------------------
Keystore 類型: JKS
Keystore 提供者: SUN

您的 keystore 包含 1 輸入

別名名稱: yushan
創(chuàng)建日期: 2009-7-29
項(xiàng)類型: PrivateKeyEntry
認(rèn)證鏈長度: 1
認(rèn)證 [1]:
所有者:CN=yushan, OU=xx公司, O=xx協(xié)會(huì), L=湘潭, ST=
湖南, C=中國簽發(fā)人:CN=yushan, OU=xx公司, O=xx協(xié)會(huì), L=湘潭, ST=湖南, C=中國
序列號:4a6f29ed
有效期: Wed Jul 29 00:40:13 CST 2009 至Thu Jul 29
00:40:13 CST 2010
證書指紋:

MD5:A3:D7:D9:74:C3:50:7D:10:C9:C2:47:B0:33:90:45:C3
SHA1:2B:FC:9E:3A:DF:C6:C4:FB:87:B8:A0:C6:99:43:E9:4C:4A:E1:18:E8
???????? 簽名算法名稱:SHA1withRSA
???????? 版本: 3
---------------------------------------------------

缺省情況下,-list 命令打印證書的 MD5 指紋。而如果指定了 -v 選項(xiàng),將以可讀格式打印證書,如果指定了 -rfc 選項(xiàng),將以可打印的編碼格式輸出證書。

keytool -list? -rfc -keystore e:\yushan.keystore -

storepass 123456

顯示:

---------------------------------------------------

Keystore 類型: JKS
Keystore 提供者: SUN

您的 keystore 包含 1 輸入

別名名稱: yushan
創(chuàng)建日期: 2009-7-29
項(xiàng)類型: PrivateKeyEntry
認(rèn)證鏈長度: 1
認(rèn)證 [1]:
-----BEGIN CERTIFICATE-----
MIICSzCCAbSgAwIBAgIESm8p7TANBgkqhkiG9w0BAQUFADBqMQ8

wDQYDVQQGDAbkuK3lm70xDzAN
BgNVBAgMBua5luWNlzEPMA0GA1UEBwwG5rmY5r2tMREwDwYDVQQ

KDAh4eOWNj+S8mjERMA8GA1UE
CwwIeHjlhazlj7gxDzANBgNVBAMTBnl1c2hhbjAeFw0wOTA3Mjg

xNjQwMTNaFw0xMDA3MjgxNjQw
MTNaMGoxDzANBgNVBAYMBuS4reWbvTEPMA0GA1UECAwG5rmW5Y2

XMQ8wDQYDVQQHDAbmuZjmva0x
ETAPBgNVBAoMCHh45Y2P5LyaMREwDwYDVQQLDAh4eOWFrOWPuDE

PMA0GA1UEAxMGeXVzaGFuMIGf
MA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCJoru1RQczRzTnBWx

efVNspQBykS220rS8Y/oX3mZa
hjL4wLfOURzUuxxuVQR2jx7QI+XKME

+DHQj9r6aAcLBCi/T1jwF8mVYxtpRuTzE/6KEZdhowEe70
liWLVE

+hytLBHZ03Zhwcd6q5HUMu27du3MPQvqiwzTY7MrwIvQQ8iQIDA

QABMA0GCSqGSIb3DQEB
BQUAA4GBAGoQQ1/FnTfkpQh

+Ni6h3fZdn3sR8ZzDMbOAIYVLAhBb85XDJ8QZTarHbZMJcIdHxA

l1
i08ct3E8U87V9t8GZFWVC4BFg/

+zeFEv76SFpVE56iX7P1jpsu78z0m69hHlds77VJTdyfMSvtXv
sYHP3fxfzx9WyhipBwd8VPK/NgEP
-----END CERTIFICATE-----

---------------------------------------------------

3、證書的導(dǎo)出:

keytool -export -alias yushan -keystore e:\yushan.keystore -file e:\yushan.crt(指定導(dǎo)出的證書位置及證書名稱) -storepass 123456

4、查看導(dǎo)出的證書信息

keytool -printcert -file yushan.crt
顯示:(在windows下可以雙擊yushan.crt查看)
---------------------------------------------------

所有者:CN=yushan, OU=xx公司, O=xx協(xié)會(huì), L=湘潭, ST=湖南, C=中國簽發(fā)人:CN=yushan, OU=xx公司, O=xx協(xié)會(huì), L=湘潭, ST=湖南, C=中國
序列號:4a6f29ed
有效期: Wed Jul 29 00:40:13 CST 2009 至Thu Jul 29
00:40:13 CST 2010
證書指紋:????????

MD5:A3:D7:D9:74:C3:50:7D:10:C9:C2:47:B0:33:90:45:C3
SHA1:2B:FC:9E:3A:DF:C6:C4:FB:87:B8:A0:C6:99:43:E9:4C:4A:E1:18:E8
簽名算法名稱:SHA1withRSA
版本: 3
---------------------------------------------------

5、證書的導(dǎo)入:
準(zhǔn)備一個(gè)導(dǎo)入的證書:
keytool -genkey -alias shuany -keypass shuany -
keyalg RSA -keysize 1024 -validity 365 -keystore? e:\shuany.keystore -storepass 123456 -dname "CN=shuany, OU=xx, O=xx, L=xx, ST=xx, C=xx";
keytool -export -alias shuany -keystore e:
\shuany.keystore -file e:\shuany.crt -storepass 123456
?現(xiàn)在將shuany.crt 加入到y(tǒng)ushan.keystore中:keytool -import -alias shuany(指定導(dǎo)入證書的別名
,如果不指定默認(rèn)為mykey,別名唯一,否則導(dǎo)入出錯(cuò)) -file e:\shuany.crt -keystore e:\yushan.keystore -storepass 123456 keytool -list? -v -keystore e:\keytool\yushan.keystore -storepass 123456
顯示:
---------------------------------------------------

Keystore 類型: JKS
Keystore 提供者: SUN

您的 keystore 包含 2 輸入

別名名稱: yushan
創(chuàng)建日期: 2009-7-29
項(xiàng)類型: PrivateKeyEntry
認(rèn)證鏈長度: 1
認(rèn)證 [1]:
所有者:CN=yushan, OU=xx公司, O=xx協(xié)會(huì), L=湘潭, ST=
湖南, C=中國簽發(fā)人:CN=yushan, OU=xx公司, O=xx協(xié)會(huì), L=湘潭, ST=湖南, C=中國
序列號:4a6f29ed
有效期: Wed Jul 29 00:40:13 CST 2009 至Thu Jul 29
00:40:13 CST 2010
證書指紋:
????????

MD5:A3:D7:D9:74:C3:50:7D:10:C9:C2:47:B0:33:90:45:C3?SHA1:2B:FC:9E:3A:DF:C6:C4:FB:87:B8:A0:C6:99:43:E9:4C:4A:E1:18:E8
簽名算法名稱:SHA1withRSA
版本: 3

*******************************************
*******************************************

別名名稱: shuany
創(chuàng)建日期: 2009-7-29
輸入類型: trustedCertEntry

所有者:CN=shuany, OU=xx, O=xx, L=xx, ST=xx, C=xx
簽發(fā)人:CN=shuany, OU=xx, O=xx, L=xx, ST=xx, C=xx
序列號:4a6f2cd9
有效期: Wed Jul 29 00:52:41 CST 2009 至Thu Jul 29

00:52:41 CST 2010
證書指紋:
MD5:15:03:57:9B:14:BD:C5:50:21:15:47:1E:29:87:A4:E6
SHA1:C1:4F:8B:CD:5E:C2:94:77:B7:42:29:35:5C:BB:BB:2E:9E:F0:89:F5
簽名算法名稱:SHA1withRSA
版本: 3

*******************************************
*******************************************
---------------------------------------------------

6、證書條目的刪除:
keytool -delete -alias shuany(指定需刪除的別名) -
keystore yushan.keystore -storepass 123456
?
7、證書條目口令的修改:
keytool -keypasswd -alias yushan(需要修改密碼的別名
) -keypass yushan(原始密碼) -new 123456(別名的新密碼)? -keystore e:\yushan.keystore -storepass 123456

8、keystore口令的修改:
keytool -storepasswd -keystore e:\yushan.keystore(
需修改口令的keystore) -storepass 123456(原始密碼) -new yushan(新密碼)

9、修改keystore中別名為yushan的信息

keytool -selfcert -alias yushan -keypass yushan -keystore e:\yushan.keystore -storepass 123456 -dname "cn=yushan,ou=yushan,o=yushan,c=us"

?

轉(zhuǎn)載于:https://www.cnblogs.com/mrcypress/p/4919617.html

總結(jié)

以上是生活随笔為你收集整理的数字证书管理工具keytool常用命令介绍的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。