モジュール java.base
パッケージ javax.crypto

クラスExemptionMechanismSpi


  • public abstract class ExemptionMechanismSpi
    extends Object
    このクラスは、ExemptionMechanismクラスのサービス・プロバイダ・インタフェース (SPI)を定義します。 特定の除外メカニズムの実装を提供する各暗号化サービス・プロバイダは、このクラスのすべての抽象メソッドを実装する必要があります。
    導入されたバージョン:
    1.4
    • コンストラクタの詳細

      • ExemptionMechanismSpi

        public ExemptionMechanismSpi()
    • メソッドの詳細

      • engineGetOutputSize

        protected abstract int engineGetOutputSize​(int inputLen)
        入力の長さinputLen (バイト単位)を指定して、次のengineGenExemptionBlob操作の結果を保持するために必要な出力バッファの長さをバイト数で返します。

        次のengineGenExemptionBlob呼出しの実際の出力長は、このメソッドが返す長さより小さいことがあります。

        パラメータ:
        inputLen - 入力長(バイト単位)
        戻り値:
        必要な出力バッファ・サイズ(バイト単位)
      • engineInit

        protected abstract void engineInit​(Key key)
                                    throws InvalidKeyException,
                                           ExemptionMechanismException
        鍵を使用してこの除外メカニズムを初期化します。

        この除外メカニズムが、指定されたkeyから派生できないアルゴリズム・パラメータを必要とする場合、基本となる除外メカニズムの実装は、プロバイダ固有のデフォルト値を使用して必要なパラメータ自体を生成します。アルゴリズム・パラメータを呼出し側で指定する必要がある場合は、InvalidKeyExceptionが発生します。

        パラメータ:
        key - この除外メカニズムの鍵
        例外:
        InvalidKeyException - 指定された鍵がこの除外メカニズムに不適切な場合。
        ExemptionMechanismException - 初期化の処理で問題が見つかった場合。
      • engineInit

        protected abstract void engineInit​(Key key,
                                           AlgorithmParameterSpec params)
                                    throws InvalidKeyException,
                                           InvalidAlgorithmParameterException,
                                           ExemptionMechanismException
        鍵とアルゴリズム・パラメータのセットを使用してこの除外メカニズムを初期化します。

        この除外メカニズムがアルゴリズム・パラメータを必要とし、paramsがnullである場合、基本となる除外メカニズムの実装は、プロバイダ固有のデフォルト値を使用して必要なパラメータ自体を生成します。アルゴリズム・パラメータを呼出し側で指定する必要がある場合は、InvalidAlgorithmParameterExceptionが発生します。

        パラメータ:
        key - この除外メカニズムの鍵
        params - アルゴリズム・パラメータ
        例外:
        InvalidKeyException - 指定された鍵がこの除外メカニズムに不適切な場合。
        InvalidAlgorithmParameterException - 指定されたアルゴリズム・パラメータがこの除外メカニズムに不適切な場合。
        ExemptionMechanismException - 初期化の処理で問題が見つかった場合。
      • engineInit

        protected abstract void engineInit​(Key key,
                                           AlgorithmParameters params)
                                    throws InvalidKeyException,
                                           InvalidAlgorithmParameterException,
                                           ExemptionMechanismException
        鍵とアルゴリズム・パラメータのセットを使用してこの除外メカニズムを初期化します。

        この除外メカニズムがアルゴリズム・パラメータを必要とし、paramsがnullである場合、基本となる除外メカニズムの実装は、プロバイダ固有のデフォルト値を使用して必要なパラメータ自体を生成します。アルゴリズム・パラメータを呼出し側で指定する必要がある場合は、InvalidAlgorithmParameterExceptionが発生します。

        パラメータ:
        key - この除外メカニズムの鍵
        params - アルゴリズム・パラメータ
        例外:
        InvalidKeyException - 指定された鍵がこの除外メカニズムに不適切な場合。
        InvalidAlgorithmParameterException - 指定されたアルゴリズム・パラメータがこの除外メカニズムに不適切な場合。
        ExemptionMechanismException - 初期化の処理で問題が見つかった場合。
      • engineGenExemptionBlob

        protected abstract byte[] engineGenExemptionBlob()
                                                  throws ExemptionMechanismException
        除外メカニズムの鍵Blobを生成します。
        戻り値:
        結果の鍵Blobの入った新しいバッファ
        例外:
        ExemptionMechanismException - 生成の処理で問題が見つかった場合。
      • engineGenExemptionBlob

        protected abstract int engineGenExemptionBlob​(byte[] output,
                                                      int outputOffset)
                                               throws ShortBufferException,
                                                      ExemptionMechanismException
        除外メカニズムの鍵Blobを生成して、結果をoutputOffsetから始まるoutputバッファに格納します。

        outputバッファが小さすぎて結果を保持できない場合は、ShortBufferExceptionがスローされます。 この場合、より大きな出力バッファを使用してこの呼出しを繰り返します。 engineGetOutputSizeを使用して、必要な出力バッファのサイズを判定します。

        パラメータ:
        output - 結果を格納するバッファ
        outputOffset - 結果が格納されるoutput内のオフセット
        戻り値:
        outputに格納されたバイト数
        例外:
        ShortBufferException - 指定された出力バッファが小さすぎて結果を保持できない場合。
        ExemptionMechanismException - 生成の処理で問題が見つかった場合。