Ce face os.urandom()
urandom(n) citește n octeți din sursa de aleatoriu a sistemului de operare, potrivită pentru chei, token-uri și „sare” pentru parole. Modulul secrets oferă funcții mai comode bazate pe ea (token_hex, token_urlsafe).
Parametri
| Parametru | Descriere |
|---|---|
n |
Numărul de octeți. |
Ce returnează
Un obiect bytes de lungime n.
Exemple
Exemplul 1: Chei aleatoare
import os, secrets
cheie = os.urandom(16)
print(len(cheie), cheie.hex())
print(secrets.token_hex(16))
Rezultat posibil (diferă la fiecare rulare)
16 9f2c41b07ae35d18c6e2f0a14b7d9e3c
4e1a7c9d02b38f65a1c4e7d0b29f3a86
Greșeli frecvente
- Folosești
random.randbytes()pentru o cheie de criptare.randomeste previzibil; foloseșteos.urandomsausecrets.
Comenzi înrudite
random.getrandbits() și random.randbytes(): Un întreg aleator cu k biți și n octeți aleatori.bytes.hex() și bytes.fromhex(): Transformă octeții în text hexazecimal și invers.