- 直系の既知のサブクラス:
Signature
Signature
クラスのサービス・プロバイダ・インタフェース (SPI)を定義します。これは、デジタル署名アルゴリズムの機能を提供するために使用されます。 デジタル署名は、認証やデジタル・データの整合性を保証するために使用されます。
特定の署名アルゴリズムの実装を提供する各暗号サービス・プロバイダは、このクラスのすべての抽象メソッドを実装する必要があります。
- 導入されたバージョン:
- 1.2
- 関連項目:
Signature
-
フィールドのサマリー
-
コンストラクタのサマリー
-
メソッドのサマリー
修飾子と型メソッド説明clone()
実装が複製可能な場合は複製を返します。protected abstract Object
engineGetParameter(String param)
非推奨。protected AlgorithmParameters
このメソッドは、このシグネチャ・エンジンで使用されるパラメータを返すためにプロバイダによってオーバーライドされます。protected abstract void
engineInitSign(PrivateKey privateKey)
署名オブジェクトを、署名操作のために指定された非公開キーで初期化します。protected void
engineInitSign(PrivateKey privateKey, SecureRandom random)
署名オブジェクトを、署名操作のために指定された非公開キーと乱数発生の元で初期化します。protected abstract void
engineInitVerify(PublicKey publicKey)
この署名オブジェクトを、検証操作のために指定された公開キーで初期化します。protected abstract void
engineSetParameter(String param, Object value)
非推奨。protected void
engineSetParameter(AlgorithmParameterSpec params)
このメソッドはプロバイダによってオーバーライドされ、署名エンジンを指定したパラメータ・セットで初期化します。protected abstract byte[]
これまでに更新されたすべてのデータのうちの署名データを返します。protected int
engineSign(byte[] outbuf, int offset, int len)
署名操作を終了し、結果として得られる署名バイトを、指定されたバッファoutbuf
にoffset
から格納します。protected abstract void
engineUpdate(byte b)
署名または検証されるデータを、指定されたバイトで更新します。protected abstract void
engineUpdate(byte[] b, int off, int len)
署名または検証するデータを、指定されたバイトの配列を使って、指定されたオフセットから更新します。protected void
engineUpdate(ByteBuffer input)
署名または検証するデータを、指定されたByteBufferを使用して更新します。protected abstract boolean
engineVerify(byte[] sigBytes)
渡された署名を検証します。protected boolean
engineVerify(byte[] sigBytes, int offset, int length)
指定されたオフセットから開始して、指定されたバイト・データの配列の渡された署名を検証します。
-
フィールド詳細
-
appRandom
protected SecureRandom appRandomアプリケーション固有の乱数発生の元です。
-
-
コンストラクタの詳細
-
SignatureSpi
public SignatureSpi()サブクラスが呼び出すためのコンストラクタ。
-
-
メソッドの詳細
-
engineInitVerify
protected abstract void engineInitVerify(PublicKey publicKey) throws InvalidKeyExceptionこの署名オブジェクトを、検証操作のために指定された公開キーで初期化します。- パラメータ:
publicKey
- 署名が検証されるアイデンティティの公開キー。- 例外:
InvalidKeyException
- キーの符号化が不適切な場合、パラメータが欠落している場合など。
-
engineInitSign
protected abstract void engineInitSign(PrivateKey privateKey) throws InvalidKeyException署名オブジェクトを、署名操作のために指定された非公開キーで初期化します。- パラメータ:
privateKey
- 署名が生成されるアイデンティティの非公開キー。- 例外:
InvalidKeyException
- キーの符号化が不適切な場合、パラメータが欠落している場合など。
-
engineInitSign
protected void engineInitSign(PrivateKey privateKey, SecureRandom random) throws InvalidKeyException署名オブジェクトを、署名操作のために指定された非公開キーと乱数発生の元で初期化します。この具象メソッドは、事前に定義されたこの抽象クラスに追加されたものです。 下位互換性のために、抽象メソッドにはできません。
- パラメータ:
privateKey
- 署名が生成されるアイデンティティの非公開キー。random
- 乱数発生の元- 例外:
InvalidKeyException
- キーの符号化が不適切な場合、パラメータが欠落している場合など。
-
engineUpdate
protected abstract void engineUpdate(byte b) throws SignatureException署名または検証されるデータを、指定されたバイトで更新します。- パラメータ:
b
- 更新に使うバイト。- 例外:
SignatureException
- エンジンが適切に初期化されていない場合。
-
engineUpdate
protected abstract void engineUpdate(byte[] b, int off, int len) throws SignatureException署名または検証するデータを、指定されたバイトの配列を使って、指定されたオフセットから更新します。- パラメータ:
b
- バイトの配列off
- バイトの配列での開始オフセットlen
- 使用するバイト数(offsetから開始)- 例外:
SignatureException
- エンジンが適切に初期化されていない場合
-
engineUpdate
protected void engineUpdate(ByteBuffer input)署名または検証するデータを、指定されたByteBufferを使用して更新します。data.position()
から始まるdata.remaining()
バイトを処理します。 終了時に、バッファの位置はリミットに等しくなりますが、リミットは変更されません。- パラメータ:
input
- ByteBuffer- 導入されたバージョン:
- 1.5
-
engineSign
protected abstract byte[] engineSign() throws SignatureExceptionこれまでに更新されたすべてのデータのうちの署名データを返します。 署名の形式は基になる署名方式に依存します。- 戻り値:
- 署名操作の結果の署名バイト。
- 例外:
SignatureException
- エンジンが正しく初期化されていない場合、またはこの署名アルゴリズムが指定された入力データを処理できない場合。
-
engineSign
protected int engineSign(byte[] outbuf, int offset, int len) throws SignatureException署名操作を終了し、結果として得られる署名バイトを、指定されたバッファoutbuf
にoffset
から格納します。 署名の形式は基になる署名方式に依存します。署名の実装は、初期状態(
engineInitSign
メソッドの1つに呼び出された直後の状態)にリセットされます。リセットされた後は、同じ非公開キーを使ってさらに署名を生成するために再使用できます。 このメソッドは抽象メソッドでなければいけませんが、バイナリ互換を保つために具象メソッドのままにしておきます。 互換性を配慮するプロバイダは、このメソッドをオーバーライドしてください。- パラメータ:
outbuf
- 最終的な署名を格納するバッファ。offset
-outbuf
に署名を格納するときのオフセット。len
-outbuf
内に署名用として割り当てられるバイト数。 このデフォルト実装とSUNプロバイダは、どちらも部分的なダイジェストを返さない。 このパラメータの値が実際の署名の長さよりも短い場合、このメソッドはSignatureExceptionをスローする。 このパラメータは、その値が実際の署名の長さより長いか等しい場合は無視される。- 戻り値:
outbuf
に格納されたバイト数- 例外:
SignatureException
- エンジンが正しく初期化されていない場合、この署名アルゴリズムが指定された入力データを処理できない場合、またはlen
が実際の署名の長さより小さい場合。- 導入されたバージョン:
- 1.2
-
engineVerify
protected abstract boolean engineVerify(byte[] sigBytes) throws SignatureException渡された署名を検証します。- パラメータ:
sigBytes
- 検証対象の署名バイト。- 戻り値:
- 署名が検証された場合はtrue、そうでない場合はfalse。
- 例外:
SignatureException
- エンジンが正しく初期化されていない場合、指定された署名の符号化方法が不適切である場合、指定された署名の型が不正である場合、この署名アルゴリズムが指定された入力データを処理できない場合など。
-
engineVerify
protected boolean engineVerify(byte[] sigBytes, int offset, int length) throws SignatureException指定されたオフセットから開始して、指定されたバイト・データの配列の渡された署名を検証します。ノート: サブクラスは、デフォルトの実装を上書きする必要があります。
- パラメータ:
sigBytes
- 検証対象の署名バイト。offset
- バイトの配列での開始オフセット。length
- 使用するバイト数(offsetから開始)。- 戻り値:
- 署名が検証された場合はtrue、そうでない場合はfalse。
- 例外:
SignatureException
- エンジンが正しく初期化されていない場合、指定された署名の符号化方法が不適切である場合、指定された署名の型が不正である場合、この署名アルゴリズムが指定された入力データを処理できない場合など。- 導入されたバージョン:
- 1.4
-
engineSetParameter
@Deprecatedprotected abstract void engineSetParameter(String param, Object value) throws InvalidParameterException非推奨。engineSetParameter
に置き換えられています。指定されたアルゴリズム・パラメータを、指定された値に設定します。 このメソッドは、このオブジェクトのさまざまなパラメータの設定を可能にする汎用的なメカニズムを提供します。 パラメータは、たとえば、パラメータ・サイズ、署名生成に対する乱数ビットの発生源(該当する場合)、特定のオプションの計算を実行するかどうかの指示など、アルゴリズムに対して設定可能であればどのようなパラメータでも設定できます。 各パラメータの命名法は、統一されていてアルゴリズムに固有であることが望ましいですが、現時点では規定されていません。- パラメータ:
param
- パラメータの文字列識別子。value
- パラメータ値。- 例外:
InvalidParameterException
-param
がこの署名アルゴリズム・エンジンに対して無効である場合、パラメータが設定済みで再設定できない場合、セキュリティ例外が発生した場合など。
-
engineSetParameter
protected void engineSetParameter(AlgorithmParameterSpec params) throws InvalidAlgorithmParameterExceptionこのメソッドはプロバイダによってオーバーライドされ、署名エンジンを指定したパラメータ・セットで初期化します。
- パラメータ:
params
- パラメータ- 例外:
UnsupportedOperationException
- このメソッドがプロバイダでオーバーライドされていない場合InvalidAlgorithmParameterException
- このメソッドがプロバイダでオーバーライドされておらず、かつ与えられたパラメータが署名エンジンにとって不適切である場合
-
engineGetParameters
protected AlgorithmParameters engineGetParameters()このメソッドは、このシグネチャ・エンジンで使用されるパラメータを返すためにプロバイダによってオーバーライドされます。
このシグネチャ・エンジンがパラメータ(
engineSetParameter(AlgorithmParameterSpec)
またはengineSetParameter(String, Object)
のコール)で初期化されており、基礎となるシグネチャ実装がパラメータをAlgorithmParameters
として返すことをサポートしている場合、このメソッドは同じパラメータを返します。 パラメータが設定されていない場合、基礎となるシグネチャ実装でサポートされており、正常に生成できる場合、このメソッドはデフォルトのパラメータ値とランダムに生成されたパラメータ値の組合せを返すことがあります。 それ以外の場合はnull
が返されます。- 戻り値:
- このシグネチャ・エンジンまたは
null
で使用されるパラメータ - 例外:
UnsupportedOperationException
- このメソッドがプロバイダでオーバーライドされていない場合- 導入されたバージョン:
- 1.4
-
engineGetParameter
@Deprecatedprotected abstract Object engineGetParameter(String param) throws InvalidParameterException非推奨。指定されたアルゴリズム・パラメータの値を取得します。 このメソッドは、このオブジェクトのさまざまなパラメータの設定を可能にする汎用的なメカニズムを提供します。 パラメータは、たとえば、パラメータ・サイズ、署名生成に対する乱数ビットの発生源(該当する場合)、特定のオプションの計算を実行するかどうかの指示など、アルゴリズムに対して設定可能であればどのようなパラメータでも設定できます。 各パラメータの命名法は、統一されていてアルゴリズムに固有であることが望ましいですが、現時点では規定されていません。- パラメータ:
param
- パラメータの文字列名。- 戻り値:
- パラメータ値を表すオブジェクト、または何もない場合は
null
。 - 例外:
InvalidParameterException
-param
がこのエンジンに対して無効なパラメータである場合、またはこのパラメータを取得しようとしている間に別の例外が発生した場合。
-
clone
public Object clone() throws CloneNotSupportedException実装が複製可能な場合は複製を返します。- オーバーライド:
clone
、クラス:Object
- 戻り値:
- 実装が複製可能な場合は複製。
- 例外:
CloneNotSupportedException
-Cloneable
をサポートしていない実装で呼び出された場合。- 関連項目:
Cloneable
-
engineSetParameter
に置き換えられています。