java.lang.Object
java.security.KeyFactorySpi
public abstract class KeyFactorySpi extends Object
このクラスは、
KeyFactory
クラスのサービス・プロバイダ・インタフェース (SPI)を定義します。 特定アルゴリズムのキー・ファクトリの実装を提供する各暗号サービス・プロバイダは、このクラスのすべての抽象メソッドを実装する必要があります。
キーファクトリは、Key
型の不透明な暗号キーであるキーと、基本のキーデータの透明な表現であるキー仕様との間の変換を行うために使用します。
キー・ファクトリは、双方向性があります。 つまり、指定したキー仕様(キー・データ)から不透明なキー・オブジェクトを構築することも、適切な形式でキー・オブジェクトの基本のキー・データを取り出すこともできます。
同一のキーに対して、複数の互換性のあるキー仕様が存在することがあります。 たとえばDSA公開キーは、DSAPublicKeySpec
またはX509EncodedKeySpec
を使って指定できます。 キー・ファクトリは、互換性のあるキー仕様間の変換に使用できます。
プロバイダは、そのキー・ファクトリがサポートするすべてのキー仕様をドキュメント化する必要があります。
- 導入されたバージョン:
- 1.2
- 関連項目:
KeyFactory
,Key
,PublicKey
,PrivateKey
,KeySpec
,DSAPublicKeySpec
,X509EncodedKeySpec
-
コンストラクタのサマリー
-
メソッドのサマリー
修飾子と型メソッド説明protected abstract PrivateKey
engineGeneratePrivate(KeySpec keySpec)
指定されたキー仕様(キー・データ)から非公開キー・オブジェクトを生成します。protected abstract PublicKey
engineGeneratePublic(KeySpec keySpec)
指定されたキー仕様(キー・データ)から公開キー・オブジェクトを生成します。protected abstract <T extends KeySpec>
TengineGetKeySpec(Key key, Class<T> keySpec)
指定されたキー・オブジェクトの仕様(キー・データ)を返します。protected abstract Key
engineTranslateKey(Key key)
プロバイダが未知であるか、信頼できない可能性があるキー・オブジェクトを、このキー・ファクトリの対応するキー・オブジェクトに変換します。
-
コンストラクタの詳細
-
KeyFactorySpi
public KeyFactorySpi()サブクラスが呼び出すためのコンストラクタ。
-
-
メソッドの詳細
-
engineGeneratePublic
protected abstract PublicKey engineGeneratePublic(KeySpec keySpec) throws InvalidKeySpecException指定されたキー仕様(キー・データ)から公開キー・オブジェクトを生成します。- パラメータ:
keySpec
- 公開キーの仕様(キー・データ)。- 戻り値:
- 公開キー。
- 例外:
InvalidKeySpecException
- 指定されたキー仕様がこのキー・ファクトリによる公開キーの生成に不適切な場合。
-
engineGeneratePrivate
protected abstract PrivateKey engineGeneratePrivate(KeySpec keySpec) throws InvalidKeySpecException指定されたキー仕様(キー・データ)から非公開キー・オブジェクトを生成します。- パラメータ:
keySpec
- 非公開キーの仕様(キー・データ)。- 戻り値:
- 非公開キー。
- 例外:
InvalidKeySpecException
- 指定されたキー仕様がこのキー・ファクトリによる非公開キーの生成に不適切な場合。
-
engineGetKeySpec
protected abstract <T extends KeySpec> T engineGetKeySpec(Key key, Class<T> keySpec) throws InvalidKeySpecException指定されたキー・オブジェクトの仕様(キー・データ)を返します。keySpec
は、キーのデータが返されるべき仕様クラスを識別します。 たとえば、DSAPublicKeySpec.class
は、キーのデータがDSAPublicKeySpec
クラスのインスタンスに返されるべきであることを指示します。- 型パラメータ:
T
- 返されるキー仕様の型- パラメータ:
key
- キーkeySpec
- キー・データが返される仕様クラス。- 戻り値:
- 要求される仕様クラスのインスタンスにおける基本のキー仕様(キー・データ)。
- 例外:
InvalidKeySpecException
- 要求されるキー仕様が指定されたキーに不適切な場合、または認識されない形式のキーを指定した場合など、指定されたキーを処理できない場合。
-
engineTranslateKey
protected abstract Key engineTranslateKey(Key key) throws InvalidKeyExceptionプロバイダが未知であるか、信頼できない可能性があるキー・オブジェクトを、このキー・ファクトリの対応するキー・オブジェクトに変換します。- パラメータ:
key
- プロバイダが未知であるか、信頼できないキー。- 戻り値:
- 変換したキー。
- 例外:
InvalidKeyException
- 指定されたキーをこのキー・ファクトリで処理できない場合。
-