私の状況:
医療スタッフは、患者の機密データをWebブラウザ(!)に入力して、データベースに保存し、後で再度取得したいと考えています。
これらのデータは、医療スタッフ自身を除いて他人に見られることは許可されていません。これは、サーバーに転送する前に、秘密のトークンを使用して暗号化する必要があることを意味します。また、ITスタッフ(サーバー/データベースにアクセスできる)も他の誰も、シークレットトークンなしでそれを復号化できないようにする必要があることも意味します。(トークンが失われると、データにアクセスできなくなります。)
一度エクスポートしてデータアクセスを許可するすべてのブラウザにインポートするトークン(秘密鍵など)を除いて、クライアントマシンに追加のソフトウェアをインストールしないでください。
だから私の質問は:
ブラウザ間で簡単に交換できる(つまり、X.509証明書と同様にエクスポート/インポートされる)秘密のブラウザトークンを使用して、クライアント側でデータを暗号化/復号化する方法はありますか(JavaScriptを使用するなど)?
そうでない場合、どの代替ソリューションが可能でしょうか?条件1と2は必須であるため、必要に応じて条件3のみを変更できます。ただし、それでもクライアント側で必要なインストール作業は可能な限り少なくする必要があります。
編集:SSLは明らかにこの質問への答えの一部にすぎません!