|
JavaTM 2 Platform Standard Ed. 6 |
|||||||||
| 上一個類別 下一個類別 | 框架 無框架 | |||||||||
| 摘要: 巢狀 | 欄位 | 建構子 | 方法 | 詳細資訊: 欄位 | 建構子 | 方法 | |||||||||
java.lang.Objectjava.security.KeyStoreSpi
public abstract class KeyStoreSpi
此類別為 KeyStore 類別定義服務提供者介面 (SPI)。希望提供特定 keystore 型別的 keystore 實作的每個加密服務提供者必須實作此類別中所有的抽象方法。
KeyStore| 建構子摘要 | |
|---|---|
KeyStoreSpi()
|
|
| 方法摘要 | |
|---|---|
abstract Enumeration<String> |
engineAliases()
列出此 keystore 的所有別名。 |
abstract boolean |
engineContainsAlias(String alias)
檢查給定別名是否存在於此 keystore 中。 |
abstract void |
engineDeleteEntry(String alias)
刪除由此 keystore 中給定的別名標識的項。 |
boolean |
engineEntryInstanceOf(String alias,
Class<? extends KeyStore.Entry> entryClass)
確定指定 alias 的 keystore Entry 是否是指定 entryClass 的實例或子類別。 |
abstract Certificate |
engineGetCertificate(String alias)
返回與給定別名關聯的證書。 |
abstract String |
engineGetCertificateAlias(Certificate cert)
返回其證書和給定證書比對的第一個 keystore 項的名稱(別名)。 |
abstract Certificate[] |
engineGetCertificateChain(String alias)
返回與給定別名關聯的證書鏈。 |
abstract Date |
engineGetCreationDate(String alias)
返回該別名標識的項的創建日期。 |
KeyStore.Entry |
engineGetEntry(String alias,
KeyStore.ProtectionParameter protParam)
使用指定保護參數獲取指定別名的 KeyStore.Entry。 |
abstract Key |
engineGetKey(String alias,
char[] password)
返回與給定別名關聯的密鑰,使用給定密碼恢復它。 |
abstract boolean |
engineIsCertificateEntry(String alias)
如果給定別名標識的項是通過調用 setCertificateEntry 或者調用使用 TrustedCertificateEntry 作為參數的 setEntry 來創建的,則返回 true。 |
abstract boolean |
engineIsKeyEntry(String alias)
如果給定別名標識的項是通過調用 setKeyEntry 或者調用使用 PrivateKeyEntry 或 SecretKeyEntry 作為參數的 setEntry 創建的,則返回 true。 |
abstract void |
engineLoad(InputStream stream,
char[] password)
從給定的輸入串流中載入此 KeyStore。 |
void |
engineLoad(KeyStore.LoadStoreParameter param)
使用給定的 KeyStore.LoadStoreParameter 載入該 keystore。 |
abstract void |
engineSetCertificateEntry(String alias,
Certificate cert)
將給定證書分派給給定別名。 |
void |
engineSetEntry(String alias,
KeyStore.Entry entry,
KeyStore.ProtectionParameter protParam)
用指定別名保存 KeyStore.Entry。 |
abstract void |
engineSetKeyEntry(String alias,
byte[] key,
Certificate[] chain)
將給定密鑰(已經被保護)分派給給定別名。 |
abstract void |
engineSetKeyEntry(String alias,
Key key,
char[] password,
Certificate[] chain)
將給定的密鑰分派給給定的別名,用給定的密碼保護它。 |
abstract int |
engineSize()
獲取此 keystore 中項的數目。 |
void |
engineStore(KeyStore.LoadStoreParameter param)
使用給定的 KeyStore.LoadStoreParmeter 存儲此 keystore。 |
abstract void |
engineStore(OutputStream stream,
char[] password)
將此 keystore 存儲到給定輸出串流中,並用給定的密碼保護其完整性。 |
| 從類別 java.lang.Object 繼承的方法 |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| 建構子詳細資訊 |
|---|
public KeyStoreSpi()
| 方法詳細資訊 |
|---|
public abstract Key engineGetKey(String alias,
char[] password)
throws NoSuchAlgorithmException,
UnrecoverableKeyException
setKeyEntry 或者調用使用 PrivateKeyEntry 或 SecretKeyEntry 作為參數的 setEntry 將密鑰與別名關聯。
alias - 別名password - 恢復密鑰所用的密碼
NoSuchAlgorithmException - 如果不能找到恢復密鑰的演算法
UnrecoverableKeyException - 如果不能恢復密鑰(例如,給定的密碼錯誤)。public abstract Certificate[] engineGetCertificateChain(String alias)
setKeyEntry,或者調用使用 PrivateKeyEntry 做參數的 setEntry 將密鑰與別名關聯。
alias - 別名
public abstract Certificate engineGetCertificate(String alias)
如果給定的別名標識通過調用 setCertificateEntry 創建的項,或標識通過調用使用 TrustedCertificateEntry 參數的 setEntry 創建的項,那麼返回包含在該項中的可信證書。
如果給定的別名標識通過調用 setKeyEntry 創建的項,或標識通過調用使用 PrivateKeyEntry 作為參數的 setEntry 創建的項,那麼返回該項中證書鏈(如果存在證書鏈)的第一個元素。
alias - 別名
public abstract Date engineGetCreationDate(String alias)
alias - 別名
public abstract void engineSetKeyEntry(String alias,
Key key,
char[] password,
Certificate[] chain)
throws KeyStoreException
如果給定密鑰的型別為 java.security.PrivateKey 型別,則它必須附帶證明相應公鑰的證書鏈。
如果給定的別名已經存在,則與別名關聯的 keystore 資訊被給定的密鑰(可能和證書鏈)覆寫。
alias - 別名key - 要與別名關聯的密鑰password - 保護密鑰的密碼chain - 相應公鑰的證書鏈(只在給定密鑰的型別為 java.security.PrivateKey 時需要)。
KeyStoreException - 如果不能保護給定密鑰,或此操作由於某些其他原因而失敗
public abstract void engineSetKeyEntry(String alias,
byte[] key,
Certificate[] chain)
throws KeyStoreException
如果被保護密鑰的型別為 java.security.PrivateKey,則它必須附帶證明相應公鑰的證書鏈。
如果給定的別名已經存在,則與別名關聯的 keystore 資訊被給定的密鑰(可能和證書鏈)覆寫。
alias - 別名key - 要與別名關聯的密鑰(以受保護格式)chain - 相應公鑰的證書鏈(只在受保護密鑰的型別為 java.security.PrivateKey 時有用)。
KeyStoreException - 如果此操作失敗。
public abstract void engineSetCertificateEntry(String alias,
Certificate cert)
throws KeyStoreException
如果給定的別名標識通過調用 setCertificateEntry 創建的現有項,或者標識通過調用使用 TrustedCertificateEntry 作為參數的 setEntry 創建的現有項,那麼現有項中的可信證書被給定證書覆寫。
alias - 別名cert - 證書
KeyStoreException - 如果給定別名已存在且不標識一個套件含可信任證書的項,或此操作由於其他某些原因而失敗。
public abstract void engineDeleteEntry(String alias)
throws KeyStoreException
alias - 別名
KeyStoreException - 如果該項不能被移除public abstract Enumeration<String> engineAliases()
public abstract boolean engineContainsAlias(String alias)
alias - 別名
public abstract int engineSize()
public abstract boolean engineIsKeyEntry(String alias)
setKeyEntry 或者調用使用 PrivateKeyEntry 或 SecretKeyEntry 作為參數的 setEntry 創建的,則返回 true。
alias - 要檢查的 keystore 項的別名
public abstract boolean engineIsCertificateEntry(String alias)
setCertificateEntry 或者調用使用 TrustedCertificateEntry 作為參數的 setEntry 來創建的,則返回 true。
alias - 要檢查的 keystore 項的別名
public abstract String engineGetCertificateAlias(Certificate cert)
此方法試圖將給定證書與每一個 keystore 項相比對。如果將被考慮的項是通過調用 setCertificateEntry 或者調用使用 TrustedCertificateEntry 作為參數的 setEntry 創建的,則將給定證書與該項的證書進行比較。
如果將被考慮的項是通過調用 setKeyEntry 或者調用使用 PrivateKeyEntry 作為參數的 setEntry 創建的,則將給定證書與該項證書鏈的第一個元素進行比較。
cert - 要比對的證書
public abstract void engineStore(OutputStream stream,
char[] password)
throws IOException,
NoSuchAlgorithmException,
CertificateException
stream - 要寫入此 keystore 的輸出串流。password - 產生 keystore 完整性檢驗的密碼
IOException - 如果存在資料的 I/O 問題
NoSuchAlgorithmException - 如果不能找到恰當的資料完整性演算法
CertificateException - 如果包含在 keystore 資料中的任何證書不能被存儲
public void engineStore(KeyStore.LoadStoreParameter param)
throws IOException,
NoSuchAlgorithmException,
CertificateException
KeyStore.LoadStoreParmeter 存儲此 keystore。
param - 指出存儲 keystore 的方式的 KeyStore.LoadStoreParmeter,可以為 null
IllegalArgumentException - 如果給定的 KeyStore.LoadStoreParmeter 輸入無法識別
IOException - 如果存在資料 I/O 問題
NoSuchAlgorithmException - 如果不能找到恰當的資料完整性演算法
CertificateException - 如果 keystore 資料中的任何證書不能被存儲
public abstract void engineLoad(InputStream stream,
char[] password)
throws IOException,
NoSuchAlgorithmException,
CertificateException
可能給出密碼來解鎖 keystore(例如駐留在硬體標記設備上的 keystore)或檢驗 keystore 資料的完整性。如果沒有給出用於完整性檢驗的密碼,那麼就不會執行完整性檢驗。
stream - 從其載入 keystore 的輸入串流,或 nullpassword - 用來檢驗 keystore 完整性的密碼,用來解鎖 keystore 的密碼,或 null
IOException - 如果存在 keystore 資料的 I/O 或格式問題,如果需要密碼卻沒有給出,或者給出的密碼錯誤。如果錯誤是由於密碼錯誤,則 IOException 的 cause 應該是一個 UnrecoverableKeyException
NoSuchAlgorithmException - 如果不能找到用來檢驗 keystore 完整性的演算法
CertificateException - 如果不能載入 keystore 中的任何證書
public void engineLoad(KeyStore.LoadStoreParameter param)
throws IOException,
NoSuchAlgorithmException,
CertificateException
KeyStore.LoadStoreParameter 載入該 keystore。
注意,如果此 KeyStore 已經被載入,則它將再次從給定參數中被初始化和載入。
param - 指出載入 keystore 的方式的 KeyStore.LoadStoreParameter,可以為 null
IllegalArgumentException - 如果給定的 KeyStore.LoadStoreParameter 輸入無法識別
IOException - 如果存在 keystore 資料的 I/O 或格式問題。如果錯誤是由於 ProtectionParameter 不正確(如密碼錯誤),則 IOException 的 cause 應該是一個 UnrecoverableKeyException
NoSuchAlgorithmException - 如果不能找到用來檢驗 keystore 完整性的演算法
CertificateException - 如果不能載入 keystore 中的任何證書
public KeyStore.Entry engineGetEntry(String alias,
KeyStore.ProtectionParameter protParam)
throws KeyStoreException,
NoSuchAlgorithmException,
UnrecoverableEntryException
KeyStore.Entry。
alias - 獲取此別名的 KeyStore.EntryprotParam - 用來保護 Entry 的 ProtectionParameter,可以為 null
KeyStore.Entry;如果不存在這樣的項,則返回 null
KeyStoreException - 如果操作失敗
NoSuchAlgorithmException - 如果不能找到恢復項的演算法
UnrecoverableEntryException - 如果指定的 protParam 不足或無效
UnrecoverableKeyException - 如果該項是 PrivateKeyEntry 或 SecretKeyEntry 並且指定的 protParam 不包含恢復密鑰所需的資訊(如密碼錯誤)
public void engineSetEntry(String alias,
KeyStore.Entry entry,
KeyStore.ProtectionParameter protParam)
throws KeyStoreException
KeyStore.Entry。指定的保護參數用來保護 Entry。
如果指定別名的項已經存在,它將被覆寫。
alias - 以此別名保存 KeyStore.Entryentry - 要保存的 EntryprotParam - 用來保護 Entry 的 ProtectionParameter,可以為 null
KeyStoreException - 如果此操作失敗
public boolean engineEntryInstanceOf(String alias,
Class<? extends KeyStore.Entry> entryClass)
alias 的 keystore Entry 是否是指定 entryClass 的實例或子類別。
alias - 別名entryClass - 項的類別
alias 的 keystore Entry 是指定 entryClass 的實例或子類別,則返回 true;否則返回 false。
|
JavaTM 2 Platform Standard Ed. 6 |
|||||||||
| 上一個類別 下一個類別 | 框架 無框架 | |||||||||
| 摘要: 巢狀 | 欄位 | 建構子 | 方法 | 詳細資訊: 欄位 | 建構子 | 方法 | |||||||||
版權所有 2008 Sun Microsystems, Inc. 保留所有權利。請遵守GNU General Public License, version 2 only。