我的任务是为我们的软件添加备份功能。此备份功能应将客户的数据库存储在外部存储器上。此功能的要求之一是备份应加密。这种加密的目的是,当有人留下带有备份的 USB 驱动器时,客户数据库相对安全。这些并不是最严格的安全要求,因此备份和加密功能很容易实现,但真正的麻烦是加密/解密备份需要密钥。我不确定我们应该如何管理客户密钥。
- 客户对 IT 一无所知
- 在软件的控制面板中输入加密密钥是一个很大的障碍。
如果密钥可以从某些东西中派生出来,那就太好了。例如来自计算机的硬件。但是,如果他们的计算机发生故障并需要更换,这将使备份变得无用。这种派生密钥的安全性也令人怀疑。
- 在任何情况下,客户绝对不应该是负责生成或保管密钥的人
他们肯定会忘记它,所以钥匙应该来自我们或电脑
- 它希望只有客户可以轻松访问该数据,但我看不出我们如何既可以为客户管理密钥,又不知道密钥。
有人知道为客户存储密钥的(标准化)解决方案吗?最好是尽量减少任何行政麻烦的东西?