|
JavaTM 2 Platform Std. Ed. v1.4.0 |
||||||||||
前のクラス 次のクラス | フレームあり フレームなし | ||||||||||
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |
java.lang.Object | +--java.security.SignatureSpi
Signature
クラスの Service Provider Interface (SPI) を定義します。これは、デジタル署名アルゴリズムの機能を提供するために使われます。デジタル署名は、デジタルデータの認証と整合性の保証のために使用されます。
特定の署名アルゴリズムの実装を提供する各暗号サービスプロバイダは、このクラスのすべての抽象メソッドを実装する必要があります。
Signature
フィールドの概要 | |
protected SecureRandom |
appRandom
アプリケーション固有の乱数の発生源です。 |
コンストラクタの概要 | |
SignatureSpi()
|
メソッドの概要 | |
Object |
clone()
実装が複製可能な場合は複製を返します。 |
protected abstract Object |
engineGetParameter(String param)
推奨されていません。 |
protected AlgorithmParameters |
engineGetParameters()
このメソッドはプロバイダによってオーバーライドされ、署名エンジンで使用されたパラメータを返します。 |
protected abstract void |
engineInitSign(PrivateKey privateKey)
署名オブジェクトを、署名操作のために指定された非公開鍵で初期化します。 |
protected void |
engineInitSign(PrivateKey privateKey,
SecureRandom random)
署名オブジェクトを、署名操作のために指定された非公開鍵と乱数の発生源で初期化します。 |
protected abstract void |
engineInitVerify(PublicKey publicKey)
署名オブジェクトを、検証操作のために指定された公開鍵で初期化します。 |
protected void |
engineSetParameter(AlgorithmParameterSpec params)
このメソッドはプロバイダによってオーバーライドされ、署名エンジンを指定したパラメータセットで初期化します。 |
protected abstract void |
engineSetParameter(String param,
Object value)
推奨されていません。 engineSetParameter で置き換えます。 |
protected abstract byte[] |
engineSign()
これまでに更新されたすべてのデータのうちの署名データを返します。 |
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 abstract boolean |
engineVerify(byte[] sigBytes)
渡された署名を検証します。 |
protected boolean |
engineVerify(byte[] sigBytes,
int offset,
int length)
指定されたオフセットから開始して、指定されたバイトデータの配列の渡された署名を検証します。 |
クラス java.lang.Object から継承したメソッド |
equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
フィールドの詳細 |
protected SecureRandom appRandom
コンストラクタの詳細 |
public SignatureSpi()
メソッドの詳細 |
protected abstract void engineInitVerify(PublicKey publicKey) throws InvalidKeyException
publicKey
- 署名が検証されるアイデンティティの公開鍵
InvalidKeyException
- 鍵の符号化が不適切な場合、パラメータが欠落しているなどの場合protected abstract void engineInitSign(PrivateKey privateKey) throws InvalidKeyException
privateKey
- 署名が生成されるアイデンティティの非公開鍵
InvalidKeyException
- 鍵の符号化が不適切な場合、パラメータが欠落しているなどの場合protected void engineInitSign(PrivateKey privateKey, SecureRandom random) throws InvalidKeyException
この具象メソッドは、この定義済みの抽象クラスに追加されています (下位互換のため、抽象メソッドにはなれない)。
privateKey
- 署名が生成されるアイデンティティの非公開鍵random
- 乱数の発生源
InvalidKeyException
- 鍵の符号化が不適切な場合、パラメータが欠落しているなどの場合protected abstract void engineUpdate(byte b) throws SignatureException
b
- 更新に使うバイト
SignatureException
- エンジンが適切に初期化されていない場合protected abstract void engineUpdate(byte[] b, int off, int len) throws SignatureException
b
- バイトの配列off
- バイトの配列での開始オフセットlen
- オフセットから開始して使われるバイト数
SignatureException
- エンジンが適切に初期化されていない場合protected abstract byte[] engineSign() throws SignatureException
SignatureException
- エンジンが適切に初期化されていない場合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
が実際の署名の長さより短い場合protected abstract boolean engineVerify(byte[] sigBytes) throws SignatureException
sigBytes
- 検証対象の署名バイト
SignatureException
- エンジンが適切に初期化されていない場合、渡された署名が適切に符号化されていない場合、入力が間違っているなどの場合protected boolean engineVerify(byte[] sigBytes, int offset, int length) throws SignatureException
注: サブクラスは、デフォルトの実装を上書きしなければなりません。
sigBytes
- 検証対象の署名バイトoffset
- バイトの配列での開始オフセットlength
- オフセットから開始して使われるバイト数
SignatureException
- エンジンが適切に初期化されていない場合、渡された署名が適切に符号化されていない場合、入力が間違っているなどの場合protected abstract void engineSetParameter(String param, Object value) throws InvalidParameterException
engineSetParameter
で置き換えます。
param
- パラメータの文字列識別子value
- パラメータ値
InvalidParameterException
- param
がこの署名アルゴリズムエンジンに対して無効である場合、パラメータが設定済みで再設定できない場合、セキュリティ例外が発生したなどの場合protected void engineSetParameter(AlgorithmParameterSpec params) throws InvalidAlgorithmParameterException
このメソッドはプロバイダによってオーバーライドされ、署名エンジンを指定したパラメータセットで初期化します。
params
- パラメータ
UnsupportedOperationException
- このメソッドがプロバイダでオーバーライドされていない場合
InvalidAlgorithmParameterException
- このメソッドがプロバイダでオーバーライドされておらず、かつ与えられたパラメータが署名エンジンにとって不適切である場合protected AlgorithmParameters engineGetParameters()
このメソッドはプロバイダによってオーバーライドされ、署名エンジンで使用されたパラメータを返します。署名エンジンがパラメータを使用しない場合は null を返します。
返されたパラメータは、この署名エンジンを初期化するために使用されたパラメータと同じになることがあります。あるいは、この署名エンジンがアルゴリズムパラメータを要求しても、どのアルゴリズムパラメータでも初期化されなかった場合には、返されたパラメータには、基になる署名の実装で使用されるデフォルトのパラメータ値とランダムに生成されたパラメータ値の組み合わせが含まれることがあります。
UnsupportedOperationException
- このメソッドがプロバイダでオーバーライドされていない場合protected abstract Object engineGetParameter(String param) throws InvalidParameterException
param
- パラメータの文字列名
InvalidParameterException
- param
がこのエンジンに対して無効なパラメータである場合、あるいはこのパラメータを取得しようとしている間に別の例外が発生した場合public Object clone() throws CloneNotSupportedException
Object
内の clone
CloneNotSupportedException
- Cloneable
をサポートしていない実装で呼び出された場合Cloneable
|
JavaTM 2 Platform Std. Ed. v1.4.0 |
||||||||||
前のクラス 次のクラス | フレームあり フレームなし | ||||||||||
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |
Java、Java 2D、および JDBC は米国ならびにその他の国における米国 Sun Microsystems, Inc. の商標もしくは登録商標です。
Copyright 1993-2002 Sun Microsystems, Inc. 901 San Antonio Road
Palo Alto, California, 94303, U.S.A. All Rights Reserved.