python创建一个字典、保存用户名和密码_在字典中存储用户名和密码?

你不。。。你把一个散列保存到字典中(哈希是一种简单的不可逆编码)

例如:

md5("password") == '5f4dcc3b5aa765d61d8327deb882cf99'

然而,没有真正的方法从那回到密码

nothing_does_this('5f4dcc3b5aa765d61d8327deb882cf99') == "password"

(不完全正确。。。但离概念足够近)import hashlib

def create_users()

users = {}

while True:

username = raw_input("Enter Username:")

password = raw_input("Enter Password:")

users[username] = hashlib.md5(password).hexdigest()

if raw_input("continue?")[0].lower() != "y":

return users

def login(userdict):

username = raw_input("Username:")

password = raw_input("Password:")

return userdict.get(username,None) == hashlib.md5(password).hexdigest()

users = create_users()

if login(users):

print "Double Winning!!!"

else:

print "You Lose Sucka!!!"

正如所指出的,md5不是一个非常安全的哈希,有很多更好的哈希使用sha256仍然是相当好的,但我认为,bcrypt甚至更好(对于一些更好的定义)。。。但是md5是一个简单的哈希,有助于理解它们是什么。。在

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值