没有SHA-1的werkzeug.security generate_password_hash替代方法

没有SHA-1的werkzeug.security generate_password_hash替代方法,第1张

没有SHA-1的werkzeug.security generate_password_hash替代方法

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)


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5631218.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-16
下一篇 2022-12-16

发表评论

登录后才能评论

评论列表(0条)

保存