2011-03-12 16 views
2

可能性の重複:私のウェブサイトで
Is it possible to decrypt md5 hashes?パスワード回復:md5で暗号化されたパスワードを解読するには?

、私はパスワードのMD5暗号化を使用しています。したがって、データベースの暗号化された形式で保存されます。パスワード回復のために、どのように暗号化されたパスワードを復号化できますか?

助けてください:)

+6

パスワードを「復号化」しません。入ってくるパスワードもMD5でハッシュし、そのハッシュがデータベース内のハッシュと一致する場合、パスワードは同じです。あなたはまた、 "塩"を使用する必要があります。 – Zabba

答えて

9

他の人がよく説明しているように、 MD5ハッシュを解読する。

私はあなたのパスワードの回復を行うための最善の方法は、このようなものです推測:

  1. ユーザーが自分のメールアドレスを提供することにより、パスワードの回復を 要求することができ、ユーザーは電子メールアドレスで識別できるように(それが一意である必要があります)。

  2. 電子メールは(あなたが 電子メールを送信する際に生成し、DBに保存している )一意のハッシュを含む リンクで彼のアドレスに送信されます。

  3. リンクをユーザーがクリックされますが、彼らは別のパスワードを選択することができます フォームを表示することができ (そしてもちろんの 一意のハッシュは、DB内の1と等しくなるように をチェックされています)。

メールアドレスを尋ねて新しいパスワードを生成してユーザーに送信するという方法があります。この1つの問題は、あなたのメールアドレスだけを知っている人がパスワード変更を要求できることです。彼は新しいパスを知らないだろうし、あなたは電子メールでそれを得るだろうが、依然としてユーザにとっては非常に不便である。

5

私はMD5が片方向ハッシングアルゴリズムだと思います。つまり、一度暗号化すれば、データを復号化することはできません。 (私は良いハッカーが反対すると確信している)

とにかく、パスワードの暗号化されたバージョンをデータベースに保存することができます。ユーザがログインしようとすると、同じMD5アルゴリズムを使用して入力したパスワードを暗号化し、暗号化されたパスワードのバージョンとデータベースに保存されている暗号化されたパスワードを比較します。

この方法に慣れたら、ハッシュされたパスワードに塩を追加するという考え方を見ることができます。

また、MD5以外のハッシュアルゴリズムもあります。 .NETを使用している場合、フレームワークにはSHA512Managedなどの束があります。それぞれにはハッシュ、セキュリティなどのトレードオフがあります。あなたの特定の問題を解決するものを選んでください。

4

md5パスワードを解読することはできません!唯一の方法はそれを無理矢理にすることです! :あなたがパスワード回復は、ランダムな文字列の魔女を作成したいと思う場合 は...ただ、アイデア

EDITを電子メール(またはその他の方法)によってユーザに送信され、md5'dパスワードとして設定されます。パスワードを解読することができれば、それを安全に保つために、なぜあなたはパスワードを暗号化しますか?意味がありません!あなたは基本的にパスワードを暗号化しないでおくことができます!

+0

あなたと完全に同意します:) –

1

これは簡単ではありませんが、のようにrainbow tableを使用することをお勧めします。

信頼できる(またはうまく動作しない)場合があります。online versionsがいくつかあります。

5

MD5はハッシュベースの暗号化です。つまり、元の価値を取り戻す方法がないということです。元のデータの「チェックサム」であるものを作成しました。 MD5アルゴリズムを使用して他のものを暗号化し、それをMD5のデータバージョンと比較することはできますが、オリジナルを元に戻すことはできません。

私には5 + 3 + 2 = 10と似ています。元のデータは5,3,2です。しかし、 "ハッシュ"は10です。元のデータを取得する方法はありません誰かが正しい入力(5,3,2)を提供すれば、それをハッシュして、それがファイル10にあるハッシュと一致することを確認することができます。

関連する問題