您好,登錄后才能下訂單哦!
Java keytool是密鑰和證書管理工具。它使用戶能夠管理自己的公鑰/私鑰對及相關證書,用于(通過數字簽名)自我認證(用戶向別的用戶/服務認證自己)或數據完整性以及認證服務。它還允許用戶儲存他們的通信對等者的公鑰(以證書形式)。
一. Keytool創建和導入命令
創建keystore和密鑰對
Generate a Java keystore and key pair
keytool -genkey -alias mydomain -keyalg RSA -keystore keystore.jks -keysize 2048
為存在的keystore生成證書請求文件CSR
Generate a certificate signing request (CSR) for an existing Java keystore
keytool -certreq -alias mydomain -keystore keystore.jks -file mydomain.csr
導入根證書或中級證書到keystore
Import a root or intermediate CA certificate to an existing Java keystore
keytool -import -trustcacerts -alias root -file mydomain.crt -keystore keystore.jks
導入SSL服務器證書到keystore
Import a signed primary certificate to an existing Java keystore
keytool -import -trustcacerts -alias mydomain -file mydomain.crt -keystore keystore.jks
為存在的keystore生成自簽名證書
Generate a keystore and self-signed certificate
keytool -genkey -keyalg RSA -alias selfsigned -keystore keystore.jks -storepass password -validity 360 -keysize 2048
二. Keytool查看命令
查看單個證書
Check a stand-alone certificate
keytool -printcert -v -file mydomain.crt
列出keystore存在的所有證書
Check which certificates are in a Java keystore
keytool -list -v -keystore keystore.jks
使用別名查看keystore特定條目
Check a particular keystore entry using an alias
keytool -list -v -keystore keystore.jks -alias mydomain
三. 其他Keytool命令
刪除keystore里面指定證書
Delete a certificate from a Java Keytool keystore
keytool -delete -alias mydomain -keystore keystore.jks
更改keysore密碼
Change a Java keystore password
keytool -storepasswd -new new_storepass -keystore keystore.jks
導出keystore里面的指定證書
Export a certificate from a keystore
keytool -export -alias mydomain -file mydomain.crt -keystore keystore.jks
列出信任的CA證書
List Trusted CA Certs
keytool -list -v -keystore $JAVA_HOME/jre/lib/security/cacerts
導入新的CA到信任證書
Import New CA into Trusted Certs
keytool -import -trustcacerts -file /path/to/ca/ca.pem -alias CA_ALIAS -keystore $JAVA_HOME/jre/lib/security/cacerts
Keytool介紹
Keytool 是一個Java數據證書的管理工具 ,Keytool將密鑰(key)和證書(certificates)存在一個稱為keystore的文件中在keystore里,包含兩種數據:密鑰實體(Key entity)-密鑰(secret key)或者是私鑰和配對公鑰(采用非對稱加密)可信任的證書實體(trusted certificate entries)-只包含公鑰.
JDK中keytool常用參數說明(不同版本有差異,詳細可參見【附錄】中的官方文檔鏈接):
-genkey 在用戶主目錄
-genkey 在用戶主目錄中創建一個默認文件”.keystore”,還會產生一個mykey的別名,mykey中包含用戶的公鑰、私鑰和證書(在沒有指定生成位置的情況下,keystore會存在用戶系統默認目錄)
-alias 產生別名 每個keystore都關聯這一個獨一無二的alias,這個alias通常不區分大小寫
-keystore 指定密鑰庫的名稱(產生的各類信息將不在.keystore文件中)
-keyalg 指定密鑰的算法 (如 RSA DSA,默認值為:DSA)
-validity 指定創建的證書有效期多少天(默認 90)
-keysize 指定密鑰長度 (默認 1024)
-storepass 指定密鑰庫的密碼(獲取keystore信息所需的密碼)
-keypass 指定別名條目的密碼(私鑰的密碼)
-dname 指定證書發行者信息 其中: “CN=名字與姓氏,OU=組織單位名稱,O=組織名稱,L=城市或區域名 稱,ST=州或省份名稱,C=單位的兩字母國家代碼”
-list 顯示密鑰庫中的證書信息 keytool -list -v -keystore 指定keystore -storepass 密碼
-v 顯示密鑰庫中的證書詳細信息
-export 將別名指定的證書導出到文件 keytool -export -alias 需要導出的別名 -keystore 指定keystore -file 指定導出的證書位置及證書名稱 -storepass 密碼
-file 參數指定導出到文件的文件名
-delete 刪除密鑰庫中某條目 keytool -delete -alias 指定需刪除的別 -keystore 指定keystore – storepass 密碼
-printcert 查看導出的證書信息 keytool -printcert -file g:\sso\michael.crt
-keypasswd 修改密鑰庫中指定條目口令 keytool -keypasswd -alias 需修改的別名 -keypass 舊密碼 -new 新密碼 -storepass keystore密碼 -keystore sage
-storepasswd 修改keystore口令 keytool -storepasswd -keystore g:\sso\michael.keystore(需修改口令的keystore) -storepass pwdold(原始密碼) -new pwdnew(新密碼)
-import 將已簽名數字證書導入密鑰庫 keytool -import -alias 指定導入條目的別名 -keystore 指定keystore -file 需導入的證書
中創建一個默認文件”.keystore”,還會產生一個mykey的別名,mykey中包含用戶的公鑰、私鑰和證書(在沒有指定生成位置的情況下,keystore會存在用戶系統默認目錄)
-alias 產生別名 每個keystore都關聯這一個獨一無二的alias,這個alias通常不區分大小寫
-keystore 指定密鑰庫的名稱(產生的各類信息將不在.keystore文件中)
-keyalg 指定密鑰的算法 (如 RSA DSA,默認值為:DSA)
-validity 指定創建的證書有效期多少天(默認 90)
-keysize 指定密鑰長度 (默認 1024)
-storepass 指定密鑰庫的密碼(獲取keystore信息所需的密碼)
-keypass 指定別名條目的密碼(私鑰的密碼)
-dname 指定證書發行者信息 其中: “CN=名字與姓氏,OU=組織單位名稱,O=組織名稱,L=城市或區域名 稱,ST=州或省份名稱,C=單位的兩字母國家代碼”
-list 顯示密鑰庫中的證書信息 keytool -list -v -keystore 指定keystore -storepass 密碼
-v 顯示密鑰庫中的證書詳細信息
-export 將別名指定的證書導出到文件 keytool -export -alias 需要導出的別名 -keystore 指定keystore -file 指定導出的證書位置及證書名稱 -storepass 密碼
-file 參數指定導出到文件的文件名
-delete 刪除密鑰庫中某條目 keytool -delete -alias 指定需刪除的別 -keystore 指定keystore – storepass 密碼
-printcert 查看導出的證書信息 keytool -printcert -file g:\sso\michael.crt
-keypasswd 修改密鑰庫中指定條目口令 keytool -keypasswd -alias 需修改的別名 -keypass 舊密碼 -new 新密碼 -storepass keystore密碼 -keystore sage
-storepasswd 修改keystore口令 keytool -storepasswd -keystore g:\sso\michael.keystore(需修改口令的keystore) -storepass pwdold(原始密碼) -new pwdnew(新密碼)
-import 將已簽名數字證書導入密鑰庫 keytool -import -alias 指定導入條目的別名 -keystore 指定keystore -file 需導入的證書
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。