import hmac hmac.new(key, msg=None, digestmod='')
key
- байтовая строка или объект bytearray
,msg=None
- может быть любого типа, поддерживаемый модулем hashlib
,digestmod=''
- алгоритм хеширования.Функция new()
модуля hmac
возвращает новый объект hmac
.
Ключ key
- это байтовая строка или объект bytearray
, дающий секретный ключ.
Если присутствует аргумент msg
, то выполняется вызов метода update(msg). Аргумент msg
может быть любого типа, поддерживаемый модулем hashlib
.
Аргумент digestmod
, несмотря на свою позицию, обязателен к заполнению и представляет собой имя алгоритма хеширования, конструктор алгоритма хеширования или модуль для использования объектом HMAC. Это может быть любое имя, подходящее для функции hashlib.new()
.
>>> import hashlib, hmac >>> secret = 'mysecret'.encode() >>> url = 'https://docs-python.ru/standart-library/'.encode() >>> signing = hmac.new(secret, url, hashlib.sha256) >>> signing.hexdigest() # 'cfa4431ed22c1e45ed565716d28659646a4abe833e3b792094a3422d23a7e54d'