zoukankan      html  css  js  c++  java
  • hashlib模块 hash算法

    # hashlib模块 hash算法
    # 用于加密相关的操作,3.x里代替了md5模块和sha模块,主要提供 SHA1, SHA224, SHA256(常用), SHA384, SHA512 ,MD5 算法
    import hashlib
    
    # md5 算法,不能反解
    obj = hashlib.md5()
    
    obj.update('admin'.encode('utf-8'))
    
    # obj.update('admin'.encode('utf-8'))
    # obj.update('root'.encode('utf-8'))
    # 执行以上两步相当于obj.update('adminroot'.encode('utf-8'))
    
    print(obj.hexdigest())
    
    # 以上加密算法虽然依然非常厉害,但时候存在缺陷,即:通过撞库可以反解
    # 所以,有必要对加密算法中添加自定义key再来做加密。 obj = hashlib.md5('自定义key'.encode('utf-8'))
    
    # SHA256算法
    
    hash = hashlib.sha256('898oaFs09f'.encode('utf8'))   # 这里加放了用户自定义的key
    hash.update('alvin'.encode('utf8'))
    print(hash.hexdigest())
  • 相关阅读:
    java知识总结-15
    java知识总结-14
    java知识总结-13
    Java知识总结-12
    Java知识总结-11
    Java知识总结-10
    Java知识总结-9
    Java知识总结-8
    Java知识总结-7
    SSO
  • 原文地址:https://www.cnblogs.com/dangrui0725/p/9451264.html
Copyright © 2011-2022 走看看