0

現在、bCrypt を使用して、プロジェクトの将来のユーザーのパスワードを暗号化することを検討しています。

非常に強力に見えますが、ここに私の懸念があります-

  • Web サイトで、アカウントを作成します。サーバーはパスワードを bCrypt し、そのハッシュを保存します。test-->$2a$12$4PhCN62AmALB7e.Sv2w9w.AP/JZ28l.dZldU5iHyupY2w5wPz9o.u
  • パスワードを確認するには、 の戻り値BCrypt.Net.BCrypt.Verify("test", "$2a$12$4PhCN62AmALB7e.Sv2w9w.AP/JZ28l.dZldU5iHyupY2w5wPz9o.u")を確認して、一致していることを確認します。

クライアント側のアプリを使用してこの Web サーバーと同じデータを操作する場合、サーバーにその有効性を一致させるためにネットワーク経由でパスワードを送信する必要がありますか? クライアントにハッシュを要求させ、サーバーにそれをクライアントに送信させて、クライアントがハッシュを実行して検証できるようにすることは可能ですか?

4

1 に答える 1

3

SSL (例: https) を使用して、プレーンテキストのパスワードがネットワーク経由で送信されるのを防ぐことができます。パスワードは平文ですが、接続は安全で、サーバーとクライアントだけがその接続で情報をデコードできます。

于 2013-03-13T01:39:15.810 に答える