A ブルートフォースクラックで有名なドイツのハッカー 49分の間に1から6桁のパスワードを持つ160ビットのSHA1ハッシュ。すべてを一定に保つ(ハードウェア、クラッキングテクニック-ここではブルートフォース、パスワードの長さなど)としましょう。SHA2-256ビットアルゴリズムをクラックするのに1時間かかるとします(所要時間は一例であり、現在はそうではありません) )それでは、SHA-512ハッシュまたはSHA2-384またはSHA2-224ハッシュをクラックするのにかかる時間をどのように推定するのでしょうか。
ハッシュタイプも例です。この質問をする別の方法は、128ビットのハッシュをクラックするのに1時間かかるかどうかです。同じハッシュタイプであるが異なるビットをクラックする時間を見積もる式にどうやって到達するのですか?強さ、他のすべては一定のままですか?
ブルートフォースを超える攻撃がないハッシュの場合、クラッキング時間は次のとおりです。
keyspace / hashrate
6桁以下のパスワードには、1,111,111の可能な値のキースペースがあるため、1秒あたり377ハッシュのハッシュレートでパスワードを解読できます。さて、最近のコンピュータでは、それは非常に遅く(Apple IIから期待できる種類のハッシュレート))、注目に値しません。この記事は、実際には1から6文字:英数字と仮定すると、より印象的な21 Mhash/secの場合は6.2 * 10 ^ 10の可能な値であり、bytes、93 Ghash /秒です。
SHA-512、SHA2-384、およびSHA-224は、SHA1またはSHA-256よりも計算が遅くないため、SHA1ハッシュされたパスワードを1時間でブルートフォースできる場合は、約40秒でブルートフォースできます。他のいずれかのSHAハッシュが代わりに使用される場合、1時間です。これが、 bcrypt などの本質的に遅いアルゴリズムを使用してパスワードをハッシュする必要がある理由です。