Python中日期与加密相关模块

日期相关的模块

  • time:

常见方法: ‘altzone’, ‘asctime’, ‘ctime’, ‘daylight’, ‘get_clock_info’,
‘gmtime’, ‘localtime’, ‘mktime’, ‘monotonic’, ‘monotonic_ns’,
‘perf_counter’, ‘perf_counter_ns’, ‘process_time’, ‘process_time_ns’,
‘sleep’, ‘strftime’, ‘strptime’, ‘struct_time’, ‘thread_time’,
‘thread_time_ns’, ‘time’, ‘time_ns’, ‘timezone’, ‘tzname’

  • datetime:

    python后期提供,补充time模块
    主要特点,就是将时间和日期分离处理

    time模块和datetime模块是可以相互转换使用的,可以通过格式化时间的两个函数实现互转

  • calendar:

    打印需要的年份的日历

加密模块学习:
加密

凯撒加密:就是简单的挪位加密
字符串对象提供了对应操作:
s.translate(s.maketrans({自定义参照表}))

加密的分类:

    |-- 不可逆加密	hash加密
	主要用于信息摘要,md5、sha1、sha256

	|-- 可逆加密
	|-- 对称加密	
		加密和解密使用同一个秘钥
		des
    |-- 不对称加密
		加密和解密使用的不同的秘钥(使用的一对秘钥(公钥、私钥))
		RSA算法

加密的相关模块

  • hashlib

    主要提供hash加密相关的加密算法
    md5、sha256……

    文件对比、数字摘要等等功能

    如果要进行密码加密等操作,建议添加复杂的盐值混淆
    特别推荐使用hmac完成密码加密等操作

  • hmac:

    hash加密相关的加密算法,同时也配合使用对称加密

import hashlib


users = []
user_passwd = []##数据库中获取到的是加密过的信息,不知道加密过程,也无法获取真实密码。

def print_print():
    print("----------------------------------")


def user_logon(user,passwd):
    if users.count(user) != 0:
        print("---------该用户名已存在!")
    else:
        users.append(user)##用户列表
        md5 =hashlib.md5(passwd.encode("utf-8"))##进行mad5加密
        md5.update("hjs".encode("utf-8"))##更新密码加入特定的加密内容“hjs”
        passwd = md5.hexdigest()##将其转换为16进制
        dir = {user:passwd}
        user_passwd.append(dir)
        print(dir)

def user_login(user,passwd):
    if users.count(user) == 0:
        print("用户不存在")
    else:
        md5 =hashlib.md5(passwd.encode("utf-8"))
        md5.update("hjs".encode("utf-8"))
        passwd = md5.hexdigest()
        dir = {user:passwd}
        if user_passwd.count(dir) == 0:
            print("密码错误!")
        else:
            print("登录成功!")
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值