Java制作證書的工具keytool用法詳解

一、keytool的概念

  keytool 是個密鑰和證書管理工具。它使用戶能夠管理自己的公鑰/私鑰對及相關證書,用於(通過數字簽名)自我認證(用戶向別的用戶/服務認證自己)或數據完整性以及認證服務。在JDK 1.4以後的版本中都包含瞭這一工具,它的位置為%JAVA_HOME%\bin\keytool.exe,如下圖所示:

二、keytool的用法

三、創建證書

  創建證書主要是使用" -genkeypair",該命令的可用參數如下:

范例:生成一個名稱為test1的證書

Cmd代碼

keytool -genkeypair -alias "test1" -keyalg "RSA" -keystore "test.keystore" 

功能:

創建一個別名為test1的證書,該證書存放在名為test.keystore的密鑰庫中,若test.keystore密鑰庫不存在則創建。

參數說明:

  • -genkeypair:生成一對非對稱密鑰;
  • -alias:指定密鑰對的別名,該別名是公開的;
  • -keyalg:指定加密算法,本例中的采用通用的RAS加密算法;
  • -keystore:密鑰庫的路徑及名稱,不指定的話,默認在操作系統的用戶目錄下生成一個".keystore"的文件

註意:

  1.密鑰庫的密碼至少必須6個字符,可以是純數字或者字母或者數字和字母的組合等等

  2."名字與姓氏"應該是輸入域名,而不是我們的個人姓名,其他的可以不填

執行完上述命令後,在操作系統的用戶目錄下生成瞭一個"test.keystore"的文件,如下圖所示:  

四、查看密鑰庫裡面的證書

范例:查看test.keystore這個密鑰庫裡面的所有證書

Cmd代碼

keytool -list -keystore test.keystore

五、導出到證書文件

范例:將名為test.keystore的證書庫中別名為test1的證書條目導出到證書文件test.crt中

Cmd代碼

keytool -export -alias test1 -file test.crt -keystore test.keystore

運行結果:在操作系統的用戶目錄(gacl)下生成瞭一個"test.crt"的文件,如下圖所示: 

六、導入證書

范例:將證書文件test.crt導入到名為test_cacerts的證書庫中

Cmd代碼:

keytool -import -keystore test_cacerts -file test.crt

七、查看證書信息

范例:查看證書文件test.crt的信息

Cmd代碼:

keytool -printcert -file "test.crt"

八、刪除密鑰庫中的條目

范例:刪除密鑰庫test.keystore中別名為test1的證書條目

Cmd代碼:

keytool -delete -keystore test.keystore -alias test1

九、修改證書條目的口令

范例:將密鑰庫test.keystore中別名為test2的證書條目的密碼修改為xdp123456

Cmd代碼:

keytool -keypasswd -alias test2 -keystore test.keystore

到此這篇關於Java制作證書的工具keytool用法詳解的文章就介紹到這瞭,更多相關Java keytool用法內容請搜索WalkonNet以前的文章或繼續瀏覽下面的相關文章希望大傢以後多多支持WalkonNet!

推薦閱讀: