Ce face random.getrandbits() și random.randbytes()
getrandbits(k) returnează un întreg nenegativ format din k biți aleatori (deci între 0 și 2k − 1). randbytes(n) (Python 3.9+) returnează n octeți aleatori.
Ca tot modulul random, nu sunt potrivite pentru securitate. Pentru chei și token-uri folosește secrets.token_bytes() sau os.urandom().
Parametri
| Parametru | Descriere |
|---|---|
k |
Numărul de biți. |
n |
Numărul de octeți. |
Ce returnează
getrandbits: int. randbytes: bytes.
Exemple
Exemplul 1: Biți și octeți aleatori
import random
random.seed(0)
print(random.getrandbits(8), random.getrandbits(64).bit_length() <= 64)
print(random.randbytes(4).hex())
Rezultat
216 True
8206e7e3
Greșeli frecvente
- Folosești
randbytespentru o cheie de criptare. Foloseștesecrets.token_bytes().
Comenzi înrudite
os.urandom(): Returnează n octeți aleatori, potriviți pentru criptografie.random.randint() și random.randrange(): Generează un număr întreg aleator dintr-un interval.bytes() și bytearray(): Secvențe de octeți (valori 0-255) pentru date binare: fișiere, rețea, text codificat.