Java制作證書的工具keytool用法詳解
一、keytool的概念
keytool 是個(gè)密鑰和證書管理工具。它使用戶能夠管理自己的公鑰/私鑰對(duì)及相關(guān)證書,用于(通過數(shù)字簽名)自我認(rèn)證(用戶向別的用戶/服務(wù)認(rèn)證自己)或數(shù)據(jù)完整性以及認(rèn)證服務(wù)。在JDK 1.4以后的版本中都包含了這一工具,它的位置為%JAVA_HOME%\bin\keytool.exe,如下圖所示:

二、keytool的用法

三、創(chuàng)建證書
創(chuàng)建證書主要是使用" -genkeypair",該命令的可用參數(shù)如下:

范例:生成一個(gè)名稱為test1的證書
Cmd代碼
keytool -genkeypair -alias "test1" -keyalg "RSA" -keystore "test.keystore"
功能:
創(chuàng)建一個(gè)別名為test1的證書,該證書存放在名為test.keystore的密鑰庫(kù)中,若test.keystore密鑰庫(kù)不存在則創(chuàng)建。
參數(shù)說明:
- -genkeypair:生成一對(duì)非對(duì)稱密鑰;
- -alias:指定密鑰對(duì)的別名,該別名是公開的;
- -keyalg:指定加密算法,本例中的采用通用的RAS加密算法;
- -keystore:密鑰庫(kù)的路徑及名稱,不指定的話,默認(rèn)在操作系統(tǒng)的用戶目錄下生成一個(gè)".keystore"的文件

注意:
1.密鑰庫(kù)的密碼至少必須6個(gè)字符,可以是純數(shù)字或者字母或者數(shù)字和字母的組合等等
2."名字與姓氏"應(yīng)該是輸入域名,而不是我們的個(gè)人姓名,其他的可以不填
執(zhí)行完上述命令后,在操作系統(tǒng)的用戶目錄下生成了一個(gè)"test.keystore"的文件,如下圖所示:

四、查看密鑰庫(kù)里面的證書
范例:查看test.keystore這個(gè)密鑰庫(kù)里面的所有證書
Cmd代碼
keytool -list -keystore test.keystore
五、導(dǎo)出到證書文件
范例:將名為test.keystore的證書庫(kù)中別名為test1的證書條目導(dǎo)出到證書文件test.crt中
Cmd代碼
keytool -export -alias test1 -file test.crt -keystore test.keystore
運(yùn)行結(jié)果:在操作系統(tǒng)的用戶目錄(gacl)下生成了一個(gè)"test.crt"的文件,如下圖所示:

六、導(dǎo)入證書
范例:將證書文件test.crt導(dǎo)入到名為test_cacerts的證書庫(kù)中
Cmd代碼:
keytool -import -keystore test_cacerts -file test.crt
七、查看證書信息
范例:查看證書文件test.crt的信息
Cmd代碼:
keytool -printcert -file "test.crt"
八、刪除密鑰庫(kù)中的條目
范例:刪除密鑰庫(kù)test.keystore中別名為test1的證書條目
Cmd代碼:
keytool -delete -keystore test.keystore -alias test1
九、修改證書條目的口令
范例:將密鑰庫(kù)test.keystore中別名為test2的證書條目的密碼修改為xdp123456
Cmd代碼:
keytool -keypasswd -alias test2 -keystore test.keystore
到此這篇關(guān)于Java制作證書的工具keytool用法詳解的文章就介紹到這了,更多相關(guān)Java keytool用法內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Java設(shè)計(jì)模式之策略模式_動(dòng)力節(jié)點(diǎn)Java學(xué)院整理
策略模式是對(duì)算法的封裝,把一系列的算法分別封裝到對(duì)應(yīng)的類中,并且這些類實(shí)現(xiàn)相同的接口,相互之間可以替換。接下來通過本文給大家分享Java設(shè)計(jì)模式之策略模式,感興趣的朋友一起看看吧2017-08-08
java.lang.UnsupportedOperationException分析及解決辦法
日常開發(fā)中我遇到j(luò)ava.lang.UnsupportedOperationException:異常兩次了,下面這篇文章主要給對(duì)大家介紹了關(guān)于java.lang.UnsupportedOperationException分析及解決辦法,需要的朋友可以參考下2024-03-03
SpringBoot整合RedisTemplate實(shí)現(xiàn)緩存信息監(jiān)控的步驟
這篇文章主要介紹了SpringBoot整合RedisTemplate實(shí)現(xiàn)緩存信息監(jiān)控,一步一步的實(shí)現(xiàn)?Springboot?整合?Redis?來存儲(chǔ)數(shù)據(jù),讀取數(shù)據(jù),需要的朋友可以參考下2022-01-01
解決feignclient調(diào)用服務(wù),傳遞的中文數(shù)據(jù)成???問題
這篇文章主要介紹了解決feignclient調(diào)用服務(wù),傳遞的中文數(shù)據(jù)成???問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2024-01-01
SpringBoot如何返回Json數(shù)據(jù)格式
這篇文章主要介紹了SpringBoot如何返回Json數(shù)據(jù)格式問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-03-03
Java中使用JavaMail多發(fā)郵件及郵件的驗(yàn)證和附件實(shí)現(xiàn)
這篇文章主要介紹了Java中使用Java Mail多發(fā)郵件及郵件的驗(yàn)證和附件實(shí)現(xiàn),包括在郵件中加入圖片等功能的實(shí)現(xiàn)講解,需要的朋友可以參考下2016-02-02

