Java 中的 keytool.exe (位於 JDK\Bin 目錄下)可以用來建立數位憑證,所有的數位憑證是以一條一條(採用別名區別)的形式存入認證庫的中,認證庫中的一條認證包含該條認證的私密金鑰,公開金鑰和對應的 數位憑證的資訊。認證庫中的一條認證可以匯出數位憑證檔案,數位憑證檔案只包括主體資訊和對應的公開金鑰。
1.認證的顯示
-list
[-v | -rfc] [-alias <alias>]
[-keystore <keystore>] [-storepass <storepass>]
[-storetype <storetype>] [-provider <provider_class_name>]
例如:keytool -list -v -alias RapaServer -keystore cacerts -storepass 12345678
keytool -list -v -keystore d2aapplet.keystore -storepass 12345678 -storetype IAIKKeystore
2.將認證匯出到認證檔案
例如:keytool -export -keystore monitor.keystore -alias monitor -file monitor.cer
將把認證庫 monitor.keystore 中的別名為 monitor 的認證匯出到 monitor.cer 認證檔案中,它包含認證主體的資訊及認證的公開金鑰,不包括私密金鑰,可以公開。
keytool -export -keystore d2aApplet.keystore -alias RapaServer -file Rapa.cert -storetype IAIKKeystore
3.將keystore匯入認證中
這裡向Java預設的認證 cacerts匯入Rapa.cert
keytool -import -alias RapaServer -keystore cacerts -file Rapa.cert -keystore cacerts
4.認證條目的刪除
keytool的命令列參數 -delete 可以刪除密鑰庫中的條目,如: keytool -delete -alias RapaServer -keystore d2aApplet.keystore ,這條命令將 d2aApplet.keystore 中的 RapaServer 這一條認證刪除了。
5.認證條目口令的修改
使用 -keypasswd 參數,如:keytool -keypasswd -alias RapaServer -keystore d2aApplet.keystore,可以以互動的方式修改 d2aApplet.keystore認證庫中的條目為 RapaServer 的認證。
Keytool -keypasswd -alias RapaServer -keypass 654321 -new 123456 -storepass 888888 -keystore d2aApplet.keystore這一行命令以非互動方式修改庫中別名為 RapaServer 的認證的密碼為新密碼 654321,行中的 123456 是指該條認證的原密碼, 888888 是指認證庫的密碼。