PHP
安全な暗号化通信のためにプライベートメッセージシステムをコーディングしています。
ユーザーがアカウントを登録するたびに、を使用して新しいRSA秘密鍵を作成し、ユーザーのパスワードを使用してphpseclib
暗号化しAES
ます。このパスワードは、データベースにハッシュ化およびソルト化されて安全に保存されます。
ユーザーが自分のパスワードでログインするたびに、秘密鍵のロックを解除し、その場で維持する必要があります。
このスクリプトは、SSL接続でのみ実行することを目的としています。
問題は、ユーザーのセッションで暗号化されていないバージョンの秘密鍵を維持して、ページが更新されるたびにパスワードを挿入しなくても、ユーザーがすべてのメッセージを読み取ったり、新しいメッセージを書き込んだりできるようにする必要があることです。
PHPセッションはサーバーに保存されたままであり、侵害される可能性があるため、PHPセッションへの保存は安全なソリューションではありません。
Cookieは簡単に盗まれる可能性があるため、Cookieに保存することは適切な解決策ではありません(ただし、このようにして、ユーザーの運命を自分の手に委ねます)。
PHP変数(Sessionではなく)でキーを維持し、ページを更新せずにajaxを使用してメッセージを取得および書き込みすることは、ajaxで可能ですか?またはより良い解決策はありますか?
前もって感謝します。