hmac模块

hmac模块

对密码加密,可以加盐

import hmac
m=hmac.new(b'abc') #加盐
m.update(b'123456')
print(m.hexdigest())
# 注意hmac模块只接受二进制数据的加密
# abc 123 456 --> 8c7498982f41b93eb0ce8216b48ba21d
# abc 123456 --> 8c7498982f41b93eb0ce8216b48ba21d

# a 1234556 --> 3e391a1d7bf574cec59679244a2904fe

如果要保证hmac模块最终结果一致,必须保证:

  1. hmac.new括号内指定的初始key一样
  2. 无论update多少次,校验的内容累加到一起是一样的内容

原文地址:https://www.cnblogs.com/aden668/p/11366071.html

时间: 2024-11-02 23:36:09

hmac模块的相关文章

hmac模块使用

hmac模块使用 hashlib : 不可逆加密 hmac : 不可逆键值对方式加密 base64: 可逆加密 使用案例如下: 1 import hmac 2 3 a=hmac.new('key'.encode('utf-8')) #new 先加密一个key叫做'key' 4 a.update('abc'.encode('utf-8')) 5 a.update('bbb'.encode('utf-8')) 6 a.update('ccc'.encode('utf-8')) 7 a.update(

Python自带的hmac模块

Python自带的hmac模块实现了标准的Hmac算法 我们首先需要准备待计算的原始消息message,随机key,哈希算法,这里采用MD5,使用hmac的代码如下: import hmac message = b'Hello world' key = b'secret' h = hmac.new(key,message,digestmod='MD5') print(h.hexdigest()) 可见使用hmac和普通hash算法非常类似.hmac输出的长度和原始哈希算法的长度一致.需要注意传入

SocketServer模块,hmac模块验证client合法性

hmac模块: 1.模块初识: import hmac # h = hmac.new() #括号里要给它连个bytes类型,一个是自定义的secret_key,一个是你想进行加密的bytes # 密文 = h.digest() # hmac.compare_digest() #括号内传另外一个密文,看是否相等 h = hmac.new(b'secret',b'382835896') digest = h.digest() print(digest) #>>>> b'\xa4<

第三十六篇 hashlib模块、hmac模块和logging模块

目录 第三十七篇 hashlib模块.hmac模块和logging模块 一.hashlib模块 1.hash是什么 2.撞库破解hash算法加密 二.hmac模块 三.logging模块 1.日志的五个级别 2.V3 3.日志配置文件 4.总结 第三十七篇 hashlib模块.hmac模块和logging模块 一.hashlib模块 1.hash是什么 1.hashlib模块一般用于明文加密 2.hash是一种算法,在hashlib模块中主要提供了md5 等算法,传入的内容通过这些算法,会得到一

hashlib模块和hmac模块

hashlib模块和hmac模块 hashlib模块 一.导入方式 import hashlib 二.作用 无论你丢什么字符串,他都会返回一串 固定长度的字符串 三.模块功能 3.1 经常使用 import hashlib m = hashlib.md5() #生成一个对象 m.update(b'123') m.update(b'456') print(m.hexdigest()) --------------------------------------------------------

python--&gt;hashlib模块和hmac模块

目录 一.hashlib模块 1.0.1 hashlib是什么 1.0.2 撞库破解hash算法加密 二.hmac模块 目录 一.hashlib模块 密码加密:无论你丢什么字符串,他都会返回一串 固定长度的字符串 变成固定的字符串 相同的字符串哈希后结果一样 叠加性 1.0.1 hashlib是什么 hash是一种算法(Python3.版本里使用hashlib模块代替了md5模块和sha模块,主要提供 SHA1.SHA224.SHA256.SHA384.SHA512.MD5 算法),该算法接受传

模块讲解---time模块,datetime模块,random模块,hashlib模块和hmac模块,typing模块,requests模块,re模块

目录 1. 包 2. time模块 ??1. 优先掌握 2. 了解 3. datetime模块 ??1. 优先掌握 4. random模块 ??1. 优先掌握 ??2. 了解 5. hashlib模块和hmac模块 6. typing模块 7. requests模块 8. re模块 ??1. re模块的正则表达式的元字符和语法 ??2. 贪婪模式和非贪婪模式 ??3. 匹配邮箱实例 ??4. re模块中的常用功能函数 ??5. 修饰符 re.S ??6. 补充 目录 \1. 包 1. 优先掌握

Python之hmac模块的使用

hmac模块的作用: 用于验证信息的完整性. 1.hmac消息签名(默认使用MD5加算法) #!/usr/bin/env python # -*- coding: utf-8 -*- import hmac #默认使用是md5算法 digest_maker = hmac.new('secret-shared-key'.encode('utf-8')) with open('content.txt', 'rb') as f: while True: block = f.read(1024) if

hashlib和hmac模块

1. 使用md5加密 import hashlib m = hashlib.md5() m.update(b"guangzhou") print(m.hexdigest()) # d9d7a94326214718676cbf3f8c281141 m.update(b"shenzhen") print(m.hexdigest()) # 8df7afb2e9be9bc19f8e79328eb8f0e3 m2 = hashlib.md5() m2.update(b&quo