您好,登錄后才能下訂單哦!
小編給大家分享一下Java中keytool怎么用,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!
keytool 是個密鑰和證書管理工具。它使用戶能夠管理自己的公鑰/私鑰對及相關證書,用于(通過數字簽名)自我認證(用戶向別的用戶/服務認證自己)或數據完整性以及認證服務。在JDK 1.4以后的版本中都包含了這一工具,它的位置為“%JAVA_HOME%\bin\keytool.exe”。
keytool為java原生自帶,安裝java后不需要再進行安裝,作為密鑰和證書管理工具,方便用戶能夠管理自己的公鑰/私鑰及證書,用于認證服務。
keystore
keytool將密鑰(key)和證書(certificates)存儲在keystore文件中,
密鑰需要存儲在密鑰庫中
-alias 產生別名
-keystore 指定密鑰庫的名稱(就像數據庫一樣的證書庫,可以有很多個證書,cacerts這個文件是jre自帶的,你也可以使用其它文件名字,如果沒有這個文件名字,它會創建這樣一個)
-storepass 指定密鑰庫的密碼
-keypass 指定別名條目的密碼
-list 顯示密鑰庫中的證書信息
-v 顯示密鑰庫中的證書詳細信息
-export 將別名指定的證書導出到文件
-file 參數指定導出到文件的文件名
-delete 刪除密鑰庫中某條目
-import 將已簽名數字證書導入密鑰庫
-keypasswd 修改密鑰庫中指定條目口令
-dname 指定證書擁有者信息
-keyalg 指定密鑰的算法
-validity 指定創建的證書有效期多少天
-keysize 指定密鑰長度
生成密鑰庫的同時生成一個密鑰對,并且密鑰庫和密鑰對都是需要密碼的
keytool -genkey -keystore "/Users/..../tmp/keytool/test.keystore" -alias mytest -keyalg RSA -validity 365
填寫相關信息,生成密鑰庫和密鑰對
參數說明:
-genkey: 表示生成密鑰對(公鑰和私鑰)
-keystore:每個 keytool 命令都有一個 -keystore 選項,用于指定 keytool 管理的密鑰倉庫的永久密鑰倉庫文件名稱及其位置。如果不指定 -keystore 選項,則缺省密鑰倉庫將是宿主目錄中(由系統屬性的"user.home"決定)名為 .keystore 的文件。如果該文件并不存在,則它將被創建。
-alias:指定密鑰條目的別名,該別名是公開的。
-keyalg:指定密鑰的算法,如:RSA、DSA(如果不指定默認采用DSA))
-validity:指定創建的證書有效期多少天
keytool -list -v -keystore test.keystore -storepass 123456
-list 列出證書
-v 顯示詳細信息
-keystore 指定密鑰庫
-storepass 指定密鑰庫的解密密碼
-rfc 以可編碼方式打印證書
keytool -list -rfc -keystore ./test.keystore -storepass 789789
4. 導入證書
keytool -import -alias test1 -file ./test.crt -keystore ./test.keystore -storepass 789789
keytool -export -alias mytest -keystore ./test.keystore -file ./test.crt -storepass 789789
修改密鑰庫中指定條目的密碼
keytool -keypasswd -alias 需修改的別名 -keypass 舊密碼 -new 新密碼 -storepass keystore密碼 -keystore 所在的密鑰庫
修改密鑰庫的密碼
keytool -storepasswd -keystore ./yushan.keystore(需修改口令的keystore) -storepass 123456(原始密碼) -new yushan(新密碼)
以上是“Java中keytool怎么用”這篇文章的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注億速云行業資訊頻道!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。