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

クラスPBEKeySpec

java.lang.Object
javax.crypto.spec.PBEKeySpec
すべての実装されたインタフェース:
KeySpec

public class PBEKeySpec extends Object implements KeySpec
パスワードベースの暗号化(PBE)で使用できる、ユーザーが選択したパスワードです。

パスワードは一種の生のキー・データと見なすことができます。パスワードを使用する暗号化メカニズムは、キー・データから暗号化キーを派生します。

PBEメカニズムが異なると、各パスワード文字のビット数も異なる場合があります。 たとえば、PKCS#5で定義されているPBEメカニズムは、各文字の下位8ビットだけを使用し、PKCS#12では、各文字の16ビットすべてを使用します。

該当する秘密キー・ファクトリのインスタンスを生成して、パスワード文字をPBEキーに変換します。 たとえば、PKCS#5の秘密キー・ファクトリは各パスワード文字の下位8ビットだけからPBEキーを構築し、PKCS#12の秘密キー・ファクトリは各文字の16ビットすべてをとります。

また、このクラスは、パスワードをStringオブジェクト(この方が論理的に思えるかもしれません)ではなくchar配列として格納します。これは、Stringクラスは変更不可能なので、格納されているパスワードが必要なくなったときに内部値を上書きする方法がないためです。 つまり、このクラスは、パスワードをchar配列として要求するので、完了時に上書きできます。

導入されたバージョン:
1.4
関連項目: