Python使用哈希算法、加解密算法

__Author__ = 'VictoryHan'
__Date__ = '2022-09-20'
'''
哈希函数
哈希,hash
哈希函数可以把任意长度的数据(字节串)【源数据】计算出一个为固定长度的结果数据【哈希值】
哈希函数有好几种,对应不同的算法,比如MD5、SHA1、SHA224、SHA256、SHA384、SHA512
哈希计算的特点:
1)、相同的源数据,哈希算法相同计算出来的哈希值就一定相同。
2)、不管源数据有多大,哈希算法相同计算出来的哈希值长度就一样长。
基于以上两点哈希值常被用来验证文件是否有改动。
算法  结果计算长度
MD5	16字节
SHA1	20字节
SHA224	28字节
SHA256	32字节
SHA384	48字节
SHA512	64字节
3)、算法不可逆,即不能通过哈希值反过来计算出源数据
4)、不同的源数据使用同样的哈希算法可能会产生相同的哈希值,这种现象被称为碰撞率(collision rate)
ps:各种哈希算法,计算的结果长度越长,碰撞率越低,通常耗费的计算时长也越长。即使是 MD5 算法, 碰撞率也 非常小,小到几乎可以忽略不计。大约是 1.47*10的负29次方
'''
#python计算哈希值
#hashlib官方文档:https://docs.python.org/3/library/hashlib.html
'''
哈希算法加盐(以下为个人表述)
所谓加盐,就是向需要加密的内容里额外添加一些唯一的内容,使破解难度大大增加
比如,当用户首次提供密码时(通常是注册时),由系统自动往这个密码里撒一些“盐”,然后再加密。
而当用户登录时,系统为用户提供的代码撒上同样的“盐”,然后加密&#x

你可能感兴趣的:(哈希算法,python)