2016-12-18 14 views
-5

ログインプログラムを実行し、sha-256とsaltを使ってパスワードを保存するために私は少し助けが必要ですが、私は部分を作りましたが、ここでは難しい部分です。 sha-256を使用すると、パスワードを決定する操作を元に戻せないということを私は読んだことがあります。それが本当であれば、パスワードの暗号化に使用する必要があり、パスワードを暗号化した後、パスワードが暗号化されている場合はどのようにログインできますか? PS:Googleで検索しました。sha256と塩を使ったJava暗号化

+2

MD5とSHAは*ハッシュアルゴリズム*です。これらは暗号化アルゴリズムではありません。パスワードを設定すると単純にハッシュされ、ログインしようとするとハッシュを比較します。 –

答えて

0

あなたのパスワードは12345678としましょう。このパスワードをハッシュしてプログラムに保存します。あなたのログインプログラムでは、ユーザーからの入力を受け取り、同じアルゴリズムでハッシュして、2つのハッシュされた文字列を比較します。等しければ、文字列は等しいが、そうでなければ等しくない。その人は、正しいパスワードが何であり、あなたのパスワードをハッシュしているのか把握できません。

0

ハッシュ関数の動作についてお読みください。ハッシュ関数は、入力に応じて値を生成します。その値を計算する式は特定のハッシュ関数(つまりSHA-256)で常に同じなので、入力(あなたの場合はパスワード)を知っていれば、いつでも生成できます。したがって、暗号とは異なり、ハッシュ関数で計算された値は復号化されないと考えられます。

私は

は、あなたが言ったように、あなただけのハッシュ値を知ることにより、操作を元に戻すことはできませんから、パスワードを暗号化する必要はありません、それが保存されているパスワードを暗号化するために使用するために必要なものあなたのデータベース。あなたがプレーンテキスト形式のパスワードを知っている場合にのみアクセスすることができます。

関連する問題