0

これが私が反対しているものです。

私は自分のサイトのパスワードで保護されたページと通信する iPhone 用のアプリを作成しています。アプリはパスワード保護を正常に通過し、ページからの応答を正常に取得できます。問題は、アプリからサイトにログインしようとすると拒否されることです。これは、サイトに送信する前にアプリで Bcrypt を使用してパスワードをハッシュし、次に で確認しているためだと思いますpassword_verify()。これはもちろん、パスワードのプレーン テキストとハッシュ化されたバージョンを取得しますが、2 つのハッシュ化を与えています。受け入れていない同じもののバージョン。

password_verify私の質問は次のとおりです。または他の関数を使用して 2 つの暗号化されたパスワードを比較することは可能ですか? そうでない場合、アプリからプレーンテキストでパスワードを送信するのに十分安全ですか?

事前にみんなに感謝します!

4

1 に答える 1

2

password_verify またはその他の関数を使用して 2 つの暗号化されたパスワードを比較することは可能ですか?

いいえ。プレーンテキストのパスワードと、入力としてソルトが埋め込まれた以前にハッシュされた形式のパスワードpassword_verify が必要であり、それを回避する方法はありません。アルゴリズムは、同じハッシュを生成するためにソルトが再度必要になるようなものであるため、他の唯一のオプションは、ハッシュ/ソルトをクライアントに転送してそこでアルゴリズムを再現することです。しかし、信頼できないクライアントではなく、サーバーでパスワードの確認を行いたいので、それは無意味です。

そうでない場合、アプリからプレーンテキストでパスワードを送信するのに十分安全ですか?

もちろん、通信チャネルが安全である限り、つまり SSL 接続がある限り.

于 2013-09-30T14:51:54.653 に答える