2

「パスワードを忘れた」メカニズムを作成する場合、SHA1 を使用して保存されたユーザーの一時パスワードを作成したい場合があります (他の C# 暗号化メカニズムを自由に提案してください)。

仮パスワードの長さは?短すぎると、ブルート フォースになる可能性があります。とにかく文字列がハッシュされているため、長すぎて不要な長さが冗長ですか? (とにかく20文字と50文字の文字列は同じ長さのハッシュになるため)

更新
これが誤解を招く場合は申し訳ありません。確かに空中から数字を選ぶことはできますが、12 ではなく 13 を選ぶのに十分な数学的理由があるかどうか疑問に思っていました.

4

7 に答える 7

1

私は一般的に10文字で行きます。その理由は特にありませんが、ユーザーが選択したパスワードの長さが平均を上回っていると思います。

ランダムに生成されるという事実だけで、おそらく、ユーザーが選択したものよりも安全で、ブルート フォースに対してより困難になります。人々は、myspace1、stackoverflow1、12341234 などのばかげたパスワードを選びます。

于 2009-04-01T09:45:05.980 に答える
1

これは、一時パスワードに関する良いアドバイスだと思います。

フォームベースの Web サイト認証の決定版ガイド

ユーザーが望む実際のアクションに到達することを優先して、それらの生成を回避することについて話します。

于 2009-04-01T09:57:03.690 に答える
0

ブルートフォースが難しくなる可変サイズ(たとえば8〜12文字)にします...攻撃者があなたがX文字のパスワードを返すことを知っている場合、彼らがしなければならないことは、Nですべてのパスワードを試すことだけです... N が大きいと実用的ではありませんが、N のサイズを変更すると、少なくともそれがはるかに難しくなります。

于 2009-04-01T09:48:58.453 に答える
0

Steve Gibson は、「超高セキュリティ パスワード ジェネレーター」を作成しました。
そのページで、彼はページ表示ごとに 3 つの異なるパスワードを生成します。

  • 64 個のランダムな 16 進文字 (0 ~ 9 および AF)
  • 63 個のランダムな印刷可能な ASCII 文字
  • 63 個のランダムな英数字 (az、AZ、0 ~ 9)

その理由についても解説しています。いい読み物です。お役に立てれば。

于 2009-04-01T09:49:58.417 に答える
0

ユーザーに推奨されているように、サイトで指定されている長さにします。base64 文字のランダムな文字列を生成すると、8 文字のパスワードを使用して夜は安全に眠ることができます。しかしもちろん、ログインの試行を X 秒ごとに 1 回に制限し、試行に Y 回失敗するとアカウントを一時的に無効にします。

また、データベースベースの攻撃を阻止するために、ハッシュする前にユーザーごとに一意のソルトを追加することを忘れないでください.

于 2009-04-01T09:50:24.797 に答える
0

パスワードが英数字の場合、1 文字あたり約 6 ビットの使用可能なデータしかないため、パスワードを 20 文字より長くしても意味がないというのは誤りです。

于 2009-04-01T09:45:41.563 に答える
0

一時パスワードをユーザーのパスワードよりも強力にすることを心配しているようです...実際には、10文字のbase-64(または同様の句読点など)のようなものは解読が非常に難しく、はるかに強力になりますユーザーが生成するパスワードより....

于 2009-04-01T09:46:54.103 に答える