クラス Pbkdf2PasswordEncoder
java.lang.ObjectSE
org.springframework.security.crypto.password.AbstractValidatingPasswordEncoder
org.springframework.security.crypto.password.Pbkdf2PasswordEncoder
- 実装済みのインターフェース一覧:
PasswordEncoder
PBKDF2 を使用する
PasswordEncoder 実装:- 構成可能なランダムソルト値の長さ (デフォルトは 16 バイトです)
- 構成可能な反復回数 (デフォルトは 310000 です)
- 構成可能な鍵導出関数 (
Pbkdf2PasswordEncoder.SecretKeyFactoryAlgorithmを参照してください) - ランダムソルトに追加された構成可能なシークレット (デフォルトは空です)
- 導入:
- 4.1
ネストされたクラスの概要
ネストされたクラスコンストラクター概要
コンストラクターコンストラクター説明Pbkdf2PasswordEncoder(CharSequenceSE secret, int saltLength, int iterations, int hashWidth) 使用すべきではありません。Pbkdf2PasswordEncoder(CharSequenceSE secret, int saltLength, int iterations, Pbkdf2PasswordEncoder.SecretKeyFactoryAlgorithm secretKeyFactoryAlgorithm) シークレット値、salt の長さ、反復、アルゴリズムを使用して、PBKDF2 パスワードエンコーダーを構築します。方法の概要
修飾子と型メソッド説明static Pbkdf2PasswordEncoder使用すべきではありません。代わりにdefaultsForSpringSecurity_v5_8()を使用してくださいstatic Pbkdf2PasswordEncoder追加の秘密値なしで PBKDF2 パスワードエンコーダーを構築します。protected StringSEencodeNonNullPassword(StringSE rawPassword) protected booleanmatchesNonNull(StringSE rawPassword, StringSE encodedPassword) voidsetAlgorithm(Pbkdf2PasswordEncoder.SecretKeyFactoryAlgorithm secretKeyFactoryAlgorithm) 使用するアルゴリズムを設定します。voidsetEncodeHashAsBase64(boolean encodeHashAsBase64) 結果のハッシュを Base64 としてエンコードするかどうかを設定します。クラス org.springframework.security.crypto.password.AbstractValidatingPasswordEncoder から継承されたメソッド
encode, matches, upgradeEncoding, upgradeEncodingNonNull
コンストラクターの詳細
Pbkdf2PasswordEncoder
@DeprecatedSE public Pbkdf2PasswordEncoder(CharSequenceSE secret, int saltLength, int iterations, int hashWidth) 使用すべきではありません。シークレット値、salt の長さ、繰り返し、ハッシュ幅を使用して、PBKDF2 パスワードエンコーダーを構築します。- パラメーター:
secret- 秘密saltLength- ソルトの長さ (バイト単位)iterations- 反復回数。ユーザーは自分のシステムで約 0.5 秒かかることを目指す必要があります。hashWidth- ハッシュのサイズ (ビット単位)- 導入:
- 5.5
Pbkdf2PasswordEncoder
public Pbkdf2PasswordEncoder(CharSequenceSE secret, int saltLength, int iterations, Pbkdf2PasswordEncoder.SecretKeyFactoryAlgorithm secretKeyFactoryAlgorithm) シークレット値、salt の長さ、反復、アルゴリズムを使用して、PBKDF2 パスワードエンコーダーを構築します。- パラメーター:
secret- 秘密saltLength- ソルトの長さ (バイト単位)iterations- 反復回数。ユーザーは自分のシステムで約 0.5 秒かかることを目指す必要があります。secretKeyFactoryAlgorithm- 使用するアルゴリズム- 導入:
- 5.8
メソッドの詳細
defaultsForSpringSecurity_v5_5
使用すべきではありません。代わりにdefaultsForSpringSecurity_v5_8()を使用してくださいシークレット値を追加せずに PBKDF2 パスワードエンコーダーを構築します。8 バイトのソルト長、185,000 反復、SHA-1 アルゴリズム、および 256 ビットのハッシュ長があります。デフォルトは、このクラスが追加されたときにパスワードを検証するために 0.5 秒をゴールとすることに基づいています。ユーザーは、パスワード検証を自分のシステムに合わせて調整する必要があります。- 戻り値:
Pbkdf2PasswordEncoder- 導入:
- 5.8
defaultsForSpringSecurity_v5_8
シークレット値を追加せずに PBKDF2 パスワードエンコーダーを構築します。16 バイトのソルト長、310,000 反復、SHA-256 アルゴリズム、および 256 ビットのハッシュ長があります。デフォルトは、このクラスが追加されたときにパスワードを検証するために 0.5 秒をゴールとすることに基づいています。ユーザーは、パスワード検証を自分のシステムに合わせて調整する必要があります。- 戻り値:
Pbkdf2PasswordEncoder- 導入:
- 5.8
setAlgorithm
使用するアルゴリズムを設定します。SecretKeyFactory アルゴリズムSEを参照- パラメーター:
secretKeyFactoryAlgorithm- 使用するアルゴリズム (つまり、SecretKeyFactoryAlgorithm.PBKDF2WithHmacSHA1、SecretKeyFactoryAlgorithm.PBKDF2WithHmacSHA256、SecretKeyFactoryAlgorithm.PBKDF2WithHmacSHA512)- 導入:
- 5.0
setEncodeHashAsBase64
public void setEncodeHashAsBase64(boolean encodeHashAsBase64) 結果のハッシュを Base64 としてエンコードするかどうかを設定します。デフォルトは false で、16 進数でエンコードされます。- パラメーター:
encodeHashAsBase64- Base64 としてエンコードする場合は true、16 進数を使用する場合は false (default)
encodeNonNullPassword
matchesNonNull
- 次で指定:
- クラス
AbstractValidatingPasswordEncoderのmatchesNonNull
Pbkdf2PasswordEncoder(CharSequence, int, int, SecretKeyFactoryAlgorithm)を使用してください