クロームエクステンションを構築しています。その機能の1つは、サーバーに連絡してメッセージを保存することです。知っているユーザーだけがそれを行うことができます。クロムエクステンションとサーバー間のセキュリティ保護された通信
私の問題は、私がやっていることが安全ではないということです。私はユーザー名と暗号化されたパスワードを格納しているサーバー上のデータベースを持っています。
私のサーバにメッセージを送信するには、ユーザは毎回自分のパスワードを書き留めてください。拡張子はそれを記憶しません。 XMLHttpRequestを使用してサーバーに接続する場合は、2つの選択肢があります。
myServerDomain + '?message=' + myMessage + '&user=' + myUserName + '&password=' + myPassword
をそして、それが良いものであるかどうかを確認するために私のサーバー上でパスワードを暗号化: 私は送ることができます。
それとも私が送ることができます:
myServerDomain + '?message=' + myMessage + '&user=' + myUserName + '&password=' + myPasswordEncrypted
を直接保存されたものと一致してmyPasswordEncrypted場合は私のサーバー上で確認してください。
しかし両方の方法で、私はユーザーのコンピュータにアクセスし、googleのchromeのウィンドウをチェックしてからコンソールに行き、myPasswordEncryptedまたはmyPasswordを取得して自分の変更した要求を送信するネットワーク要求に行く必要があります。
どうすれば保護できますか?
パスワードを暗号化せず、塩でハッシュして繰り返し、100msの時間を達成します。 password_hash、PBKDF2、Bcryptなどの関数を使用します。 OWASP(オープンWebアプリケーションセキュリティプロジェクト)[パスワード保存チートシート](https://www.owasp.org/index.php/Password_Storage_Cheat_Sheet#Leverage_an_adaptive_one-way_function)を参照してください。 – zaph