クラス BCryptPasswordEncoder

java.lang.ObjectSE
org.springframework.security.crypto.bcrypt.BCryptPasswordEncoder
実装されたすべてのインターフェース:
PasswordEncoder

public class BCryptPasswordEncoder extends ObjectSE implements PasswordEncoder
BCrypt の強力なハッシュ関数を使用する PasswordEncoder の実装。クライアントは、オプションで「バージョン」($2a、$2b、$2y)と「強度」(別名 BCrypt のログラウンド)と SecureRandom インスタンスを提供できます。強度パラメーターが大きいほど、パスワードをハッシュするために(指数関数的に)より多くの作業が必要になります。デフォルト値は 10 です。
  • コンストラクターの詳細

    • BCryptPasswordEncoder

      public BCryptPasswordEncoder()
    • BCryptPasswordEncoder

      public BCryptPasswordEncoder(int strength)
      パラメーター:
      strength - 使用するログラウンド、4 〜 31
    • BCryptPasswordEncoder

      public BCryptPasswordEncoder(BCryptPasswordEncoder.BCryptVersion version)
      パラメーター:
      version - bcrypt のバージョン、2a、2b、2y
    • BCryptPasswordEncoder

      public BCryptPasswordEncoder(BCryptPasswordEncoder.BCryptVersion version, SecureRandomSE random)
      パラメーター:
      version - bcrypt のバージョン、2a、2b、2y
      random - 使用するセキュアなランダムインスタンス
    • BCryptPasswordEncoder

      public BCryptPasswordEncoder(int strength, SecureRandomSE random)
      パラメーター:
      strength - 使用するログラウンド、4 〜 31
      random - 使用するセキュアなランダムインスタンス
    • BCryptPasswordEncoder

      public BCryptPasswordEncoder(BCryptPasswordEncoder.BCryptVersion version, int strength)
      パラメーター:
      version - bcrypt のバージョン、2a、2b、2y
      strength - 使用するログラウンド、4 〜 31
    • BCryptPasswordEncoder

      public BCryptPasswordEncoder(BCryptPasswordEncoder.BCryptVersion version, int strength, SecureRandomSE random)
      パラメーター:
      version - bcrypt のバージョン、2a、2b、2y
      strength - 使用するログラウンド、4 〜 31
      random - 使用するセキュアなランダムインスタンス
  • メソッドの詳細

    • encode

      public StringSE encode(CharSequenceSE rawPassword)
      インターフェースからコピーされた説明: PasswordEncoder
      生のパスワードをエンコードします。一般に、適切なエンコードアルゴリズムは、8 バイト以上のランダムに生成されたソルトと組み合わせた SHA-1 以上のハッシュを適用します。
      次で指定:
      インターフェース PasswordEncoderencode 
    • matches

      public boolean matches(CharSequenceSE rawPassword, StringSE encodedPassword)
      インターフェースからコピーされた説明: PasswordEncoder
      ストレージから取得したエンコードされたパスワードが、エンコードされた後に送信された生のパスワードと一致することを確認します。パスワードが一致する場合は true を返し、一致しない場合は false を返します。保管されたパスワード自体は決してデコードされません。
      次で指定:
      インターフェース PasswordEncodermatches 
      パラメーター:
      rawPassword - エンコードおよび照合する生のパスワード
      encodedPassword - 比較するストレージからのエンコードされたパスワード
      戻り値:
      エンコード後の生のパスワードがストレージからのエンコードされたパスワードと一致する場合は true
    • upgradeEncoding

      public boolean upgradeEncoding(StringSE encodedPassword)
      インターフェースからコピーされた説明: PasswordEncoder
      セキュリティを強化するためにエンコードされたパスワードを再度エンコードする必要がある場合は true を返し、そうでない場合は false を返します。デフォルトの実装は常に false を返します。
      次で指定:
      インターフェース PasswordEncoderupgradeEncoding 
      パラメーター:
      encodedPassword - チェックするエンコードされたパスワード
      戻り値:
      セキュリティを強化するためにエンコードされたパスワードを再度エンコードする必要がある場合は true、そうでない場合は false。