WTForms存储错误的密码哈希

时间:2014-03-27 02:06:34

标签: python flask sqlalchemy flask-wtforms passlib

我正在使用WTForms-Alchemy来定义模型对象中的表单。我将字段定义为密码:

password = db.Column(PasswordType(schemes=['pbkdf2_sha512']), nullable=True)

我将表单保存到PostgreSQL,我总是在数据库中使用错误的哈希。有趣的是,这种方法在之前使用MySQL的项目上运行良好。

我现在决定手动加密我的密码,手动调用pbkdf2_sha512.encryptpbkdf2_sha512.verify并正确存储哈希值。

我错过了配置参数吗?这可能是个错误吗?

1 个答案:

答案 0 :(得分:1)

我不完全确定这里的问题是什么,但我想提一下,现在不推荐使用pbkdf2 - 如果您要存储用户密码哈希,最好使用bcrypt存储密码。 bcrypt是一种cpu硬散列算法,这使得对潜在攻击者的暴力行为更加困难。