自 2010 年推出以来,我一直在使用开箱即用的 jBCrypt 0.3 版。我使用默认的 getsalt() 方法,将“log_rounds”的数量设置为 10。鉴于密码破解硬件和方法,这个值是否仍然适合作为默认值,或者我应该看一些更高的值。
来自javadoc的信息...
String pw_hash = BCrypt_v03.hashpw(plain_password, BCrypt_v03.gensalt());
String strong_salt = BCrypt_v03.gensalt(10)
String stronger_salt = BCrypt_v03.gensalt(12)
工作量呈指数增长(2**log_rounds),因此每次增量都是工作量的两倍。默认 log_rounds 为 10,有效范围为 4 到 31。