我正在编写一个android密码管理器应用程序,我想将主密码存储在某个地方,但我不知道在哪里。我应该使用用户选择的硬编码密码对用户提供的主密码进行加密,然后将其存储到数据库中吗?还是我应该做别的事情?
最佳答案
您永远不要存储未加密的密码。
对于无法安全加密的密码(因为必须将解密 key 存储在某个地方),应只存储不可逆的哈希值。
这样,您可以在用户提供密码时将密码与哈希进行比较。如果匹配,则可以使用给定的密码解密存储的user:password对。
PS:不要忘了给哈希和please do it properly加盐。