本小節說明數種使用 certutil 和 pk12util 來建立和管理金鑰與憑證的常用程序。如需有關 certutil 和 pk12util 的詳細資訊,請參閱使用 Network Security Services (NSS) 工具以及 NSS 安全性工具網站上的文件,網址是 http://www.mozilla.org/projects/security/pki/nss/tools。
藉由在 java.security 特性檔案 (位於 Java 執行階段的 JAVA_HOME/jre/lib/security 目錄中) 中配置 PKCS#11 提供者,您還可以使用 J2SE keytool 公用程式來管理金鑰和憑證。如需使用 keytool 的詳細資訊以及「Java PKCS#11 Reference Guide」,請參閱 http://java.sun.com/j2se/1.5.0/docs/guide/security/p11guide.html。
本小節說明下列主題:
若要列出已配置 PKCS#11 記號中的金鑰和憑證,請執行下列指令:
certutil -L -d AS_NSS_DB [-h tokenname]
例如,若要列出預設 NSS 軟體記號的內容,請鍵入:
certutil -L -d AS_NSS_DB
標準輸出和下列內容類似:
verisignc1g1 T,c,c verisignc1g2 T,c,c verisignc1g3 T,c,c verisignc2g3 T,c,c verisignsecureserver T,c,c verisignc2g1 T,c,c verisignc2g2 T,c,c verisignc3g1 T,c,c verisignc3g2 T,c,c verisignc3g3 T,c,c s1as u,u,u |
在以上的輸出中,記號名稱顯示在左欄,三個一組的可信任屬性顯示在右欄。以 Application Server 憑證而言,通常是 T,c,c。不同於 J2SE java.security.KeyStore API 僅包含一個信任層級,NSS 技術包含數個信任層級。Application Server 主要注重於第一種信任屬性,該屬性說明此記號使用 SSL 的方式。對於此屬性:
T 代表憑證授權單位 (CA) 是可信任的用戶端憑證核發者。 |
u 代表您可以使用憑證 (和金鑰) 來進行認證或簽署。 |
屬性組合 u,u,u 代表資料庫中有私密金鑰。 |
若要列出硬體記號 mytoken 的內容,請執行下列指令:
certutil -L -d AS_NSS_DB -h mytoken
會提示您輸入硬體記號的密碼。標準輸出和下列內容類似:
Enter Password or Pin for "mytoken": mytoken:Server-Cert 	u,u,u |
使用 certutil 來建立自我簽署的憑證,並匯入或匯出憑證。若要匯入或匯出私密金鑰,請使用 pk12util 公用程式。如需更多詳細資訊,請參閱使用 Network Security Services (NSS) 工具。
在 Application Server 中,請勿直接使用 NSS 工具 certutil 和 modutil 來修改 NSS 密碼。否則 Application Server 中的安全性資料可能會毀壞。