python中的hashlib模块使用实例
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('登录失败')主要的应用场景呢,就是我们的密码的加密和明文的加密,按照一定的约定去形成我们的加密的方式即可,有些时候为了避免太过于简单的加密,我们会约定一个私钥,增加加密的复杂性。
到此这篇关于python中的hashlib模块使用实例的文章就介绍到这了,更多相关python的hashlib模块内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!
相关文章
对python 数据处理中的LabelEncoder 和 OneHotEncoder详解
今天小编就为大家分享一篇对python 数据处理中的LabelEncoder 和 OneHotEncoder详解,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧2018-07-07
在python中计算ssim的方法(与Matlab结果一致)
这篇文章主要介绍了在python中计算ssim的方法(与Matlab结果一致),本文通过实例代码给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下2019-12-12
详解Python中@staticmethod和@classmethod区别及使用示例代码
这篇文章主要介绍了详解Python中@staticmethod和@classmethod区别及使用示例代码,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧2020-12-12
numpy中的随机打乱数据方法np.random.shuffle解读
这篇文章主要介绍了numpy中的随机打乱数据方法np.random.shuffle解读,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教2023-05-05


最新评论