ユーザーはお互いにメッセージを送信し、rails アプリを介して他のユーザーの個人情報を公開しています。
目標は、メッセージを保護することです。そのため、システム管理者もデータベース リークもデータを危険にさらすことはできません。受信者キーによる Javascript クライアント側暗号化、暗号化されたデータはデータベースに保存され、受信者側で復号化されます。キーはシステムに保存されません。
理にかなっていますか?解決策はありますか?どうもありがとう!
更新: 非対称暗号化を意味します。ユーザーごとに 2 つの鍵: 暗号化用に 1 つの公開鍵、復号化用に 1 つの秘密鍵。そして、アプリケーション自体のパスワード。ユーザーは自分のパスワードを使用してログインし、メッセージを作成します。このメッセージは、クライアント側で受信者の公開鍵 (システムに保存) で暗号化され、データベースに保存されます。受信者はパスワードを使用してログインし、秘密鍵を入力してメッセージをデコードします。復号化もクライアント側で行われ、秘密鍵はサーバーに送信されません。