#!/usr/bin/env python3
# -*- coding: utf-8 -*-
#MD5
import hashlib,random
#加密:
def get_md5(s):
return hashlib.md5(s.encode('utf-8')).hexdigest()
#构建User类
class User(object):
def __init__(self,name,password):
self.name = name
self.salt = ''.join([chr(random.randint(48, 122)) for i in range(20)])
self.password = get_md5(password + self.salt)
#存储用户数据
dbUser = {}
#注册
def register(name,password):
if name not in dbUser.keys():
dbUser[name] = User(name,password)
return True
else:
return False
#登录
def login(name,password):
if name in dbUser.keys():
user = dbUser[name]
if user.password == get_md5(password + user.salt):
return True
else:
return False
return True
else:
return False
#测试
print('注册:',register('michael', '123456'))
print('注册:',register('bob', 'abc999'))
print('注册:',register('bob', 'alice2008'))
print('登录:',login('michael', '123456'))
print('登录:',login('michael', '1234561'))
print('登录:',login('michael1', '1234561'))
print('登录:',login('bob', 'abc999'))
测试结果: