【发布时间】:2015-02-25 17:19:13
【问题描述】:
我正在尝试构建一个将用户相关信息客户端存储在本地存储中的应用程序。我正在使用用户提供的密码加密该数据。
如果我实施忘记密码并生成新密码,我如何取回用旧密码加密的数据。
我正在使用 sjcl 来加密数据。有没有什么技术可以用2个密码加密数据??
对于这种情况,理想的模式是什么??
【问题讨论】:
标签: security cryptography sjcl
我正在尝试构建一个将用户相关信息客户端存储在本地存储中的应用程序。我正在使用用户提供的密码加密该数据。
如果我实施忘记密码并生成新密码,我如何取回用旧密码加密的数据。
我正在使用 sjcl 来加密数据。有没有什么技术可以用2个密码加密数据??
对于这种情况,理想的模式是什么??
【问题讨论】:
标签: security cryptography sjcl
这方面的传统方法称为“密钥托管”。基本上,这意味着将密钥副本提供给您信任的人。
如果您不信任任何人,那么密钥托管不适合您。您唯一的选择是确保您不会丢失唯一的密钥。这也是一种相当普遍的方法。许多宣传安全存储的产品都强调了这一点。例如,请参阅 Bruce Schneier 的密码管理器“PasswordSafe”和 LaCie 以安全为中心的 DropBox 替代品“Wuala”。
有一些公认的加密数据的方法,以便可以使用多个密码中的任何一个对其进行解密。但我不明白这有什么帮助。一个密码记不住,怎么记住两个?
任何其他假装避免密钥托管但仍然提供后门以在您丢失密钥时访问您的数据的方法都是不安全的,没有人应该信任它。
【讨论】: