zoukankan      html  css  js  c++  java
  • hashlib和hmac

    hashlib

    hashlib模块用于加密相关的操作,代替了md5sha模块,主要提供SHA1SHA224SHA256SHA384SHA512MD5算法。

    #!/usr/bin/env python
    # coding=utf-8
    
    import hashlib
    obj = hashlib.md5()
    obj.update(bytes('xiaoming235', encoding='utf-8'))
    ret = obj.hexdigest()
    # ret = obj.digest()
    print(ret)

    上面是没有加saltmd5,但有时候可以通过撞库反解,所以有必要对加密算法中添加salt

    #!/usr/bin/env python                                                                   
    # coding=utf-8                                                                                                                                                                   
                                                                                            
    import hashlib                                                                          
    obj = hashlib.md5(bytes('my-salt', encoding='utf-8'))                                   
    obj.update(bytes('xiaoming235', encoding='utf-8'))                                      
                                                                                            
    ret = obj.hexdigest()                                                                   
    print(ret)     

    hmac

    python内置还有一个hmac模块,内部实现了对我们创建salt和内容进行进一步处理后然后再加密。

    import hmac
    
    obj = hmac.new(bytes('23456', encoding='utf-8'))
    obj.update(bytes('admin', encoding='utf-8'))
    ret = obj.hexdigest()
    print(ret)
  • 相关阅读:
    python-生成器
    python—迭代器
    python—递归函数
    CentOS关闭防火墙
    OpenHCI
    USB电源管理
    USB相关的网络资料
    USB Packet Types
    USB描述符概述
    Core Java Volume I — 1.2. The Java "White Paper" Buzzwords
  • 原文地址:https://www.cnblogs.com/xiaoming279/p/6373018.html
Copyright © 2011-2022 走看看