O parolă bună nu este una care arată complicat — este una pe care un atacator nu o poate ghici. Diferența dintre cele două este matematică, nu estetică. Acest generator produce parole imprevizibile folosind sursa de aleatoriu criptografic a browserului (crypto.getRandomValues()), totul executat local pe dispozitivul tău: nicio parolă nu este trimisă, salvată sau înregistrată pe vreun server. În continuare îți explicăm exact de ce funcționează și cum să alegi parametrii pentru fiecare situație.
Cele patru moduri de generare
Generatorul oferă patru strategii distincte, fiecare cu un compromis diferit între securitate și memorabilitate:
| Mod | Cum arată | Memorabilitate | Cazul ideal |
|---|---|---|---|
| Aleatorie | k9#mQ2v!Lx7@pRf | Scăzută | Conturi stocate într-un manager de parole |
| Frază de acces | Munte-Soare-Floare-Vulpe-42 | Ridicată | Parolă-master, criptare de disc |
| Pronunțabilă | Kabopudi-47 | Medie | Parole dictate verbal, conturi temporare |
| Cod PIN | 729413 | Ridicată | Carduri, seifuri, dispozitive |
Niciun mod nu este „mai bun” în absolut — depinde de cum vei folosi parola. O parolă pe care o tastezi de zece ori pe zi are alte cerințe decât una pe care o salvezi o singură dată într-un seif digital.
Ce este entropia și de ce contează
Securitatea reală a unei parole se măsoară prin entropie — gradul ei de imprevizibilitate, exprimat în biți. Fiecare bit de entropie dublează numărul de încercări necesare pentru a ghici parola prin forță brută. Formula este directă:
unde este entropia în biți, este lungimea parolei (numărul de simboluri) și este dimensiunea setului din care alegem fiecare simbol.
Dimensiunea setului de caractere
Numărul de simboluri posibile depinde de tipurile de caractere activate:
| Set activat | Simboluri | |
|---|---|---|
| Doar litere mici | a–z | 26 |
| Litere mici + mari | a–z, A–Z | 52 |
| + cifre | a–z, A–Z, 0–9 | 62 |
| + simboluri | toate | ~90 |
Exemplu de calcul
Pentru o parolă aleatorie de 16 caractere din toate cele patru tipuri ():
Pentru o frază de acces de 5 cuvinte dintr-un dicționar de ~120 de cuvinte ():
iar dacă adăugăm și un număr și un al șaselea cuvânt, depășim ușor 45–50 de biți. Observă un lucru contraintuitiv: o frază din cuvinte simple poate avea entropie comparabilă cu o parolă scurtă plină de simboluri — și este infinit mai ușor de memorat.
Clasificarea tăriei
Pe baza entropiei calculate, generatorul clasifică fiecare parolă în cinci niveluri. Pragurile reflectă practicile curente de securitate:
| Entropie | Clasificare | Verdict |
|---|---|---|
| < 28 biți | Foarte slabă | Spartă instantaneu |
| 28–35 biți | Slabă | Rezistă doar atacurilor banale |
| 36–59 biți | Rezonabilă | Acceptabilă pentru conturi minore |
| 60–127 biți | Puternică | Recomandată pentru conturi importante |
| ≥ 128 biți | Foarte puternică | Practic de nespart |
Cum se calculează timpul de spargere
Generatorul estimează durata unui atac brute-force offline — scenariul în care un atacator a obținut baza de date cu hash-uri și încearcă combinațiile pe propriul hardware, fără limitarea impusă de un server. Presupunem o viteză de (o sută de miliarde) de încercări pe secundă, ordinul de mărime al unui cluster GPU modern care atacă un hash rapid (de exemplu MD5 sau SHA-1 neprotejat).
Numărul total de combinații posibile este:
În medie, atacatorul găsește parola după ce parcurge jumătate din spațiul de căutare. Timpul estimat este deci:
Tabel orientativ
| Entropie | Combinații () | Timp mediu de spargere |
|---|---|---|
| 28 biți | 2.7 × 10⁸ | sub o secundă |
| 40 biți | 1.1 × 10¹² | ~5 secunde |
| 60 biți | 1.2 × 10¹⁸ | ~2 luni |
| 80 biți | 1.2 × 10²⁴ | ~190.000 de ani |
| 104 biți | 2.0 × 10³¹ | ~3 × 10¹² ani |
| 128 biți | 3.4 × 10³⁸ | dincolo de vârsta universului |
Reține că aceste cifre presupun un hash rapid. Sistemele bine proiectate folosesc funcții lente și sărate (bcrypt, scrypt, Argon2), care reduc viteza de atac de la miliarde la câteva mii de încercări pe secundă — adăugând efectiv 20–30 de biți de protecție suplimentară. Dar tu nu controlezi cum îți stochează site-urile parola, așa că marja de siguranță trebuie să vină din entropia parolei tale.
De ce aleatoriul criptografic este obligatoriu
Calitatea unei parole depinde integral de calitatea sursei de aleatoriu. Acest generator folosește crypto.getRandomValues() — interfața Web Crypto care extrage entropie din generatorul criptografic al sistemului de operare (CSPRNG). Spre deosebire de Math.random(), care este un generator pseudoaleatoriu previzibil, valorile produse sunt nepredictibile din punct de vedere criptografic.
Problema biasului modulo
Un detaliu subtil dar critic: dacă mapăm naiv un număr aleatoriu pe un set de caractere folosind operatorul modulo (rand % N), introducem un bias — unele caractere apar mai des decât altele atunci când nu divide exact intervalul generatorului. Acest generator folosește eșantionare cu respingere (rejection sampling): respinge valorile care ar cădea în zona „de prisos” și regenerează, garantând o distribuție perfect uniformă.
function randInt(max) {
const limit = Math.floor(0x100000000 / max) * max;
const buf = new Uint32Array(1);
let x;
do { crypto.getRandomValues(buf); x = buf[0]; } while (x >= limit);
return x % max;
}
Fără acest pas, o parolă „aleatorie” are de fapt o entropie mai mică decât cea calculată, fiindcă atacatorul poate prioritiza caracterele mai probabile.
Ghidul de alegere a parametrilor
Pentru conturi online obișnuite
Mod aleatoriu, 16 caractere, toate tipurile activate. Stochează parola într-un manager de parole — nu trebuie să o memorezi. Activează „cel puțin unul din fiecare tip” pentru a respecta politicile de complexitate ale site-urilor.
Pentru o parolă-master memorabilă
Mod frază de acces, 5–6 cuvinte, cu separator și un număr la final. Aceasta este singura parolă pe care chiar trebuie să o ții minte (cea a managerului de parole sau a criptării de disc), deci memorabilitatea contează.
Pentru parole dictate la telefon
Mod pronunțabil. Silabele consoană-vocală alternante se rostesc clar și se transcriu fără confuzii — util pentru suport tehnic sau credențiale temporare comunicate verbal.
Pentru carduri și dispozitive
Mod cod PIN, minim 6 cifre. Evită PIN-urile previzibile (1234, 0000, ani de naștere). Un PIN de 4 cifre are doar ~13 biți de entropie; fiecare cifră în plus adaugă ~3.3 biți.
Greșeli frecvente de evitat
- Reutilizarea parolelor. O singură breșă pe un site expune toate conturile cu aceeași parolă. Folosește o parolă unică pe fiecare site — fezabil doar cu un manager de parole.
- Substituții previzibile.
Par0la!în loc deParolanu păcălește pe nimeni: atacurile de dicționar testează automat aceste substituții (@→a,0→o,1→i). - Informații personale. Numele, data nașterii, numele animalului de companie — toate sunt printre primele încercate într-un atac țintit.
- Complexitate în loc de lungime. O parolă de 8 caractere cu simboluri (~52 biți) e mai slabă decât una de 16 litere mici (~75 biți). Prioritizează lungimea.
- Expirarea forțată periodică. Schimbarea obligatorie a parolei la 90 de zile duce la tipare previzibile (
Parola1,Parola2). Recomandările NIST actuale o descurajează — schimbă parola doar la suspiciune de compromitere. - Notarea parolei la vedere. Un bilețel lipit pe monitor anulează orice entropie. Dacă trebuie să scrii ceva, scrie parola-master a managerului și ține-o în portofel.
Bune practici complementare
Chiar și parola perfectă nu este suficientă singură:
- Manager de parole — generează lung și aleatoriu, stochează criptat, completează automat. Nu mai trebuie să memorezi nimic în afară de parola-master.
- Autentificare în doi pași (2FA) — un al doilea factor (aplicație TOTP, cheie hardware) face ca o parolă spartă să fie insuficientă pentru acces.
- Verificarea breșelor — servicii precum Have I Been Pwned îți spun dacă o adresă de e-mail a apărut într-o scurgere de date cunoscută.
- Chei de acces (passkeys) — standardul FIDO2/WebAuthn elimină complet parola pentru site-urile care îl suportă, înlocuind-o cu criptografie cu cheie publică legată de dispozitiv.
Confidențialitate: totul rămâne pe dispozitivul tău
Spre deosebire de multe generatoare online, acesta nu trimite nimic către vreun server. Întregul cod rulează în browserul tău: poți deschide panoul de rețea din instrumentele de dezvoltator și vei vedea că nu pleacă nicio cerere atunci când generezi o parolă. Parolele afișate există doar în memoria paginii — o reîncărcare le șterge definitiv, fără urmă în istoric sau în vreo bază de date.
Instrumente înrudite
- Generator Cod QR cu Pictogramă — codează parole Wi-Fi sau linkuri în coduri QR scanabile
- Generator Cod de Bare — EAN-13, CODE-128, UPC-A cu cifră de control GS1
- Codificare Base64 — codare reversibilă pentru transmiterea datelor binare