最近、パスワード ハッシュに関する記事を読みました。
MD5 または SHA1 ハッシュはどのように作成され、復号化できませんか?? 私が思うに、それは特定の FORMULA によって文字列を暗号化しているに違いありません (常に同じ文字列に対して同じハッシュを与えるため、ランダム化は必要ありません)。それとも人々はフォーラムを知らないのですか?
最近、パスワード ハッシュに関する記事を読みました。
MD5 または SHA1 ハッシュはどのように作成され、復号化できませんか?? 私が思うに、それは特定の FORMULA によって文字列を暗号化しているに違いありません (常に同じ文字列に対して同じハッシュを与えるため、ランダム化は必要ありません)。それとも人々はフォーラムを知らないのですか?
MD5 と SHA1 は暗号化アルゴリズムではありません。それらはハッシュアルゴリズムです。
一方向式です。特定の文字列に対して MD5 または SHA1 を実行すると、常に同じハッシュが得られます。関数を逆にして元の文字列に戻すことはできません。
例えば:
15 モッド 4 = 3
式が分かっていても
×モッド4
x は 3、7、11、15 などの可能性があるため、推測できません。
明らかに、MD5 と SHA1 はもっと複雑です!
上記の例では、15 を代入すると常に 3 の答えが得られますが、元の数を推測することはできません。これは、複数の入力文字列が同じハッシュを与える可能性のある衝突にうまくつながります。
http://en.wikipedia.org/wiki/MD5#Collision_vulnerabilities
ウィキペディアには、使用されている特定のアルゴリズムに関する情報があります。
すべてが心理によって正しく説明されています。これにもう1点追加したいと思います。
15 モッド 4 = 3
式がわかっていても
×モッド4
x は 3、7、11、15 などの可能性があるため、推測できません。
状況にさらに近づいて、アクションの結果を得ることができます (アクションの結果としてハッシュとアクションの説明があるように)
x mod 4 = 3
x は 12、13、14、または 15 のいずれかであり、どの整数が入力されたかはわかりません。