7

Glassfish 4 のパスワード暗号化アルゴリズムとダイジェスト アルゴリズムの違いは何ですか? パスワードの暗号化アルゴリズムを空白にすることはできないため、MD5 を使用し、エンコードには 16 進数を使用しました。ダイジェスト アルゴリズムは空白なので、デフォルトは SHA-256 です。

しかし、JAAS で簡単なログイン アプリケーションを作成し、テーブルを作成し、1 人のユーザーを挿入し、パスワードを MD5 で暗号化すると、ユーザーはログインできなくなります。パスワードを SHA-256 で暗号化すると、ユーザーはログインできます。

では、パスワード暗号化アルゴリズム フィールドとは何ですか?

4

2 に答える 2

2

ドキュメントはこの点についてあまり明確ではありませんが、私の解釈は次のとおりです。これは、 Glassfish v4 リファレンス マニュアルに基づいています。

パスワード暗号化アルゴリズムは、データベース内でパスワードを暗号化する方法を決定します。これがパラメータdigestrealm-password-enc-algorithmです。もちろん、データベースにパスワードを平文のままにしておくとセキュリティホールになるため、これを何かに設定する必要があります。

誰かが認証を試みたとき、glassfish は送信されたものとデータベースにあるものを比較する方法を必要とします。ただし、後者はすべて施錠されているため、ロックを解除するには鍵が必要です。そのキーで使用される暗号化 (厳密にはハッシュ) は、Digest Algorithm (パラメーターdigest-algorithm) で定義されているものです。v4 ではデ​​フォルトで SHA-256 になります (以前は MD5 でした)。

于 2013-10-21T20:52:29.287 に答える
0

では、パスワード暗号化アルゴリズム フィールドとは何ですか?

ダイジェスト アルゴリズムを使用してログイン リクエストを暗号化/ハッシュし、パスワード暗号化アルゴリズムを使用してデータベースからパスワードを復号化します。

しかし、JAAS で簡単なログイン アプリケーションを作成し、テーブルを作成し、ユーザーを 1 人挿入し、パスワードを MD5 で暗号化すると、そのユーザーはログインできなくなります。

パスワード暗号化フィールドに MD5 を入力し、ダイジェスト アルゴリズムを空白のままにします (デフォルトでは、GlassFish 4 では sha-256 です)。

于 2013-10-17T19:38:24.837 に答える