我想用SCrypto散列函数对密码进行散列,但如果我使用默认参数,我得到的散列持续时间约为5-6秒。如何设置参数,使持续时间小于1秒(更好的250毫秒)
SCrypt.scrypt(通过,盐,n,r,p,长度)
默认加密(pass,salt,16384,8,1,length)
发布于 2017-07-04 07:23:26
答案将高度依赖于您的设备。所用的时间将大致与N* r成正比,所以如果当前需要6秒,N/8(因为它是2的幂)应该会使您不到1秒,而N/ 32应该会使您达到约250毫秒。
但是要小心,因为如此小的值会降低函数的整体安全性,甚至可能比像bcrypt:http://blog.ircmaxell.com/2014/03/why-i-dont-recommend-scrypt.html这样久经考验的方法更糟糕。
还要注意,建议不要将Scrypt用作密码散列函数(用于存储),而应将其用作密钥派生函数(它的设计初衷),其中不会存储生成的密钥。
https://stackoverflow.com/questions/44845465
复制相似问题