美文网首页
hashlib hmac模块

hashlib hmac模块

作者: 狗狗胖妞 | 来源:发表于2017-04-01 11:11 被阅读15次

一、hashlib

md5和sha算法通过消息摘要算法生成定长的消息摘要,消息摘要算法是不可逆的。但同一段消息通过摘要算法后得到的值是一样的,可一通过比对消息摘要验证数据的完整性。
sha算法比MD5算法安全,但所需的时间也稍长。

1、原始消息摘要
#md5加密
import hashlib,hmac
m=hashlib.md5()
m.update(b'hello')
print(m.hexdigest())

#sha256加密
hash=hashlib.sha256()
hash.update(b'admin')
print(hash.hexdigest())
2、加盐(salt)后摘要

由于同一个消息通过摘要算法得到的摘要是相同的,因此可以通过撞库的方式得到原始消息值。解决方式是,添加一个salt拼接原始消息后再进行计算。

import hashlib
hash=hashlib.md5(b'856oaF01')
hash.update(b'admin')
print(hash.hexdigest())
#以上等价与
hash=hashlib.md5()
hash.update(b'856oaF01admin')
print(hash.hexdigest())

二、hmac

HAMC它内部对我们创建 key 和 内容 再进行处理然后再加密,相当安全。一般用于挑战应答。

import hmac
h=hmac.new(b'123')
h.update(b'admin')
print(h.hexdigest())
#内部可能将原字符串变成了"1a2dm3in"或"a1d2min3"等等

相关文章

  • hashlib hmac模块

    一、hashlib md5和sha算法通过消息摘要算法生成定长的消息摘要,消息摘要算法是不可逆的。但同一段消息通过...

  • hashlib模块与hmac模块

    一些想法 今天学到tcp协议的验证客户端的合法性方法,既然建立了服务器端,假如不想让任意一个客户端都能轻易的连接,...

  • hashlib和hmac

    hashlib 1.普通加密及在加密算法中添加自定义key再来做加密 2.处理大文件 2.1 先看如下代码,分开处...

  • Python的加密服务

    Python的加密服务包括三个包:hashlib包hmac包secrets包 可能遇到的问题:1. hashlib...

  • python hashlib模块简介

    python hashlib模块简介 一、hashlib模块里有什么 hashlib模块提供了多种安全散列和消息摘...

  • Python hashlib & hmac

    和各种语言一样"加盐"乱七八糟的等等,过一遍就完事了? MD5 SHA1 hmac

  • hashlib和hmac的区别及相似

    首先要说明的是hashlib.md5()和hmac都能实现加盐的方式加密hashlib使用将盐和要加密的内容以二进...

  • Python 入门之 内置模块 -- hashlib模块

    Python 入门之 内置模块 -- hashlib模块 1、hashlib 摘要算法,加密算法 (1)主要用途:...

  • 关于pycharm的hashlib问题

    今天偶然在使用hashlib的时候发现一个报错 pycharm导入hashlib模块后使用hashlib.md5(...

  • python常用模块!!

    os模块: stat模块: sys模块: hashlib,md5模块: random模块: types模块: at...

网友评论

      本文标题:hashlib hmac模块

      本文链接:https://www.haomeiwen.com/subject/qjhiottx.html