加密患者数据

4 encryption privacy key-management multi-user

我将使用AES_ENCRYPT()和AES_DECRYPT将患者数据存储在EMR系统中,我想知道如何存储密钥.我需要能够允许授权用户访问该密钥,以便解密和读取存储在患者记录中的数据.如何轻松与许多用户共享密钥,但保持密钥安全.任何想法或例子都表示赞赏.

Ada*_*iss 6

执行此操作的标准方法是为每位患者创建"系统"密钥,并使用该密钥加密该患者的数据. 不要与患者或任何用户共享该密钥.

当用户注册系统时,使用密码为该用户创建"用户"密钥.(例如,使用用户密码的SHA-256哈希值.) 不要将用户密码存储在系统上.

然后,当用户被授权访问患者的数据时,用授权用户的密钥加密该患者的系统密钥,并将加密的密钥保存在用户的帐户中.如果用户有权访问其他患者的记录,请对每个患者的系统密钥重复此过程.

最后,当授权用户想要访问患者的数据时,他/她输入他或她自己的密码,该密码用于解密患者的系统密钥,该密钥又用于解密患者的数据.

当用户想要更改其密码时,您必须解密与该帐户关联的每个系统密钥,然后使用新密码对其进行重新加密.


免责声明:安全性很难*我不是密码学家.此外,法律可能要求根据某些标准对患者数据进行加密和保护.在实施任何安全系统之前,请咨询专家,在任何情况下都不要创建自己的安全方案,尤其是涉及财务,医疗或其他重要信息时.

*英国电信首席安全技术官Bruce Schneier