我正在为学校编码密码管理器,我想知道我应该改进或改变什么。 这是如何工作的:密码管理器安全
要保存主密码,我创建了一个文件,密码与PBKDF2 512bytes output
密码散列在SHA3-512
之上。使用随机128byte
盐和随机数的迭代(这是问题的重点)。 所有这些数据都保存在文件中,并使用伪随机生成器进行加密,该生成器从密码本身生成种子(这种方法更难获得盐)。
然后存储密码的文件使用AES 256
进行加密,盐由用户PC伪唯一标识符生成。
当用户选择密码时,要求是:最低10个字符,而不是成为100.000
最常用的密码列表(我在互联网上得到了这个名单的地方,可能已过时)
好吧,我有问题,它们是:PBKDF2
的当前标准迭代计数是多少? 是PBKDF2
输出字节长度重要吗?我的意思是更多的长度=更安全?
而且会更长的盐给我额外的安全性?
它保存在文件中的盐因此它是“可能”检索它,有没有更好的方法来“隐藏”它,而不是只是加扰字节?
re:迭代计数:我通常在野外看到5k-20k,但是非固定计数是更好的。也许把第一个字母的ascii值加到count中,这样像john the ripper这样的东西就有93倍的难度。 – dandavis