我想用
生成一个40字节的随机密码k = ???
password = sha1(openssl_random_pseudo_bytes(k))
k的推荐值是什么,所以密码足够强大?
答案 0 :(得分:2)
SHA1输出20个字节,因此给它20个字节的随机输入就足够了。可以这样想:攻击者可以尝试猜测密码或尝试猜测SHA1输入。只要SHA1输入至少与输出一样长,他就可以更容易地输出输出,因此输入足够长。
但是,我想知道为什么你在那些随机字节上使用SHA1。 openssl_random_pseudo_bytes
应该已经为您提供了随机字节,您只需使用bin2hex
左右转换为十六进制。