|
JavaTM 2 Platform Standard Ed. 5.0 |
|||||||||
前のクラス 次のクラス | フレームあり フレームなし | |||||||||
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |
java.lang.Object javax.crypto.ExemptionMechanism
public class ExemptionMechanism
このクラスは、除外機構の機能と、「鍵の回復」、「鍵の弱化」、および「鍵エスクロー」の例を提供します。
除外機構を使用するアプリケーションまたはアプレットには、使用しないものより強力な暗号化機能を付与できます。
コンストラクタの概要 | |
---|---|
protected |
ExemptionMechanism(ExemptionMechanismSpi exmechSpi,
Provider provider,
String mechanism)
ExemptionMechanism オブジェクトを作成します。 |
メソッドの概要 | |
---|---|
protected void |
finalize()
ExemptionMechanism オブジェクトへの参照が存在しなくなったときに、このオブジェクトによって格納された鍵が確実に消されるようにします。 |
byte[] |
genExemptionBlob()
除外機構の鍵 Blob を生成します。 |
int |
genExemptionBlob(byte[] output)
除外機構の鍵 Blob を生成して、結果を output バッファに格納します。 |
int |
genExemptionBlob(byte[] output,
int outputOffset)
除外機構の鍵 Blob を生成して、結果を outputOffset から始まる output バッファに格納します。 |
static ExemptionMechanism |
getInstance(String algorithm)
指定された除外機構アルゴリズムを実装する ExemptionMechanism オブジェクトを作成します。 |
static ExemptionMechanism |
getInstance(String algorithm,
Provider provider)
指定されたプロバイダから、指定された除外機構アルゴリズムの ExemptionMechanism オブジェクトを生成します。 |
static ExemptionMechanism |
getInstance(String algorithm,
String provider)
指定されたプロバイダから、指定された除外機構の ExemptionMechanism オブジェクトを作成します。 |
String |
getName()
この ExemptionMechanism オブジェクトの除外機構名を返します。 |
int |
getOutputSize(int inputLen)
入力の長さ inputLen (バイト単位) を指定して、次の genExemptionBlob 操作の結果を保持するために必要な出力バッファの長さをバイト数で返します。 |
Provider |
getProvider()
この ExemptionMechanism オブジェクトのプロバイダを返します。 |
void |
init(Key key)
鍵を使用してこの除外機構を初期化します。 |
void |
init(Key key,
AlgorithmParameters params)
鍵とアルゴリズムパラメータのセットを使用してこの除外機構を初期化します。 |
void |
init(Key key,
AlgorithmParameterSpec params)
鍵とアルゴリズムパラメータのセットを使用してこの除外機構を初期化します。 |
boolean |
isCryptoAllowed(Key key)
この除外機構により結果 Blob が正常に生成されたかどうかを返します。 |
クラス java.lang.Object から継承されたメソッド |
---|
clone, equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
コンストラクタの詳細 |
---|
protected ExemptionMechanism(ExemptionMechanismSpi exmechSpi, Provider provider, String mechanism)
exmechSpi
- 委譲先provider
- プロバイダmechanism
- 除外機構メソッドの詳細 |
---|
public final String getName()
ExemptionMechanism
オブジェクトの除外機構名を返します。
これは、この ExemptionMechanism
オブジェクトを作成した getInstance
呼び出しの 1 つで指定された名前と同じです。
ExemptionMechanism
オブジェクトの除外機構名public static final ExemptionMechanism getInstance(String algorithm) throws NoSuchAlgorithmException
ExemptionMechanism
オブジェクトを作成します。デフォルトのプロバイダのパッケージが、要求された除外機構アルゴリズムの実装を提供している場合は、その実装を持った ExemptionMechanism
クラスのインスタンスが返されます。除外機構がデフォルトのプロバイダパッケージで得られない場合は、ほかのプロバイダパッケージが検索されます。
algorithm
- 要求された除外機構の標準的な名前。除外機構の標準名については、「Java 暗号化アーキテクチャ API の仕様およびリファレンス」の付録 A を参照
ExemptionMechanism
オブジェクト
NullPointerException
- algorithm
が null の場合
NoSuchAlgorithmException
- 指定されたアルゴリズムが、デフォルトのプロバイダパッケージにも、検索したほかのプロバイダパッケージにもない場合public static final ExemptionMechanism getInstance(String algorithm, String provider) throws NoSuchAlgorithmException, NoSuchProviderException
ExemptionMechanism
オブジェクトを作成します。
algorithm
- 要求された除外機構の標準的な名前。除外機構の標準名については、「Java 暗号化アーキテクチャ API の仕様およびリファレンス」の付録 A を参照provider
- プロバイダ名
ExemptionMechanism
オブジェクト
NullPointerException
- algorithm
が null の場合
NoSuchAlgorithmException
- 指定されたプロバイダに指定されたアルゴリズムがない場合
NoSuchProviderException
- 指定されたプロバイダが設定されていない場合
IllegalArgumentException
- provider
が null の場合public static final ExemptionMechanism getInstance(String algorithm, Provider provider) throws NoSuchAlgorithmException
ExemptionMechanism
オブジェクトを生成します。provider
は登録されている必要はないことに注意してください。
algorithm
- 要求された除外機構の標準的な名前。除外機構の標準名については、「Java 暗号化アーキテクチャ API の仕様およびリファレンス」の付録 A を参照provider
- プロバイダ
ExemptionMechanism
オブジェクト
NullPointerException
- algorithm
が null の場合
NoSuchAlgorithmException
- 指定されたプロバイダに指定されたアルゴリズムがない場合
IllegalArgumentException
- provider
が null の場合public final Provider getProvider()
ExemptionMechanism
オブジェクトのプロバイダを返します。
ExemptionMechanism
オブジェクトのプロバイダpublic final boolean isCryptoAllowed(Key key) throws ExemptionMechanismException
このメソッドは、渡された鍵が、この除外機構が初期化および生成段階で使用した鍵と同じであることも確認します。
key
- 暗号が使用する鍵
key
が null の場合は false
ExemptionMechanismException
- この除外機構オブジェクトにより結果 Blob が正常に生成されたかどうかを判定する際に問題が見つかった場合public final int getOutputSize(int inputLen) throws IllegalStateException
inputLen
(バイト単位) を指定して、次の genExemptionBlob
操作の結果を保持するために必要な出力バッファの長さをバイト数で返します。
次の genExemptionBlob
呼び出しの実際の出力長は、このメソッドが返す長さより小さいことがあります。
inputLen
- 入力長 (バイト単位)
IllegalStateException
- この除外機構が誤った状態にある場合 (たとえば、まだ初期化されていない)public final void init(Key key) throws InvalidKeyException, ExemptionMechanismException
この除外機構が、指定された key
から派生できないアルゴリズムパラメータを必要とする場合、基本となる除外機構の実装は、プロバイダ固有のデフォルト値を使用して必要なパラメータ自体を生成します。アルゴリズムパラメータを呼び出し側で指定する必要がある場合は、InvalidKeyException
が発生します。
key
- この除外機構の鍵
InvalidKeyException
- 指定された鍵がこの除外機構に不適切な場合
ExemptionMechanismException
- 初期化の処理で問題が見つかった場合public final void init(Key key, AlgorithmParameterSpec params) throws InvalidKeyException, InvalidAlgorithmParameterException, ExemptionMechanismException
この除外機構がアルゴリズムパラメータを必要とし、params
が null である場合、基本となる除外機構の実装は、プロバイダ固有のデフォルト値を使用して必要なパラメータ自体を生成します。アルゴリズムパラメータを呼び出し側で指定する必要がある場合は、InvalidAlgorithmParameterException
が発生します。
key
- この除外機構の鍵params
- アルゴリズムパラメータ
InvalidKeyException
- 指定された鍵がこの除外機構に不適切な場合
InvalidAlgorithmParameterException
- 指定されたアルゴリズムパラメータがこの除外機構に不適切な場合
ExemptionMechanismException
- 初期化の処理で問題が見つかった場合public final void init(Key key, AlgorithmParameters params) throws InvalidKeyException, InvalidAlgorithmParameterException, ExemptionMechanismException
この除外機構がアルゴリズムパラメータを必要とし、params
が null である場合、基本となる除外機構の実装は、プロバイダ固有のデフォルト値を使用して必要なパラメータ自体を生成します。アルゴリズムパラメータを呼び出し側で指定する必要がある場合は、InvalidAlgorithmParameterException
が発生します。
key
- この除外機構の鍵params
- アルゴリズムパラメータ
InvalidKeyException
- 指定された鍵がこの除外機構に不適切な場合
InvalidAlgorithmParameterException
- 指定されたアルゴリズムパラメータがこの除外機構に不適切な場合
ExemptionMechanismException
- 初期化の処理で問題が見つかった場合public final byte[] genExemptionBlob() throws IllegalStateException, ExemptionMechanismException
IllegalStateException
- この除外機構が誤った状態にある場合 (たとえば、初期化されていない)
ExemptionMechanismException
- 生成の処理で問題が見つかった場合public final int genExemptionBlob(byte[] output) throws IllegalStateException, ShortBufferException, ExemptionMechanismException
output
バッファに格納します。
output
バッファが小さすぎて結果を保持できない場合は、ShortBufferException
がスローされます。この場合、より大きな出力バッファを使用してこの呼び出しを繰り返します。getOutputSize
を使用して、必要な出力バッファのサイズを判定します。
output
- 結果を格納するバッファ
output
に格納されたバイト数
IllegalStateException
- この除外機構が誤った状態にある場合 (たとえば、初期化されていない)
ShortBufferException
- 指定された出力バッファが小さすぎて結果を保持できない場合
ExemptionMechanismException
- 生成の処理で問題が見つかった場合public final int genExemptionBlob(byte[] output, int outputOffset) throws IllegalStateException, ShortBufferException, ExemptionMechanismException
outputOffset
から始まる output
バッファに格納します。
output
バッファが小さすぎて結果を保持できない場合は、ShortBufferException
がスローされます。この場合、より大きな出力バッファを使用してこの呼び出しを繰り返します。getOutputSize
を使用して、必要な出力バッファのサイズを判定します。
output
- 結果を格納するバッファoutputOffset
- 結果が格納される output
内のオフセット
output
に格納されたバイト数
IllegalStateException
- この除外機構が誤った状態にある場合 (たとえば、初期化されていない)
ShortBufferException
- 指定された出力バッファが小さすぎて結果を保持できない場合
ExemptionMechanismException
- 生成の処理で問題が見つかった場合protected void finalize()
Object
内の finalize
|
JavaTM 2 Platform Standard Ed. 5.0 |
|||||||||
前のクラス 次のクラス | フレームあり フレームなし | |||||||||
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |
Copyright 2004 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms. Documentation Redistribution Policy も参照してください。