3

私は、信じられないかもしれませんが、ユーザーがサインアップするために電子メール アドレスを提供する必要がない Web アプリケーションに取り組んでいます。これらの要件は変更できません。ユーザーは、標準の Web サイトと同様に、ID とパスワードを使用してシステムにログインします。私が直面している問題は、パスワードを忘れたユーザーに関係しています。彼らが新しいものを生成したい場合、どのように身元を確認できますか?

最初は、ユーザーに (5 つのリストから) セキュリティの質問を選択させ、回答を提供させるつもりでした。パスワードを忘れた場合は、ログイン ID とセキュリティの質問への回答を入力する必要があります。これらのタイプの質問 (母親の旧姓、出身地など) に対する答えは、一般的に取得するのがそれほど難しくないため、これは少し安全ではないように思えます。

だからここに私の質問のいくつかがあります:

  • セキュリティの質問は、この問題への最善のアプローチですか?
  • もしそうなら、最良の質問は何ですか?
  • ユーザーが回答を入力する必要がある質問の数は?
  • パスワードを忘れた場合のページに CAPTCHA を入力する必要はありますか?
  • ユーザーが独自の質問を生成する方がよいでしょうか?

この問題に関するヘルプ/コメント/文献は大歓迎です。

4

3 に答える 3

1

場所を思い出せませんが、知識ベースの認証でグーグル検索を行うと、Q&A認証が非常に弱いことがわかります。重要な問題の1つは、潜在的な回答と実際の回答のエントロピー(ランダム性の可能性)です。お気に入りの色を尋ねる場合、ほとんどのユーザーが選択する色のリストは実際にはごくわずかです。これは1ビットのエントロピーの価値があるかもしれません。次に、自分が育った都市など、2番目の質問をした場合、エントロピーがさらに1つか2つ得られる可能性があります(メキシコでは、3つの都市のそれぞれでこの回答が30%になる可能性があります)。

私が見た1つの見積もりは、8文字のパスワードと同等の強度を得るには、約26の質問が必要になるというものでした。

そうは言っても、ユーザーに連絡するために他のことをすることができるかもしれません。電子メールの代わりにテキストメッセージをユーザーに送信してみることができます-ユーザーは電話番号を登録しますか?ユーザーに証明書を自分のコンピューターに保存させ、パスワードのリセット要求と一緒にアップロードできるようにすることができます(この証明書がコンピューターに関連付けられていることを確認するために努力する必要があります)。サインアップ後、ユーザーが電子メールアドレスを送信できるようにすることができます。

幸運を!

于 2009-07-16T05:28:47.380 に答える
0

セキュリティの質問は、この問題に対する最善のアプローチですか?

他の認証手段(電子メールアドレス、OpenIDなど)を使用することはできないため、これが実際にできる最善の方法です。ただし、サインアッププロセスにはいつでも「パスワードヒント」を追加できます。

  • もしそうなら、最高の質問は何ですか?
  • ユーザーが独自の質問を生成する方が良いですか?

在庫の「最初の車」や「最初のペット」ではなく、ユーザーに自分の質問を書かせた方がはるかに簡単です。これは、(通常)ランダムに推測するのが非常に難しい質問/回答の組み合わせを提供し、パスワードと同じくらい秘密である可能性が高いため、優れたフェイルセーフです。

ユーザーが回答を入力するには、いくつの質問が必要ですか?

1つの質問/回答の組み合わせを許可します。

パスワードを忘れた場合のページにCAPTCHAを配置する必要がありますか?

ええと、特にボットからのブルートフォース攻撃から身を守るための試みが必要です。SOが使用するのと同じテクノロジーを使用します:reCAPTCHA

于 2009-07-13T20:02:53.777 に答える