Metodologia QuickPick.ro pentru extrageri verificabile
Explicație completă a procesului criptografic folosit pentru a asigura transparența și verificabilitatea fiecărei extrageri.
Ce problemă rezolvăm
Extragerile clasice — din Excel, random.org sau manual — nu oferă dovada că lista nu a fost modificată după ce organizatorul a văzut rezultatele. Participanții nu pot verifica independent că extragerea a fost corectă.
QuickPick.ro rezolvă această problemă prin publicarea unui hash al listei înainte de extragere — dovada criptografică că lista nu a putut fi schimbată retroactiv.
Principiul fundamental: dacă hash-ul listei este publicat înainte de extragere, orice modificare ulterioară a listei produce un hash diferit — detectabil de oricine.
Pași metodologici
Încărcarea și normalizarea listei
Organizatorul încarcă lista participanților (manual sau CSV). Lista este normalizată: spații extra eliminate, caractere standardizate, convertită în format JSON consistent. Fiecare participant poate avea unul sau mai multe tickete.
Calculul hash-ului SHA-256 al listei
Se calculează hash-ul SHA-256 al reprezentării JSON a listei normalizate:
Hash-ul este o amprentă digitală de 256 biți — ireversibilă și unică. Orice modificare a listei produce un hash complet diferit.
Generarea și publicarea server seed-ului
Serverul generează un seed aleatoriu criptografic. Înainte de extragere, se publică hash-ul seed-ului — nu seed-ul în sine:
Aceasta dovedește că seed-ul a fost fixat înainte de extragere și nu a putut fi ales după ce s-a văzut lista.
Client seed (opțional, recomandat)
Organizatorul poate introduce un client seed public — de exemplu hash-ul unui bloc Bitcoin sau numărul unui tweet public. Rolul lui este să dovedească că nici serverul nu poate controla singur rezultatul.
Extragerea deterministă
Pentru fiecare câștigător (nonce = 0, 1, 2...) se calculează:
Procesul este deterministic: aceleași inputuri produc întotdeauna același rezultat. Fisher-Yates shuffle asigură că același participant nu poate fi ales de două ori.
Revelarea server seed-ului
Imediat după extragere, server seed-ul complet devine public. Oricine poate verifica că SHA256(server_seed) = server_seed_hash publicat anterior — dovada că seed-ul nu a fost schimbat.
Verificare publică independentă
Cu datele publice (participants_hash, server_seed, client_seed, timestamp), oricine poate recalcula independent câștigătorul și confirma că este identic cu cel anunțat. Verificarea se face direct în browser — fără cont, fără instalare.
Algoritm și standarde folosite
- SHA-256 — funcție hash criptografică standardizată de NIST (FIPS 180-4)
- Web Crypto API — standard W3C disponibil în toate browserele moderne
- Fisher-Yates shuffle — algoritm de permutare aleatorie fără înlocuire
- crypto.getRandomValues() — generator de numere aleatorii criptografic din Web Crypto API
Limitări și ce nu garantează QuickPick.ro
Metodologia QuickPick.ro garantează integritatea procesului tehnic, nu legalitatea sau corectitudinea campaniei în ansamblu.
QuickPick.ro garantează:
- Extragerea s-a efectuat din lista blocată prin hash înainte de extragere
- Hash-urile publicate corespund celor recalculate
- Algoritmul folosit este cel descris în această pagină
- Rezultatul poate fi verificat independent de oricine
QuickPick.ro nu garantează:
- Că lista introdusă de organizator este corectă sau completă
- Că toți participanții eligibili sunt incluși în listă
- Legalitatea campaniei organizatorului
- Acordarea premiilor de către organizator
- Că certificatul PDF constituie un document cu valoare juridică oficială
Procesul este proiectat pentru a fi practic impredictibil și verificabil independent, în condiții normale de utilizare. Organizatorul răspunde integral de corectitudinea listei și legalitatea campaniei.