zoukankan      html  css  js  c++  java
  • hashlib模块--摘要算法

    算法介绍:

    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())
    

     

  • 相关阅读:
    19.JavaScript实现一定时长下点击次数
    18.JavaScript实现许愿墙效果
    17.JavaScript实现鼠标右键自定义菜单
    16.JavaScript用setTimeout函数做出计时效果
    15.JavaScript实现放大镜效果
    2-5 数组形状
    2-4 排序
    2-3 arrary数组的数值的计算
    2-2array结构
    2-1Numpy概述
  • 原文地址:https://www.cnblogs.com/52-qq/p/7382394.html
Copyright © 2011-2022 走看看