第二题有点懵,哪位大佬能帮忙解答下,谢谢了
Topic source没事了,偷偷看了其他同学的答案[捂脸],发现self.salt可以通过db[username].selt获取,最近脑子有点短路。
第二题作业:
def login(username, password):
if username in db.keys():
user = db[username]
return user.password == get_md5(password + user.salt)
return False
原来salt在初始化时已经保存起来了,老糊涂了!不过这样简单优化后,效果是非常明显的,即使输入123456密码,计算出的摘要也不一样。
另外我上面的问题也写错了,这里看错了,看成register方法了
db = {
[username]:[hashlib.md5((password + self.salt + username + 'the-Salt').encode('utf-8')).hexdigest()]
}
- 1
greatzues
先提交第一题的作业:
第二题通过随机数加盐,那我怎么知道加的盐是什么,不知道盐的话,那么生成的摘要按道理会不一样。
通过这条语句获得的盐再和password相加传入user的数据库中,相当于数据库中存储的数据为
但我都不知道self.salt,怎么利用用户输入的密码计算出摘要? 想了一天都还没想通,哪位大佬能解答下[捂脸]