crypt関数を使用してphpでblowfishを使用しています。パスワードの範囲が0001〜9999の場合、ユーザーのパスワードを推測するのにどのくらい時間がかかるか知りたいですか?
ユーザーに別の入力パスワード値を実装する必要があります。
サイズ4のすべての数値パスワードのテストは、最新のコンピューターでは非常に高速です。パスワードが異なる文字(大文字/小文字、句読点、特殊文字)で構成され、より長い(少なくとも10文字、またはシステムの感度に応じてさらに多く)ことを確認する必要があります。
このテーマに関するJeffAtwoodによるこの非常に興味深い記事を参照してください。
これは基本的に10,000の組み合わせを提供し、それを推測するのは非常に高速です(瞬時に)。
この古いテーブルを今よりずっと速くチェックしてくださいパスワード回復速度
ハッシュ速度と使いやすさの良い組み合わせを思いついたとしましょう。
more hashing time =~ more brute-force resilient
しかし同時に
more hashing time =~ less usability
いくつかの妥協を行い、パスワードチェックロジックに最大5
数秒かかると判断したと仮定します(これは、パスワードを何度もハッシュすることを意味する、多数の反復で行いました)。
休憩時間(時間単位) =組み合わせ* hashing_time (秒単位) / 3600(+ルックアップ時間、些細な)
試してみよう
休憩時間(時間) = 9999 *5/3600=およそ13時間48分
つまり、最終的には、@ Wookaiのアドバイスに従い、短い数値のパスワードは使用しないでください。