如何解决bcrypt.checkpw 错误 unicode 对象必须被编码
我认为我的代码可以正常运行,但是当我从数据库中提取它时,我收到此错误“bcrypt.checkpw 错误 unicode 对象必须编码”
这是我的代码。这只是对数据库的基本提交,然后将它们拉出并使用 bcrypt 检查...
import sqlite3 as sl
def db_input(query):
connection = sl.connect("pword.db")
cursor = connection.cursor()
cursor.execute(query)
connection.commit()
connection.close()
def get_details():
name='ls'
password=b'hello'
hashed=bcrypt.hashpw(password,bcrypt.gensalt())
return name,hashed
def commit():
inputs=get_details()
query=f' insert into passwords(name,pword) values ("{inputs[0]}","{inputs[1]}")'
db_input(query)
def login():
name='ls'
password='hello'.encode()
connection = sl.connect("pword.db")
cursor = connection.cursor()
query=f"select pword from passwords where name ='{name}'"
cursor.execute(query)
result=cursor.fetchall()
connection.close()
print(result[0][0])
if bcrypt.checkpw(password,result[0][0]):
print('yes')
else: print('no')
commit()
login() ```
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。