SHA-1
in的使用generate_password_hash
不易受到攻击,因为它仅用作PBKDF2哈希中的中间迭代步骤。
当您像PBKDF2中那样链接数以千计的哈希时,与仅凭偶然机会破解一个强密码的风险是无法区分的。
关于cryptography-dev邮件列表进行了进一步的讨论。
您正确地认为,与SHA-1一起使用时,HMAC的安全性仍然很好,无论您相信与否,HMAC-MD5都是安全的。
generate_password_hash接受
method参数以自定义哈希的生成方式。默认值为
pbkdf2:sha1。为PBKDF2传递另一种派生方法。
generate_password_hash(secret, method='pbkdf2:sha512')
您还可以将迭代次数从默认值150,000更改为更高的次数,但会降低哈希速度。
pbkdf2:sha1:200000。
只要对哈希和迭代进行了很好的调整,您对PBKDF2可能就可以了。或者,使用Passlib,它比Werkzeug支持更多的哈希方法。有关使用哪些哈希的讨论,请参见Passlib推荐的哈希。本示例说明如何将bcrypt与Passlib一起使用。
pip install passlib bcryptfrom passlib.context import CryptContextcrypt_context = CryptContext(schemes=['bcrypt_sha256'])crypt_context.hash(secret)
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)