| 
 | JavaTM Platform Standard Ed. 6 | |||||||||
| 前のクラス 次のクラス | フレームあり フレームなし | |||||||||
| 概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド | |||||||||
java.lang.Objectjavax.crypto.spec.PBEKeySpec
public class PBEKeySpec
パスワードベースの暗号化 (PBE) で使用できる、ユーザーが選択したパスワードです。
パスワードは一種の生の鍵データと見なすことができます。パスワードを使用する暗号化機構は、鍵データから暗号化鍵を派生します。
PBE 機構が異なると、各パスワード文字のビット数も異なる場合があります。たとえば、PKCS #5 で定義されている PBE 機構は、各文字の下位 8 ビットだけを使用し、PKCS #12 では、各文字の 16 ビットすべてを使用します。
該当する秘密鍵ファクトリのインスタンスを生成して、パスワード文字を PBE 鍵に変換します。たとえば、PKCS #5 の秘密鍵ファクトリは各パスワード文字の下位 8 ビットだけから PBE 鍵を構築し、PKCS #12 の秘密鍵ファクトリは各文字の 16 ビットすべてをとります。
また、このクラスは、パスワードを String オブジェクト (これの方が論理的に思えるかもしれない) ではなく char 配列として格納します。これは、String クラスは変更不可能なので、格納されているパスワードが必要なくなったときに内部値を上書きする方法がないためです。つまり、このクラスは、パスワードを char 配列として要求するので、完了時に上書きできます。
SecretKeyFactory, 
PBEParameterSpec| コンストラクタの概要 | |
|---|---|
| PBEKeySpec(char[] password)パスワードをとるコンストラクタです。 | |
| PBEKeySpec(char[] password,
           byte[] salt,
           int iterationCount)パスワード、ソルト、および固定鍵サイズの PBE 暗号の PBEKey を生成するための繰り返し数をとるコンストラクタです。 | |
| PBEKeySpec(char[] password,
           byte[] salt,
           int iterationCount,
           int keyLength)パスワード、ソルト、繰り返し数、および可変鍵サイズの PBE 暗号の PBEKey を生成するために派生される鍵の長さをとるコンストラクタです。 | |
| メソッドの概要 | |
|---|---|
|  void | clearPassword()パスワードの内部コピーを消去します。 | 
|  int | getIterationCount()繰り返し処理の回数を返します。 | 
|  int | getKeyLength()引き出される鍵の長さを返します。 | 
|  char[] | getPassword()パスワードのコピーを返します。 | 
|  byte[] | getSalt()salt のコピーを返します。 | 
| クラス java.lang.Object から継承されたメソッド | 
|---|
| clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait | 
| コンストラクタの詳細 | 
|---|
public PBEKeySpec(char[] password)
 注:password は、複製されてから新しい PBEKeySpec オブジェクトに格納されます。
password - パスワード
public PBEKeySpec(char[] password,
                  byte[] salt,
                  int iterationCount,
                  int keyLength)
password に null が指定された場合は、空の char[] が使用されます。
  注:password および salt は、複製されてから新しい PBEKeySpec オブジェクトに格納されます。
password - パスワードsalt - ソルトiterationCount - 繰り返し数keyLength - 派生される鍵の長さ
NullPointerException - salt が null の場合
IllegalArgumentException - salt が空、つまり長さ 0 である場合、あるいは iterationCount または keyLength が正でない場合
public PBEKeySpec(char[] password,
                  byte[] salt,
                  int iterationCount)
password に null が指定された場合は、空の char[] が使用されます。
  注:password および salt は、複製されてから新しい PBEKeySpec オブジェクトに格納されます。
password - パスワードsalt - ソルトiterationCount - 繰り返し数
NullPointerException - salt が null の場合
IllegalArgumentException - salt が空、つまり長さ 0 である場合、または iterationCount が正でない場合| メソッドの詳細 | 
|---|
public final void clearPassword()
public final char[] getPassword()
注:このメソッドは、パスワードのコピーを返します。不要になったパスワード情報をゼロにする (消去する) のは、呼び出し元の責任です。
IllegalStateException - clearPassword メソッドを呼び出してパスワードがクリアされた場合public final byte[] getSalt()
注:このメソッドは、ソルトのコピーを返します。不要になったソルト情報をゼロにする (消去する) のは、呼び出し側の責任です。
public final int getIterationCount()
public final int getKeyLength()
注:これは、可変鍵サイズ暗号の鍵の長さの設定を示すのに使用されます。実際の鍵サイズは各プロバイダの実装によって異なります。
| 
 | JavaTM Platform Standard Ed. 6 | |||||||||
| 前のクラス 次のクラス | フレームあり フレームなし | |||||||||
| 概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド | |||||||||
Copyright 2009 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms. Documentation Redistribution Policy も参照してください。