Python 如何将密码转换为哈希值?
我正在尝试为我的项目创建一个登录系统,我需要对用户密码使用哈希,我不确定如何对变量名进行哈希并将其转换为字节,以给出密码的十六进制结果 尝试使用:Python 如何将密码转换为哈希值?,python,python-3.x,Python,Python 3.x,我正在尝试为我的项目创建一个登录系统,我需要对用户密码使用哈希,我不确定如何对变量名进行哈希并将其转换为字节,以给出密码的十六进制结果 尝试使用: hash_object = hashlib.md5(b(password)) 以及: 代码: import hashlib user = {} username = input("What is your username? ") password = input("What is your password? ") hash_object
hash_object = hashlib.md5(b(password))
以及:
代码:
import hashlib
user = {}
username = input("What is your username? ")
password = input("What is your password? ")
hash_object = hashlib.md5((password))
print(hash_object.hexdigest())
Traceback (most recent call last):
File "E:\loginsystem.py", line 8, in <module>
hash_object = hashlib.md5((password))
TypeError: Unicode-objects must be encoded before hashing
错误:
import hashlib
user = {}
username = input("What is your username? ")
password = input("What is your password? ")
hash_object = hashlib.md5((password))
print(hash_object.hexdigest())
Traceback (most recent call last):
File "E:\loginsystem.py", line 8, in <module>
hash_object = hashlib.md5((password))
TypeError: Unicode-objects must be encoded before hashing
回溯(最近一次呼叫最后一次):
文件“E:\loginsystem.py”,第8行,在
hash_object=hashlib.md5((密码))
TypeError:在散列之前必须对Unicode对象进行编码
使用.Encode
方法对密码字符串进行编码
import hashlib
user = {}
username = input("What is your username? ")
password = input("What is your password? ")
hash_object = hashlib.md5(passsword.encode('utf8'))
print(hash_object.hexdigest())
我推荐这条很棒的线索,它可能会解决一些问题:
另外-不要使用md5散列密码。请参阅此处:以获得更好的建议。如果您只是在学习安全性-很好。但是,如果你打算向公共互联网/实际用户发布某个内容,那么就不要进行自己的身份验证-将其交给专家。因此,它的utf8权限TTT LOL感谢您的帮助,我尝试过,但出于某种原因,此错误消息会弹出回显(上次调用):文件“E:/hash\u function\u example.py”,第8行,在hash_object=hashlib.md5(password.encode('uft-8'))中,LookupError:未知编码:uft-8非常感谢您对我的MANNo问题的关注,很高兴提供帮助!