好的,我试着创建一个小程序,为每个文本输入创建一个散列。你知道吗
第一个循环很好,它得到了正确的散列,但在那之后它只是继续编码其他东西,我不确定是什么。这意味着一个带有哈希的登录系统不能工作。你知道吗
有人能帮忙吗!!!!你知道吗
import hashlib
encoder = hashlib.md5()
while True:
OString = input("Input some text here >")
encoder.update(OString.encode())
hashedString = encoder.hexdigest()
print(hashedString)
Ostring = None
hashedString = None
结果:
Input some text here >leila
754f9968bf5f5f68d7dea029889b7415
Input some text here >leila
e0d1d4c285dda17ba6ca74a4dc85ebac
Input some text here >leila
419b5673f979911d3418472b105b6d3b
Input some text here >leila
71cf61a5ed5ebe751fdd1409928fe29d
Input some text here >leila
8149e3cc783fc400a7d26d63d5725536
Input some text here >leila
25c64d332128eb267f8d38f4140f19a3
解决方案如下:
实际上,您正在重新设置第一个值的大小,因为
encoder = hashlib.md5()
对象变量在while循环之外。你知道吗希望这有帮助。你知道吗
您每次都必须实例化新的md5编码器,因为您只需将一些字符串附加到旧字符串,并从它们的串联中获取哈希值:
相关问题 更多 >
编程相关推荐