欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

python中MD5的demo

程序员文章站 2022-03-15 12:36:36
...
import sys
import hashlib

class user(object):
	# 类比数据库
    db = dict()
    
    # 根据用户的登录名和口令,生成更安全的口令
    def register(self,username,password):
        if username in self.db:
            print 'This username %s is already exist!' % username
            # 终止程序,跟java类似
            sys.exit(0)
        # 用户名 没有被注册  pasword+username+盐 来生成复杂的密码
        realPassword=password+username+'The-Salt'
        md5=hashlib.md5()
        md5.update(realPassword)
        resultPassword=md5.hexdigest()
        self.db.setdefault(username,resultPassword)
        print 'Register Success,%s' % username

    # 验证用户登录的函数
    def login(self,username, password):
        for k, v in self.db.items():
            if username == k:
                md5 = hashlib.md5()
                md5.update(password+username+'The-Salt')
                pw = md5.hexdigest()
                if pw == v:
                    return True
        return False


if __name__ == '__main__':
    u=user()
    u.register('Caren','123456')
    flag=u.login('Caren','123456')
    if flag:
        print '登录成功!'
    else:
        print '用户名或密码不正确!'
    print u.db
相关标签: demo