4

AES_ENCRYPT()とAES_DECRYPTを使用して患者データをEMRシステムに保存しようとしていますが、キーを保存する方法を考えていました。患者の記録に保存されているデータを復号化して読み取るには、許可されたユーザーがそのキーにアクセスできるようにする必要があります。キーを多くのユーザーと簡単に共有しながら、そのキーを安全に保つにはどうすればよいですか。任意の考えや例をいただければ幸いです。

4

1 に答える 1

7

これを行う標準的な方法は、患者ごとに「システム」キーを作成し、そのキーを使用してその患者のデータを暗号化することです。 そのキーを患者や他のユーザーと共有しないでください。

ユーザーがシステムに登録するときは、パスワードを使用してそのユーザーの「ユーザー」キーを作成します。(たとえば、ユーザーのパスワードのSHA-256ハッシュを取得します。) ユーザーのパスワードをシステムに保存しないでください。

次に、ユーザーが患者のデータへのアクセスを許可されたら、その患者のシステムキーを許可されたユーザーのキーで暗号化し、暗号化されたキーをユーザーのアカウントに保存します。ユーザーが追加の患者の記録にアクセスすることを許可されている場合は、各患者のシステムキーに対してこのプロセスを繰り返します。

最後に、許可されたユーザーが患者のデータにアクセスする場合、ユーザーは自分のパスワードを入力します。このパスワードは、患者のシステムキーを復号化するために使用され、次に、患者のデータを復号化するために使用されます。

ユーザーが自分のパスワードを変更したい場合は、そのアカウントに関連付けられている各システムキーを復号化してから、新しいパスワードを使用してそれらを再暗号化する必要があります。


免責事項:セキュリティは難しい*そして私は暗号学者ではありません。さらに、法律により、患者データを暗号化するか、特定の基準に従って保護することが義務付けられている場合があります。セキュリティシステムを実装する前に、専門家に相談してください。特に財務、医療、またはその他の重要な情報が関係する場合は、いかなる状況でも独自のセキュリティスキームを作成しないでください。

* BT、最高セキュリティ技術責任者、ブルース・シュナイアー

于 2012-04-11T00:50:53.260 に答える