2019-03-19hashlib模块使用

2019-03-19  本文已影响0人  興華的mark

一、基本概念

       Python的hashlib提供了常见的摘要算法,主要提供 如MD5,SHA1, SHA224, SHA256, SHA384, SHA512 算法等。
       摘要算法又称哈希算法、散列算法。它通过一个函数,把任意长度的数据转换为一个长度固定的数据串(通常用16进制的字符串表示)。

二、如何产生hash值

import hashlib
md5 = hashlib.md5()
md5.update('this is md5'.encode('utf-8'))
print(md5.digest())  #digest:摘要(二进制)
print(md5.hexdigest()) #hex:十六进制
print(md5.)

输出:


注意:

三、hmac模块

       使用hmac模块时,若要使用update(),初始值必须一致,否则结果会不同。

import hmac
h1=hmac.new(b'tom')          #初始值必须保证一致,最终得到的结果就会不一样
h1.update(b'hello')
h1.update(b'world')
print(h1.hexdigest())

h2=hmac.new(b'tom')         #初始值必须保证一致,最终得到的结果就会不一样
h2.update(b'helloworld')
print(h2.hexdigest())

h3=hmac.new(b'tomhelloworld')   #初始值不一样,所以与上面两种的结果不一样
print(h3.hexdigest())

输出:

参考:
https://www.cnblogs.com/sui776265233/p/9224754.html
https://www.liaoxuefeng.com/wiki/001374738125095c955c1e6d8bb493182103fac9270762a000/0013868328251266d86585fc9514536a638f06b41908d44000

上一篇 下一篇

猜你喜欢

热点阅读