zoukankan      html  css  js  c++  java
  • python:hashlib模块与hmac模块

    #!usr/bin/env python
    # -*- coding:utf-8 -*-

    __author__ = "Samson"

    #注意,中文加密必须将中文字符串的编码方式(utf-8)转化为unicode
    import hashlib
    # ######## md5 ########
    m = hashlib.md5()
    m.update(b"Hello")
    print(m.hexdigest())#16进制
    m.update(b"It's me")
    print(m.hexdigest())
    m.update(b"It's been a long time")
    print(m.digest())

    # ######## sha1 ########

    hash = hashlib.sha1()
    hash.update('admin')
    print(hash.hexdigest())

    # ######## sha256 ########

    hash = hashlib.sha256()
    hash.update('admin')
    print(hash.hexdigest())

    # ######## sha384 ########

    hash = hashlib.sha384()
    hash.update('admin')
    print(hash.hexdigest())

    # ######## sha512 ########

    hash = hashlib.sha512()
    hash.update('admin')
    print(hash.hexdigest())

    #############################################################################################################
    # python 还有一个 hmac 模块,它内部对我们创建 key 和 内容 再进行处理然后再加密
    # 散列消息鉴别码,简称HMAC,是一种基于消息鉴别码MAC(Message Authentication Code)的鉴别机制。
    #使用HMAC时,消息通讯的双方,通过验证消息中加入的鉴别密钥K来鉴别消息的真伪;
    # 一般用于网络通信中消息加密,前提是双方先要约定好key,就像接头暗号一样,然后消息发送把用key把消息加密,接收方
    #用key + 消息明文再加密,拿加密后的值 跟 发送者的相对比是否相等,这样就能验证消息的真实性,及发送者的合法性了。
    ############################################################################################################
    import hmac
    h = hmac.new(b"It's", b"nothing serious")
    print(h.hexdigest())
  • 相关阅读:
    SQL Server 阻止了对组件 'Ole Automation Procedures' 的 过程'sys.sp_OACreate' 的访问
    谷歌浏览器扩展程序manifest.json参数详解
    获取天气api
    UVA 10385 Duathlon
    UVA 10668 Expanding Rods
    UVALIVE 3891 The Teacher's Side of Math
    UVA 11149 Power of Matrix
    UVA 10655 Contemplation! Algebra
    UVA 11210 Chinese Mahjong
    UVA 11384 Help is needed for Dexter
  • 原文地址:https://www.cnblogs.com/cansun/p/8179715.html
Copyright © 2011-2022 走看看