加密模块hashlib

一个加密的模块

hashlib模块 -加密模块

  • hashlib.md5

    • 只能正向加密不能反向解密

    • 越复杂的算法需要计算的时间、空间成本均会增加

    • 最常用的就是md5算法

        #导入模块
        import hashlib
        
        #实例化md5加密对象
        #可以多向选择sha1加密
        md = hashlib.md5()
        #进行加密,加密对象必须是bytes类型
        md.update(b'alex')
        m = md.hexdigest()
        print(m)
        #结果
      
    • 可以进行密码的登陆验证

    • 可以进行文件的一致性验证

      • 校验远程服务器和本地下载文件的一致性
      • 校验本地两个文件的一致性
      • 校验两台机器上的两个文件检查两个文件是否相等
  • 加盐

    • 文件的校验不能加盐

    • 相当于双重加密

        import hashlib
      
        s = b'123456'
        
        #加盐,就是在创建算法类型的时候传一个bytes类型参数
        md = hashlib.md5(b'ly')
        md.update(s)
        print(md.hexdigest())
        #结果
        此时得到的结果不是存粹的创建密码对象
      
    • 动态加盐

  • 分批进行摘要

      import hashlib
      md5 = hashlib.md5()
      md5.update(b'al')
      md5.update(b'ex')
      print(md5.hexdigest())
      #结果
      这个结果和md5.update(b'alex')结果是一致的
    
posted @ 2018-09-15 10:53  小白的蟒蛇  阅读(109)  评论(0编辑  收藏  举报