← retour aux snippets

hash: blake2b avec clé (MAC rapide)

Calculer une empreinte authentifiée avec blake2b keyed hashing.

python security #blake2b#mac#hash

objectif

Calculer une empreinte authentifiée avec blake2b keyed hashing.

code minimal

import hashlib
h = hashlib.blake2b(key=b"secret", digest_size=32)
h.update(b"message")
print(len(h.hexdigest()) == 64)  # attendu: True (32 bytes -> 64 hex)

utilisation

import hashlib, secrets
def mac(data: bytes, key: bytes) -> str:
    h = hashlib.blake2b(key=key, digest_size=32); h.update(data); return h.hexdigest()
k = secrets.token_bytes(32)
print(len(mac(b"x", k)) == 64)

variante(s) utile(s)

import hashlib
h = hashlib.blake2s(key=b"k", person=b"scope")  # personnalisation
h.update(b"x")
print(isinstance(h.hexdigest(), str))

notes

  • blake2 est très rapide et supporte clés, sel, personnalisation.
  • Pour compat API/webhooks, préférez HMAC-SHA256 si nécessaire.