我正在使用WTForms-Alchemy来定义模型对象中的表单。我将字段定义为密码:
password = db.Column(PasswordType(schemes=['pbkdf2_sha512']), nullable=True)
我将表单保存到PostgreSQL,我总是在数据库中使用错误的哈希。有趣的是,这种方法在之前使用MySQL的项目上运行良好。
我现在决定手动加密我的密码,手动调用pbkdf2_sha512.encrypt
和pbkdf2_sha512.verify
并正确存储哈希值。
我错过了配置参数吗?这可能是个错误吗?
答案 0 :(得分:1)
我不完全确定这里的问题是什么,但我想提一下,现在不推荐使用pbkdf2 - 如果您要存储用户密码哈希,最好使用bcrypt存储密码。 bcrypt是一种cpu硬散列算法,这使得对潜在攻击者的暴力行为更加困难。