インターフェース Pbkdf2PasswordHash
- すべてのスーパーインターフェース:
PasswordHash
public interface Pbkdf2PasswordHash extends PasswordHash
このインターフェースは、組み込みのPbkdf2PasswordHash
実装を表します。組み込みデータベース
IdentityStore
でPbkdf2PasswordHash
を使用するには、このインターフェース型をDatabaseIdentityStoreDefinition
アノテーションのhashAlgorithm
値として構成します。Pbkdf2PasswordHash
のパラメーターを構成するには、DatabaseIdentityStoreDefinition
アノテーションのhashAlgorithmParameters
値として指定します。組み込みの実装は、次の構成可能なパラメーターをサポートする必要があります。
Pbkdf2PasswordHash.Algorithm // default "PBKDF2WithHmacSHA256" Pbkdf2PasswordHash.Iterations // default 2048, minimum 1024 Pbkdf2PasswordHash.SaltSizeBytes // default 32, minimum 16 Pbkdf2PasswordHash.KeySizeBytes // default 32, minimum 16
そして、次の PBKDF2 アルゴリズム:
アルゴリズム名は、対応するアルゴリズムについて Java 暗号化アーキテクチャの標準アルゴリズム名のドキュメントSEによってドキュメント化された文字列リテラル名です。PBKDF2WithHmacSHA224 PBKDF2WithHmacSHA256 PBKDF2WithHmacSHA384 PBKDF2WithHmacSHA512
PasswordHash.generate(char[])
によって生成され、PasswordHash.verify(char[], String)
によって消費されるエンコードされた形式は、次のとおりです。
説明:<algorithm>:<iterations>:<base64(salt)>:<base64(hash)>
- algorithm- ハッシュの生成に使用されるアルゴリズム
- 反復 - ハッシュの生成に使用される反復の数
- base64(salt) - ハッシュの生成に使用されるソルト、base64 エンコード
- base64(hash) - ハッシュ値、base64 エンコード
ハッシュの生成に使用されるアルゴリズムとパラメーターはハッシュと共に格納されるため、組み込みの
Pbkdf2PasswordHash
実装は、現在構成されている値とは異なるアルゴリズムとパラメーター値を使用して生成されたハッシュを検証できます。つまり、既存のパスワードハッシュを確認する機能に影響を与えることなく、構成パラメーターを変更できます。(
Pbkdf2PasswordHash
でサポートされている範囲外のアルゴリズム / パラメーターを使用して生成されたパスワードハッシュは検証できません)
メソッドのサマリー
インターフェース jakarta.security.enterprise.identitystore.PasswordHash から継承されたメソッド
generate, initialize, verify