zoukankan      html  css  js  c++  java
  • python加密-sha256-md5

    # -*- coding:utf-8 -*-
    
    import hmac
    import hashlib
    
    
    def jm_sha256(key, value):
        """
        sha256加密
        :param key:
        :param value: 加密字符串
        :return: 加密结果转换为16进制字符串,并大写
        """
        hsobj = hashlib.sha256(key.encode("utf-8"))
        hsobj.update(value.encode("utf-8"))
        return hsobj.hexdigest().upper()
    
    
    def jm_sha256_single(value):
        """
        sha256加密
        :param value: 加密字符串
        :return: 加密结果转换为16进制字符串,并大写
        """
        hsobj = hashlib.sha256()
        hsobj.update(value.encode("utf-8"))
        return hsobj.hexdigest().upper()
    
    
    def jm_md5(key, value):
        """
        md5加密
        :param key:
        :param value: 加密字符串
        :return: 加密结果转换为16进制字符串,并大写
        """
        hsobj = hashlib.md5(key.encode("utf-8"))
        hsobj.update(value.encode("utf-8"))
        return hsobj.hexdigest().upper()
    
    
    def jm_md5_singlt(value):
        """
        md5加密
        :param value: 加密字符串
        :return: 加密结果转换为16进制字符串,并大写
        """
        hsobj = hashlib.md5()
        hsobj.update(value.encode("utf-8"))
        return hsobj.hexdigest().upper()
    
    
    def hmac_sha256(key, value):
        """
        hmacsha256加密
        :param key:
        :param value: 加密字符串
        :return: 加密结果转换为16进制字符串,并大写
        """
        message = value.encode("utf-8")
        return hmac.new(key.encode("utf-8"), message, digestmod=hashlib.sha256).hexdigest().upper()
    
    
    def hmac_sha256_single(value):
        """
        hmacsha256加密
        :param value: 加密字符串
        :return: 加密结果转换为16进制字符串,并大写
        """
        message = value.encode("utf-8")
        return hmac.new(message, digestmod=hashlib.sha256).hexdigest().upper()
    
    
    def hmac_md5(key, value):
        """
        hmacmd5加密
        :param key:
        :param value: 加密字符串
        :return: 加密结果转换为16进制字符串,并大写
        """
        message = value.encode("utf-8")
        return hmac.new(key.encode("utf-8"), message, digestmod=hashlib.md5).hexdigest().upper()
    
    
    def hmac_md5_single(value):
        """
        hmacmd5加密
        :param value: 加密字符串
        :return: 加密结果转换为16进制字符串,并大写
        """
        message = value.encode("utf-8")
        return hmac.new(message, digestmod=hashlib.md5).hexdigest().upper()
    
    
    if __name__ == '__main__':
        print("sha256加密:", jm_sha256("name", "zhangsan"))
        print("md5加密:", jm_md5("name", "zhangsan"))
        print("hmacsha256加密:", hmac_sha256("name", "zhangsan"))
        print("hmacmd5加密:", hmac_md5("name", "zhangsan"))
    
        print("sha256加密:", jm_sha256_single("zhangsan"))
        print("md5加密:", jm_md5_singlt("zhangsan"))
        print("hmacsha256加密:", hmac_sha256_single("zhangsan"))
        print("hmacmd5加密:", hmac_md5_single("zhangsan"))
    

    转载链接:https://blog.csdn.net/Happy_Sunshine_Boy/article/details/102930033

  • 相关阅读:
    wxpython(2)--按钮,位图按钮,滑动块,微调控制器
    获取网站title的脚本
    很酷的前端切图 | Sunny Day
    分析Java中的length和length()
    打破与被打破
    不错的东西: AutoMapper
    一个很不错的支持Ext JS 4的上传按钮
    [网络分析]WEBQQ3.0协议分析---good good study
    【翻译】提示18——如何决定ObjectContext的生命周期
    为什么要使用“var me=this”这样的写法
  • 原文地址:https://www.cnblogs.com/guohewei/p/14927555.html
Copyright © 2011-2022 走看看