#coding:gbk
import hashlib, randomdb = {}
#注册
def register(username, password):db[username] = User(username, password)
#加密
def get_md5(s):return hashlib.md5(s.encode('utf-8')).hexdigest()class User(object):def __init__(self, username, password):self.username = usernameself.salt = ''.join([chr(random.randint(48, 122)) for i in range(20)])self.password = get_md5(password+username+self.salt)
#登陆
def login(username, password):user = db[username]if user.password == get_md5(password+username+user.salt):print('正确')else:print('密码错误')register('bob', '12345')
register('boc', '123456')login('boc', '123456')
#coding:gbk
import hmac, randomdb = {}
def get_md5(ke, password):return hmac.new(ke.encode('utf-8'), password.encode('utf-8'), digestmod='MD5').hexdigest()class User:def __init__(self, username, password):self.username = usernameself.key = ''.join([chr(random.randint(48, 122)) for i in range(20)]) #运行20次self.password = get_md5(self.key, password)def register(username, password):db[username] = User(username, password)s = db[username]print(s.password)def login(username, password):user = db[username]if user.password == get_md5(user.key, password):print('允许登陆')else:print('密码错误')register('bob', '12345')
register('boc', '123456')login('bob', '12345')
login('boc', '123456')

hashlib hamc相关推荐

  1. (常用)configparser,hashlib,hamc模块

    configparser模块 #专门解析my.ini这种形式的文件(cnf) import configparser   config=configparser.ConfigParser()   co ...

  2. Python hashlib库和hamc库

    import hashlib import hmac#这两个模块是用来进行数据加密 #hashlib模块里主要支持两个算法: md5 和 sha 加密 #加密方式:单向加密(md5和sha):只有加密 ...

  3. Python之数据加密与解密(hashlib、hmac、random、base64、pycrypto)--转载

    本文内容 数据加密概述 Python中实现数据加密的模块简介 hashlib与hmac模块介绍 random与secrets模块介绍 base64模块介绍 pycrypto模块介绍 总结 参考文档 提 ...

  4. python——加解密hashlib/hmac/random/secrets/base64/pycrypto

    目录 一.数据加密概述 1. 网络数据传输面临的威胁 2. 相应的解决方案 二.Python中实现数据加密的模块简介 1. Python内置的加密模块演化过程 2. 相关名词解释 3. 本文要讲解的P ...

  5. Python数据加密与解密相关操作(hashlib、hmac、random、base64、pycrypto)

    本文内容 数据加密概述 Python中实现数据加密的模块简介 hashlib与hmac模块介绍 random与secrets模块介绍 base64模块介绍 pycrypto模块介绍 总结 参考文档 提 ...

  6. Python数据加密,解密的相关操作(hashlib、hmac、random、base64、pycrypto)

    本文内容 数据加密概述 Python中实现数据加密的模块简介 hashlib与hmac模块介绍 random与secrets模块介绍 base64模块介绍 pycrypto模块介绍 总结 参考文档 提 ...

  7. Python之数据加密与解密及相关操作(hashlib、hmac、random、base64、pycrypto)

    本文内容 数据加密概述 Python中实现数据加密的模块简介 hashlib与hmac模块介绍 random与secrets模块介绍 base64模块介绍 pycrypto模块介绍 总结 参考文档 提 ...

  8. 网络编程进阶---- hamc模块 socketserver模块验证合法性 两者进行通信连接

    我们在工作中经常遇到,你公司内的某一台电脑要去访问你的服务器或者一个服务端电脑,那么你是让每一台都进行连接吗?  那不可能的  你肯定要进行限定的 验证客户端链接的合法性: hamc模块 hamc也是 ...

  9. 远程执行模块和黏包 socketserve hamc模块验证合法性

    一.远程执行模块:subprocess 能执行操作系统的命令的功能 ret=subprocess.Popen("dir", #要执行的命令 shell=True, # 表示要执行的 ...

最新文章

  1. Kafka 安装及快速入门
  2. 专访1药网技术副总裁黄哲铿:揭秘技术跨界管理之道
  3. 基于struts2,hibernate的小javaweb项目
  4. 20145317《网络对抗》shellcode注入Return-to-libc攻击深入
  5. Golang结构体struct的使用(结构体嵌套, 匿名结构体等)
  6. 数据结构与算法分析——引论
  7. Postman:Postman简介、安装、入门使用方法详细攻略
  8. Oracle基本概念与数据导入
  9. python新版下载安装_各种版本的Python下载安装教程
  10. 起名与选择器~(总结类、持续更新系列)
  11. Java基础教程:JavaArrays工具类
  12. 《HarmonyOS开发 - 小凌派-RK2206开发笔记》第2章 源码编译与固件下载
  13. oracle安装搜狗输入法教程,Ubuntu12.04安装搜狗拼音输入法
  14. linux获取cpu使用率,linux获取cpu使用率
  15. 不懂zencart该如何找出路-新手soho建站指南
  16. 思科cisoc 路由器IKEv2使用map配置隧道
  17. 形式语言与自动机 Part.6 图灵机
  18. java数字转罗马数字
  19. 三层交换机与单臂路由的优缺点
  20. Python模块之Pandas 格式化数据

热门文章

  1. springJDBC报错NullPointException 解决问题记录
  2. 【Pycharm教程】代码调试、git操作、连接远程服务器
  3. C++中为什么str=new char[strlen(s)+1];中要加1
  4. LTC逆袭活跃地址一周增长84! ETH、BTC、BCH每秒交易均呈负增长! 以太坊网络传播时间再缩短| 数据周榜...
  5. 《UNIX网络编程》配置unp.h头文件
  6. 重新认识java(十一)---- java中的数组
  7. 解决Required request body is missing:....
  8. 基于Delphi7openGauss2.0开发社区信息管理系统-设计文档
  9. 零基础编程——块语言编程游戏攻略之动画篇
  10. 数据结构与算法——左程云06