![](/img/trans.png)
[英]keytool error: java.lang.Exception: Keystore file exists, but is empty
[英]Java Keytool CSR error even when keystore exists
我想在自己的服務器之間安全地交換數據,並且這些服務器不會離開內部域。 為此,我想:
為密鑰庫生成密鑰。
使用Keytool生成CSR,在上方指定密鑰。
將響應導入到我的默認cacerts
文件中,以便可以將其稱為我的信任庫。
所以:
keytool -genkeypair -alias mykeys -keystore mykeystore.jks -keypass changeit -storepass changeit -keysize 1024 -noprompt
keytool -certreq -alias myinternalcert -keystore mykeystore.jks -storepass changeit -file myinternalcert.csr
它引發以下錯誤:
keytool error: java.lang.Exception: Alias <myinternalcert> does not exist
我試圖在Oracle博客中查找示例,看起來這是正確生成CSR的方法-但就我而言,這全是錯誤:)
到目前為止,我對SSL唯一了解的是:
密鑰庫-我想向另一台服務器/客戶端進行身份驗證,並且我的私鑰在密鑰庫中。 我還將使用它來簽署我的證書。
信任庫-這用於確定我接收的信息是否來自合法來源,即我是否信任它們。 我在這里存儲證書。
好-我的錯
實際上, alias
與為keystore
創建的alias
相同。 感謝數字海洋上的這篇文章
keytool -certreq -help
不會真正打印出清晰的信息:
選項:
-alias <alias> alias name of the entry to process (should have been "Alias of the keystore entry being used")
-sigalg <sigalg> signature algorithm name
-file <filename> output file name
-keypass <arg> key password
-keystore <keystore> keystore name
-dname <dname> distinguished name
-storepass <arg> keystore password
-storetype <storetype> keystore type
-providername <providername> provider name
-providerclass <providerclass> provider class name
-providerarg <arg> provider argument
-providerpath <pathlist> provider classpath
-v verbose output
-protected password through protected mechanism
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.