- java.lang.Object
- 
- java.security.KeyStoreSpi
 
- 
- 
コンストラクタのサマリーコンストラクタ コンストラクタ 説明 KeyStoreSpi()
 - 
メソッドのサマリーすべてのメソッド インスタンス・メソッド 抽象メソッド 具象メソッド 修飾子と型 メソッド 説明 abstract Enumeration<String>engineAliases()このキーストアのすべての別名を一覧表示します。abstract booleanengineContainsAlias(String alias)このキーストアに、指定された別名が存在するかどうかを判定します。abstract voidengineDeleteEntry(String alias)このキーストアから、指定された別名によって識別されるエントリを削除します。booleanengineEntryInstanceOf(String alias, Class<? extends KeyStore.Entry> entryClass)指定されたaliasのキーストアEntryが、指定されたentryClassのインスタンスまたはサブクラスであるかどうかを判定します。abstract CertificateengineGetCertificate(String alias)指定された別名に関連した証明書を返します。abstract StringengineGetCertificateAlias(Certificate cert)指定された証明書と一致する証明書がある最初のキーストア・エントリの別名を返します。abstract Certificate[]engineGetCertificateChain(String alias)指定された別名に関連付けられた証明書チェーンを返します。abstract DateengineGetCreationDate(String alias)指定された別名によって識別されるエントリの作成日を返します。KeyStore.EntryengineGetEntry(String alias, KeyStore.ProtectionParameter protParam)指定された保護パラメータを使用して、指定された別名に対するKeyStore.Entryを取得します。abstract KeyengineGetKey(String alias, char[] password)指定されたパスワードを使って、指定された別名に関連したキーを復元し、そのキーを返します。abstract booleanengineIsCertificateEntry(String alias)指定された別名で識別されるエントリが、setCertificateEntryを呼び出して作成されたエントリ、あるいはTrustedCertificateEntryを指定してsetEntryを呼び出して作成されたエントリのいずれかである場合、trueを返します。abstract booleanengineIsKeyEntry(String alias)指定された別名で識別されるエントリが、setKeyEntryを呼び出して作成されたエントリ、あるいはPrivateKeyEntryまたはSecretKeyEntryを指定してsetEntryを呼び出して作成されたエントリのいずれかである場合、trueを返します。abstract voidengineLoad(InputStream stream, char[] password)指定された入力ストリームからキーストアをロードします。voidengineLoad(KeyStore.LoadStoreParameter param)指定されたKeyStore.LoadStoreParameterを使用してキーストアをロードします。booleanengineProbe(InputStream stream)指定された入力ストリームを調査し、この実装でサポートされているキーストアが含まれているかどうかを判定します。abstract voidengineSetCertificateEntry(String alias, Certificate cert)指定された別名に、指定された証明書を割り当てます。voidengineSetEntry(String alias, KeyStore.Entry entry, KeyStore.ProtectionParameter protParam)KeyStore.Entryを指定された別名で保存します。abstract voidengineSetKeyEntry(String alias, byte[] key, Certificate[] chain)指定された別名に、すでに保護されている指定のキーを割り当てます。abstract voidengineSetKeyEntry(String alias, Key key, char[] password, Certificate[] chain)指定された別名に指定されたキーを割り当て、指定されたパスワードでそのキーを保護します。abstract intengineSize()このキーストアのエントリ数を取得します。abstract voidengineStore(OutputStream stream, char[] password)指定された出力ストリームにこのキーストアを格納し、指定されたパスワードでその整合性を保護します。voidengineStore(KeyStore.LoadStoreParameter param)指定されたKeyStore.LoadStoreParmeterを使用してこのキーストアを格納します。
 
- 
- 
- 
メソッドの詳細- 
engineGetKeypublic abstract Key engineGetKey(String alias, char[] password) throws NoSuchAlgorithmException, UnrecoverableKeyException 指定されたパスワードを使って、指定された別名に関連したキーを復元し、そのキーを返します。 このキーは、setKeyEntryを呼び出すか、あるいはPrivateKeyEntryまたはSecretKeyEntryを指定してsetEntryを呼び出すことでその別名に関連付けられている必要があります。- パラメータ:
- alias- 別名
- password- キーを復元するためのパスワード
- 戻り値:
- 要求されるキー。指定された別名が存在しないか、キー関連エントリを識別しない場合はnull。
- 例外:
- NoSuchAlgorithmException- キーを復元するためのアルゴリズムが見つからない場合。
- UnrecoverableKeyException- 指定されたパスワードが間違っている場合など、キーを復元できない場合。
 
 - 
engineGetCertificateChainpublic abstract Certificate[] engineGetCertificateChain(String alias) 指定された別名に関連付けられた証明書チェーンを返します。 この証明書チェーンは、setKeyEntryを呼び出すか、あるいはPrivateKeyEntryを指定してsetEntryを呼び出すことで別名に関連付けられている必要があります。- パラメータ:
- alias- 別名
- 戻り値:
- 証明書チェーン。順番は、ユーザー証明書が最初でルート証明書発行局が最後。指定された別名が存在しないか、証明書チェーンを含んでいない場合はnull
 
 - 
engineGetCertificatepublic abstract Certificate engineGetCertificate(String alias) 指定された別名に関連した証明書を返します。指定された別名によって識別されるエントリが、 setCertificateEntryを呼び出して作成されたエントリ、あるいはTrustedCertificateEntryを指定してsetEntryを呼び出して作成されたエントリのいずれかである場合、そのエントリ内に格納されている信頼できる証明書が返されます。指定された別名によって識別されるエントリが、 setKeyEntryを呼び出して作成されたエントリ、PrivateKeyEntryを指定してsetEntryを呼び出して作成されたエントリのいずれかである場合、そのエントリ内の証明書チェーン(存在する場合)の最初の要素が返されます。- パラメータ:
- alias- 別名
- 戻り値:
- 証明書。指定された別名が存在しないか、または証明書を含まない場合はnull。
 
 - 
engineGetCreationDatepublic abstract Date engineGetCreationDate(String alias) 指定された別名によって識別されるエントリの作成日を返します。- パラメータ:
- alias- 別名
- 戻り値:
- このエントリの作成日。指定された別名が存在しない場合はnull
 
 - 
engineSetKeyEntrypublic abstract void engineSetKeyEntry(String alias, Key key, char[] password, Certificate[] chain) throws KeyStoreException 指定された別名に指定されたキーを割り当て、指定されたパスワードでそのキーを保護します。指定されたキーが java.security.PrivateKeyタイプである場合、そのキーには対応する公開キーを証明する証明書チェーンが含まれていなければいけません。指定された別名がすでに存在する場合は、それに関連したキーストア情報は、指定されたキーと証明書チェーンによってオーバーライドされます。 - パラメータ:
- alias- 別名
- key- 別名に関連したキー
- password- キーを保護するためのパスワード
- chain- 対応する公開キーの証明書チェーン。指定されたキーが- java.security.PrivateKeyタイプである場合にだけ必要。
- 例外:
- KeyStoreException- 指定されたキーを保護できない場合、またはこの処理がなんらかの原因で失敗した場合
 
 - 
engineSetKeyEntrypublic abstract void engineSetKeyEntry(String alias, byte[] key, Certificate[] chain) throws KeyStoreException 指定された別名に、すでに保護されている指定のキーを割り当てます。保護されたキーが java.security.PrivateKeyタイプである場合、そのキーには対応する公開キーを証明する証明書チェーンが含まれていなければいけません。指定された別名がすでに存在する場合は、それに関連したキーストア情報は、指定されたキーと証明書チェーンによってオーバーライドされます。 - パラメータ:
- alias- 別名
- key- 別名に関連した保護形式のキー
- chain- 保護されたキーが- java.security.PrivateKeyタイプである場合にだけ有効な、対応する公開キーの証明書チェーン。
- 例外:
- KeyStoreException- この操作が失敗した場合。
 
 - 
engineSetCertificateEntrypublic abstract void engineSetCertificateEntry(String alias, Certificate cert) throws KeyStoreException 指定された別名に、指定された証明書を割り当てます。指定された別名によって識別されるエントリが、 setCertificateEntryを呼び出して作成された既存エントリ、あるいはTrustedCertificateEntryを指定してsetEntryを呼び出して作成された既存エントリのいずれかである場合、その既存エントリ内に格納されている信頼できる証明書が、指定された証明書でオーバーライドされます。- パラメータ:
- alias- 別名
- cert- 証明書
- 例外:
- KeyStoreException- 指定された別名がすでに存在しており、そのエントリに信頼できる証明書が含まれていない場合、またはこの処理がなんらかの原因で失敗した場合。
 
 - 
engineDeleteEntrypublic abstract void engineDeleteEntry(String alias) throws KeyStoreException このキーストアから、指定された別名によって識別されるエントリを削除します。- パラメータ:
- alias- 別名
- 例外:
- KeyStoreException- エントリを削除できない場合。
 
 - 
engineAliasespublic abstract Enumeration<String> engineAliases() このキーストアのすべての別名を一覧表示します。- 戻り値:
- 別名の列挙
 
 - 
engineContainsAliaspublic abstract boolean engineContainsAlias(String alias) このキーストアに、指定された別名が存在するかどうかを判定します。- パラメータ:
- alias- 別名
- 戻り値:
- 別名が存在する場合はtrue、そうでない場合はfalse
 
 - 
engineSizepublic abstract int engineSize() このキーストアのエントリ数を取得します。- 戻り値:
- このキーストアのエントリ数
 
 - 
engineIsKeyEntrypublic abstract boolean engineIsKeyEntry(String alias) 指定された別名で識別されるエントリが、setKeyEntryを呼び出して作成されたエントリ、あるいはPrivateKeyEntryまたはSecretKeyEntryを指定してsetEntryを呼び出して作成されたエントリのいずれかである場合、trueを返します。- パラメータ:
- alias- 判定対象となるキーストア・エントリの別名
- 戻り値:
- 指定された別名で識別されるエントリがキー関連である場合はtrue、そうでない場合はfalse。
 
 - 
engineIsCertificateEntrypublic abstract boolean engineIsCertificateEntry(String alias) 指定された別名で識別されるエントリが、setCertificateEntryを呼び出して作成されたエントリ、あるいはTrustedCertificateEntryを指定してsetEntryを呼び出して作成されたエントリのいずれかである場合、trueを返します。- パラメータ:
- alias- 判定対象となるキーストア・エントリの別名
- 戻り値:
- 指定された別名で識別されるエントリに信頼できる証明書エントリが含まれている場合はtrue、そうでない場合はfalse。
 
 - 
engineGetCertificateAliaspublic abstract String engineGetCertificateAlias(Certificate cert) 指定された証明書と一致する証明書がある最初のキーストア・エントリの別名を返します。このメソッドは、指定された証明書を各キーストア・エントリと照合します。 処理対象のエントリが、 setCertificateEntryを呼び出して作成されたエントリ、あるいはTrustedCertificateEntryを指定してsetEntryを呼び出して作成されたエントリである場合、指定された証明書はそのエントリの証明書と比較されます。処理対象のエントリが、 setKeyEntryを呼び出して作成されたエントリ、あるいはPrivateKeyEntryを指定してsetEntryを呼び出して作成されたエントリである場合、指定された証明書はそのエントリの証明書チェーンの最初の要素と比較されます。- パラメータ:
- cert- 照合する証明書。
- 戻り値:
- 一致する証明書を含む最初のエントリの別名。そのようなエントリがこのキーストアに存在しない場合はnull。
 
 - 
engineStorepublic abstract void engineStore(OutputStream stream, char[] password) throws IOException, NoSuchAlgorithmException, CertificateException 指定された出力ストリームにこのキーストアを格納し、指定されたパスワードでその整合性を保護します。- パラメータ:
- stream- このキーストアを書き込む出力ストリーム。
- password- キーストアの整合性を検査するためのパスワード
- 例外:
- IOException- データに入出力の問題があった場合
- NoSuchAlgorithmException- 適切なデータ整合性アルゴリズムが見つからなかった場合
- CertificateException- キーストア・データに含まれるどの証明書も格納できなかった場合
 
 - 
engineStorepublic void engineStore(KeyStore.LoadStoreParameter param) throws IOException, NoSuchAlgorithmException, CertificateException 指定されたKeyStore.LoadStoreParmeterを使用してこのキーストアを格納します。- パラメータ:
- param- キーストアの格納方法を指定した- KeyStore.LoadStoreParmeter。- nullも指定可能
- 例外:
- IllegalArgumentException- 指定された- KeyStore.LoadStoreParmeter入力が認識されない場合
- IOException- データに入出力の問題があった場合
- NoSuchAlgorithmException- 適切なデータ整合性アルゴリズムが見つからなかった場合
- CertificateException- キーストア・データに含まれるどの証明書も格納できなかった場合
- 導入されたバージョン:
- 1.5
 
 - 
engineLoadpublic abstract void engineLoad(InputStream stream, char[] password) throws IOException, NoSuchAlgorithmException, CertificateException 指定された入力ストリームからキーストアをロードします。パスワードを指定すると、キーストアがハードウェア・トークン・デバイス上に存在する場合などに、キーストアのロック解除やキーストア・データの整合性検査ができます。 整合性検査用のパスワードが指定されなかった場合、整合性検査は実行されません。 - パラメータ:
- stream- キーストアのロード元の入力ストリームまたは- null
- password- キーストアの整合性検査用パスワード、キーストアのロック解除用パスワード、または- null
- 例外:
- IOException- キーストア・データで入出力または形式に関する問題が発生した場合、パスワードが必要であるのに指定されなかった場合、または指定されたパスワードが間違っている場合。 パスワードが正しくなかったためにエラーが発生した場合、- IOExceptionの- causeは- UnrecoverableKeyException
- NoSuchAlgorithmException- キーストアの整合性を検査するアルゴリズムが見つからなかった場合
- CertificateException- キーストアのどの証明書もロードできなかった場合
 
 - 
engineLoadpublic void engineLoad(KeyStore.LoadStoreParameter param) throws IOException, NoSuchAlgorithmException, CertificateException 指定されたKeyStore.LoadStoreParameterを使用してキーストアをロードします。このキーストアがすでにロードされている場合、このキーストアは再び初期化され、指定されたストリームからロードし直されます。 - 実装要件:
- デフォルトの実装では、KeyStore.LoadStoreParameterを調べてパスワードを抽出し、nullInputStreamとともにengineLoad(InputStream, char[])に渡します。KeyStore.LoadStoreParameterがnullの場合、パスワード・パラメータもnullになります。 それ以外の場合、KeyStore.LoadStoreParameterのKeyStore.ProtectionParameterは、KeyStore.PasswordProtectionまたはPasswordCallbackをサポートするKeyStore.CallbackHandlerProtectionのいずれかでなければなりません。これにより、パスワード・パラメータを抽出できます。KeyStore.ProtectionParameterがこれらのクラスのいずれでもない場合は、NoSuchAlgorithmExceptionがスローされます。
- パラメータ:
- param- キーストアのロード方法を指定した- KeyStore.LoadStoreParameter。- nullも指定可能
- 例外:
- IllegalArgumentException- 指定された- KeyStore.LoadStoreParameter入力が認識されない場合
- IOException- キーストア・データに入出力または形式の問題があった場合。- ProtectionParameterが正しくなかった(たとえばパスワードが正しくなかった)ためにエラーが発生した場合、- IOExceptionの- causeは- UnrecoverableKeyException
- NoSuchAlgorithmException- キーストアの整合性を検査するアルゴリズムが見つからなかった場合
- CertificateException- キーストアのどの証明書もロードできなかった場合
- 導入されたバージョン:
- 1.5
 
 - 
engineGetEntrypublic KeyStore.Entry engineGetEntry(String alias, KeyStore.ProtectionParameter protParam) throws KeyStoreException, NoSuchAlgorithmException, UnrecoverableEntryException 指定された保護パラメータを使用して、指定された別名に対するKeyStore.Entryを取得します。- パラメータ:
- alias- この別名に対する- KeyStore.Entryを取得する
- protParam-- Entryの保護に使用される- ProtectionParameter。- nullも指定可能
- 戻り値:
- 指定された別名に対するKeyStore.Entry。そのようなエントリが存在しない場合はnull
- 例外:
- KeyStoreException- 処理が失敗した場合
- NoSuchAlgorithmException- エントリを復元するためのアルゴリズムが見つからない場合
- UnrecoverableEntryException- 指定された- protParamが不十分または無効である場合
- UnrecoverableKeyException- エントリが- PrivateKeyEntryまたは- SecretKeyEntryで、指定された- protParamにキーの復元に必要な情報が含まれていない場合(たとえばパスワードが誤っている場合)
- 導入されたバージョン:
- 1.5
 
 - 
engineSetEntrypublic void engineSetEntry(String alias, KeyStore.Entry entry, KeyStore.ProtectionParameter protParam) throws KeyStoreException KeyStore.Entryを指定された別名で保存します。 指定された保護パラメータは、Entryを保護するために使用されます。指定された別名のエントリがすでに存在する場合、そのエントリはオーバーライドされます。 - パラメータ:
- alias- この別名で- KeyStore.Entryを保存
- entry- 保存する- Entry
- protParam-- Entryの保護に使用される- ProtectionParameter。- nullも指定可能
- 例外:
- KeyStoreException- この操作が失敗した場合
- 導入されたバージョン:
- 1.5
 
 - 
engineEntryInstanceOfpublic boolean engineEntryInstanceOf(String alias, Class<? extends KeyStore.Entry> entryClass) 指定されたaliasのキーストアEntryが、指定されたentryClassのインスタンスまたはサブクラスであるかどうかを判定します。- パラメータ:
- alias- 別名
- entryClass- エントリ・クラス
- 戻り値:
- 指定されたaliasのキーストアEntryが、指定されたentryClassのインスタンスまたはサブクラスである場合はtrue、そうでない場合はfalse
- 導入されたバージョン:
- 1.5
 
 - 
engineProbepublic boolean engineProbe(InputStream stream) throws IOException 指定された入力ストリームを調査し、この実装でサポートされているキーストアが含まれているかどうかを判定します。- 実装要件:
- このメソッドは、デフォルトでfalseを返します。 キーストアの実装では、このメソッドをオーバーライドしてデータ・ストリームを直接参照するか、他のコンテンツ検出メカニズムを使用する必要があります。
- パラメータ:
- stream- プローブされるキーストア・データ
- 戻り値:
- キーストア・データがサポートされている場合はtrue、そうでない場合はfalse
- 例外:
- IOException- keystoreデータにI/Oの問題がある場合。
- NullPointerException- ストリームが- nullの場合。
- 導入されたバージョン:
- 9
 
 
- 
 
-