算法介绍:

Python的hashlib提供了常见的摘要算法;MD5,SHA()等。

摘要算法,又称哈希算法,散列算法。通过一个函数,吧任意长度的字符串转换为固定长度的字符串(16进制)

摘要算法就是通过摘要函数f()对任意长度的数据data计算出固定长度的摘要digest,母的就是为了防止原始数据被篡改

摘要算法是一个单向函数,计算data容易,反向计算data却是非常困难,而且对于原始数据做出一个bit的修改都会导致计算出的摘要完全不同

import hashlib
md5 = hashlib.md5()
md5.update('zhang'.encode('utf-8'))
print(md5.hexdigest())

 计算结果:d0cd2693b3506677e4c55e91d6365bff


 

应用:保存在数据库中的密码文件

黑客破解密码:黑客手机都有一份常见密码的MD5反推表,通过和数据库文件对比可以轻易的知道你的用户名密码;

为了防止被黑客篡改,此时就应‘加盐’

while True:
    '''对输入的密码加密'''
    import hashlib
    user = input('username:')
    passwd = input('password:')
    md5 = hashlib.md5(user.encode('utf-8'))    #加盐
    md5.update(passwd.encode('utf-8'))
    print(md5.hexdigest())

 

 

相关文章:

  • 2022-12-23
  • 2021-08-29
猜你喜欢
  • 2021-08-29
  • 2021-06-25
  • 2022-02-02
  • 2022-12-23
  • 2022-12-23
  • 2021-11-11
  • 2021-11-13
相关资源
相似解决方案