クラス StandardPasswordEncoder

  • 実装されたすべてのインターフェース:
    PasswordEncoder

    @Deprecated
    public final class StandardPasswordEncoder
    extends java.lang.Object
    implements PasswordEncoder
    使用すべきではありません。
    ダイジェストベースのパスワードエンコーディングは安全とは見なされません。代わりに、BCryptPasswordEncoder、Pbkdf2PasswordEncoder、SCryptPasswordEncoder などの適応型一方向関数を使用してください。パスワードのアップグレードをサポートする DelegatingPasswordEncoder を使用することをお勧めします。このサポートを削除する予定はありません。これはレガシー実装であり、それを使用することは安全でないと見なされることを示すために非推奨です。
    この PasswordEncoder はレガシー目的でのみ提供されており、安全とは見なされていません。1024 回の反復と 8 バイトのランダムなソルト値を持つ SHA-256 ハッシュを使用する標準の PasswordEncoder 実装。追加のシステム全体のシークレット値を使用して、追加の保護を提供します。

    ダイジェストアルゴリズムは、ソルト、シークレット、パスワードの連結されたバイトに対して呼び出されます。

    新しいシステムを開発している場合、セキュリティと他の言語との相互運用性の両方の観点から、BCryptPasswordEncoder がより良い選択です。

    • コンストラクターのサマリー

      コンストラクター  
      コンストラクター 説明
      StandardPasswordEncoder()
      使用すべきではありません。
      追加の秘密値なしで標準のパスワードエンコーダーを構築します。
      StandardPasswordEncoder​(java.lang.CharSequence secret)
      使用すべきではありません。
      パスワードハッシュにも含まれる秘密の値を使用して、標準のパスワードエンコーダーを構築します。
    • メソッドのサマリー

      すべてのメソッド   インスタンスメソッド   具象メソッド   非推奨のメソッド  
      修飾子と型 メソッド 説明
      java.lang.Stringencode​(java.lang.CharSequence rawPassword)
      使用すべきではありません。
      生のパスワードをエンコードします。
      booleanmatches​(java.lang.CharSequence rawPassword, java.lang.String encodedPassword)
      使用すべきではありません。
      ストレージから取得したエンコードされたパスワードが、エンコードされた後に送信された生のパスワードと一致することを確認します。
      • クラス java.lang.Object から継承されたメソッド

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • コンストラクターの詳細

      • StandardPasswordEncoder

        public StandardPasswordEncoder()
        使用すべきではありません。
        追加の秘密値なしで標準のパスワードエンコーダーを構築します。
      • StandardPasswordEncoder

        public StandardPasswordEncoder​(java.lang.CharSequence secret)
        使用すべきではありません。
        パスワードハッシュにも含まれる秘密の値を使用して、標準のパスワードエンコーダーを構築します。
        パラメーター:
        secret - エンコーディングプロセスで使用される秘密鍵 (共有すべきではない)
    • メソッドの詳細

      • encode

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

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