当前位置: 首页 > 工具软件 > hashlib++ > 使用案例 >

python中的hashlib模块

吴松
2023-12-01

1 hashlib模块的作用:

hashlib是一个提供字符串加密功能的模块,包含MD5和SHA的算法,MD5和SHA是摘要算法,摘要算法是什么呢:

也可以称为哈希算法,离散算法。通过一个函数将任意长度的数据转化为一个长度固定的数据串,摘要函数是一个单向函数,计算f(data)很容易,但是通过digest反推data非常困难,对data做任意修改,计算出的摘要完全不相同。

2 以MD5算法为例使用hashlib:

md5算法特点:

  • 该算法不可逆
  • 不同字符串通过这个算法计算得到的密文总不相同
  • 相同算法以及相同的字符串获得的密文结果总是相同

用法实例:

import hashlib
new_md5=hashlib.md5()
new_md5.update('guo')
ret=new_md5.hexdigest()

# ret 为加密后的字符串

函数形式实现加密操作:

import hashlib
def get_ret(s):
    new_md5=hashlib.md5()
    new_md5.update(s)
    ret=new_md5.hexdigest()
    return ret

get_ret('guo')

用户验证登录:

import hashlib
def get_ret(s)
    new_md5=hashlib.md5()
    new_md5.update(s)
    ret = new_md5.hexdigest()
    return ret
username = input('username:')
password = input('password:')
with open('userinfo') as f:
    for line in f:
        usr, pwd = line.strip().split('|')
        if username == usr and get_ret(password) == pwd:
            print '登陆成功'
            break
        else:
            print('登录失败')

 

 

 

 

 

 

 

 

 

 

 

 

 类似资料: