Tag: 密码存储

使用pbkdf2的SALT和HASH

我正在使用以下方法从nodejs中的encryption库中创build一个腌制和散列的密码: crypto.randomBytes(size, [callback]) crypto.pbkdf2(password, salt, iterations, keylen, callback) 对于randomBytes调用(创buildSALT)我应该使用什么大小? 我听说过128位盐,也许高达256位。 它看起来像这个函数使用字节的大小,所以我可以假设大小为32(256位)就足够了? 对于pbkdf2调用,什么是很好的迭代次数,key(keylen)的长度是多less? 此外,对于存储,我已经看到了盐,长度,迭代和derviedkey存储在同一列的例子。 我正在使用一个例子来分隔4 :: ,即: salt::derivedKey::keyLength::iterations 这样做,我可以分开::以获得4个值,所以我可以根据提供的密码生成派生的密钥,看看它是否匹配。 这是存储这个的正确方法吗? 还是应该在结合这些价值观时多一些“欺骗”?