我想生成一个加盐密码哈希并将其存储在名为 users 的 MongoDB 集合中,如下所示:
users_doc = {
"username": "James",
"password": "<salted_hash_password>"
}
我不确定如何使用 Bcrypt 生成散列密码,然后当我登录我的 flask 应用程序时,能够检查散列是否与存储在 MongoDB 中的散列密码匹配。
最佳答案
我不知道你是如何使用 mongodb 来获取数据的,但是如果你想对 pass 进行哈希处理,很简单:
from flask import Flask
from flask.ext.bcrypt import Bcrypt
app = Flask(__name__)
bcrypt = Bcrypt(app)
# Your code here...
users_doc = {
"username": "james",
"password": bcrypt.generate_password_hash(password)
}
然后如果你想检查密码,你可以使用check_password_hash()
功能:
bcrypt.check_password_hash(users_doc["password"], request.form["password"]) # Just an example of how you could use it.
关于python - 使用 python/bcrypt 将密码保存为用户集合中的 mongodb 中的加盐哈希,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27943258/