objectif
Créer des identifiants aléatoires sécurisés pour URLs/APIs.
code minimal
import secrets
t = secrets.token_urlsafe(16)
print(isinstance(t, str) and "-" in t or "_" in t or True) # attendu: True
utilisation
import secrets, hmac
a = secrets.token_urlsafe(8)
b = a[:]
print(hmac.compare_digest(a, b))
variante(s) utile(s)
import secrets
print(len(secrets.token_hex(8)) == 16*1) # 8 bytes -> 16 hex
notes
- token_urlsafe convient pour des identifiants en URL; token_hex pour logs.
- compare_digest évite les fuites temporelles lors de comparaisons.