モジュール java.base
パッケージ java.security

クラスKeyFactorySpi


  • public abstract class KeyFactorySpi
    extends Object
    このクラスは、KeyFactoryクラスのサービス・プロバイダ・インタフェース (SPI)を定義します。 特定アルゴリズムのキー・ファクトリの実装を提供する各暗号サービス・プロバイダは、このクラスのすべての抽象メソッドを実装する必要があります。

    キー・ファクトリは、Key型の不透明な暗号キーであるキーと、基本のキー・データの透明な表現であるキー仕様との間の変換を行うために使用します。

    キー・ファクトリは、双方向性があります。 つまり、指定したキー仕様(キー・データ)から不透明なキー・オブジェクトを構築することも、適切な形式でキー・オブジェクトの基本のキー・データを取り出すこともできます。

    同一のキーに対して、複数の互換性のあるキー仕様が存在することがあります。 たとえばDSA公開キーは、DSAPublicKeySpecまたはX509EncodedKeySpecを使って指定できます。 キー・ファクトリは、互換性のあるキー仕様間の変換に使用できます。

    プロバイダは、そのキー・ファクトリがサポートするすべてのキー仕様をドキュメント化する必要があります。

    導入されたバージョン:
    1.2
    関連項目:
    KeyFactory, Key, PublicKey, PrivateKey, KeySpec, DSAPublicKeySpec, X509EncodedKeySpec
    • コンストラクタの詳細

      • 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 - 指定されたキーをこのキー・ファクトリで処理できない場合。