jdk中keytool的使用以及如何提取jks文件中的公鑰和私鑰
這里暫時(shí)只需要知道如何使用就可以了。
首先是生成一個(gè)密鑰,
keytool -genkeypair -alias fanyfull -keypass ffkp123456 -validity 365 -storepass ffsp123456 -keystore fanyfull.jks -keyalg RSA
解釋一下這里的選項(xiàng),
- -alias 密鑰對的名稱
- -keypass 密鑰密碼
- -validity 有效期,這里是以天為單位
- -storepass 存儲(chǔ)庫的密碼
- -keystore 指定生成的密鑰文件存放的位置,這里的
fanyfull.jks表示的是當(dāng)前目錄下的fanyfull.jks,如果沒有,就生成這個(gè)文件 - -keyalg 指定這個(gè)密鑰對生成的算法,這里用的是 RSA 算法

如果想查看生成的 jks 文件的詳細(xì)信息,可以使用以下命令,
keytool -list -v -alias fanyfull -storepass ffsp123456 -keystore .\fanyfull.jks

然后是提取私鑰,
keytool -importkeystore -srckeystore .\fanyfull.jks -destkeystore fanyfull.p12 -deststoretype PKCS12 -srcalias fanyfull -deststorepass ffsp123456 -destkeypass ffkp123456
然后根據(jù)提示輸入 storepass 即可,

然后,可以使用 openssl 工具來提取其中的私鑰,
openssl pkcs12 -nodes -in .\fanyfull.p12 -out private.pem
我們可以查看一下這里的私鑰,

這里的 BEGIN PRIVATE KEY 和 END PRIVATE KEY 之間的內(nèi)容就是我們的私鑰。
然后是提取公鑰,
openssl pkey -in .\private.pem -pubout -out public.pem
我們可以查看一下這里的公鑰,

這里的 BEGIN PUBLIC KEY 和 END PUBLIC KEY 之間的內(nèi)容就是我們的私鑰。
而,如果我們單純地只是想提取證書的話,那么,可以使用以下的命令,
keytool -export -alias fanyfull -keystore .\fanyfull.jks -file public.cert -rfc
總結(jié)
到此這篇關(guān)于jdk中keytool的使用以及如何提取jks文件中的公鑰和私鑰的文章就介紹到這了,更多相關(guān)jdk keytool提取jks公鑰和私鑰內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
將springboot項(xiàng)目生成可依賴的jar并引入到項(xiàng)目中的方法
SpringBoot項(xiàng)目默認(rèn)打包的是可運(yùn)行jar包,也可以打包成不可運(yùn)行的jar包,本文給大家介紹將springboot項(xiàng)目生成可依賴的jar并引入到項(xiàng)目中的方法,感興趣的朋友一起看看吧2023-11-11
spring?@Transactional注解中常用參數(shù)詳解
這篇文章主要介紹了spring?@Transactional注解中常用參數(shù)詳解,事物注解方式:?@Transactional,本文結(jié)合實(shí)例代碼給大家介紹的非常詳細(xì),需要的朋友可以參考下2024-02-02
Java Spring中Quartz調(diào)度器詳解及實(shí)例
這篇文章主要介紹了Java Spring中Quartz調(diào)度器詳解及實(shí)例的相關(guān)資料,需要的朋友可以參考下2017-02-02
Java中@DateTimeFormat @JsonFormat失效原因及測試填坑
本文主要介紹了Java中@DateTimeFormat @JsonFormat失效原因及測試填坑,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2023-06-06
淺談JAVA工作流的優(yōu)雅實(shí)現(xiàn)方式
這篇文章主要介紹了淺談JAVA工作流的優(yōu)雅實(shí)現(xiàn)方式,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2018-11-11
關(guān)于servlet向mysql添加數(shù)據(jù)時(shí)中文亂碼問題的解決
最近在工作中遇到一個(gè)小問題,出現(xiàn)了中文亂碼的問題,無奈只能想辦法解決,下面這篇文章主要給大家介紹了關(guān)于servlet向mysql添加數(shù)據(jù)時(shí)中文亂碼問題的解決方法,文中通過示例代碼介紹的非常詳細(xì),需要的朋友可以參考借鑒,下面來一起看看吧。2017-08-08
MyBatis-Plus中Service接口的lambdaUpdate用法及實(shí)例分析
本文將詳細(xì)講解MyBatis-Plus中的lambdaUpdate用法,并提供豐富的案例來幫助讀者更好地理解和應(yīng)用該特性,具有很好的參考價(jià)值,希望對大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2025-03-03

