Provjera izvlačenja
Zalijepite kod certifikata za provjeru.
Što ovaj alat provjerava
Netko je proveo izvlačenje i dao vam kod certifikata. Ova stranica govori vam je li taj kod interno dosljedan — dolaze li brojevi zaista iz početne vrijednosti koju je organizator objavio i pokriva li otisak zaista tu početnu vrijednost i te postavke.
Sve se odvija u vašem pregledniku. Certifikat se nikamo ne šalje.
Dvije provjere
Otisak. Certifikat sadrži SHA-256 hash izračunat nad početnom vrijednosti i postavkama izvlačenja. Ova stranica ponovno izračunava taj hash. Ako se ne podudara s onim pohranjenim u certifikatu, početna vrijednost ili postavke promijenjene su nakon preuzimanja obveze.
Ponovna reprodukcija. Generator s početnom vrijednosti u potpunosti je determinističan, pa ista početna vrijednost i iste postavke uvijek daju iste brojeve. Ova stranica ponovno provodi izvlačenje i uspoređuje rezultat. Ako se brojevi razlikuju, rezultat je izmijenjen.
Certifikat prolazi provjeru samo kad obje provjere prođu.
Što uspješna provjera dokazuje, a što ne
Dokazuje da organizator nije naknadno tiho promijenio početnu vrijednost, postavke ili brojeve nakon što ih je preuzeo kao obvezu.
Ne dokazuje da je početna vrijednost bila nepredvidiva. Ako je organizator sam odabrao početnu vrijednost i nikad prije izvlačenja nije objavio otisak, mogao je isprobati mnogo početnih vrijednosti i zadržati onu koja mu odgovara. Otisak nešto znači samo kad je objavljen prije izvlačenja, negdje s vremenskom oznakom — u objavi, komentaru, poruci.
To je i cijela svrha koraka preuzimanja obveze: pretvara “vjerujte mi” u nešto što svatko može naknadno provjeriti.
Provođenje izvlačenja koje ljudi mogu provjeriti
- Postavite raspon i broj brojeva koje trebate.
- Pritisnite Izradi otisak. Objavite dobiveni hash — u objavi nagradne igre, u komentaru, gdje god ga sudionici mogu vidjeti s vremenskom oznakom.
- Zatvorite prijave, a zatim izvucite brojeve.
- Objavite početnu vrijednost i certifikat. Svatko ga može ovdje zalijepiti.
Preskakanje koraka 2 čini certifikat dekorativnim. Objava otiska unaprijed je ono što mu daje težinu.
Zašto sama početna vrijednost nije dovoljna
Početna vrijednost samo je tekst. Brojeve daje tek kad znate kako je proširena u njih — kojim algoritmom, u kojem rasponu, koliko brojeva, jesu li ponavljanja bila dopuštena.
Zato otisak pokriva i početnu vrijednost i postavke. Bez toga bi organizator mogao objaviti početnu vrijednost, a zatim naknadno tvrditi da je izvlačenje provedeno u drugom rasponu i da je pravi rezultat neki drugi skup brojeva. Preuzimanje obveze zatvara tu mogućnost.
Zašto se otisak ne može krivotvoriti
SHA-256 hash je jednosmjerna funkcija: lako se izračunava u jednom smjeru, a ne postoji poznat način da se izračuna unatrag. Upravo to čini preuzimanje obveze obvezujućim.
Da bi prevario sustav, organizator bi morao objaviti jedan otisak, a zatim naknadno otkriti drugačiju početnu vrijednost koja daje isti hash — napad drugim praslikom (second-preimage attack). Nitko još nije pronašao takav napad protiv SHA-256, a prostor pretrage čini grubu silu besmislenom: 2²⁵⁶ je više od procijenjenog broja atoma u vidljivom svemiru.
Organizator isto tako ne može ni malo pomaknuti ishod. Promjena samo jednog znaka početne vrijednosti mijenja otprilike polovinu bitova hasha, i to nepredvidivo. Ne postoji način da se traži početna vrijednost koja istovremeno odgovara objavljenom otisku i daje pogodnog pobjednika, jer bi prvo trebalo fiksirati hash, a hash ovisi o svemu.
Dakle, otisak posve fiksira početnu vrijednost i postavke. Jedino što ne fiksira jest kada je objavljen — zato pola posla obavlja vremenska oznaka na vašoj objavi.
Gdje su provjerljiva izvlačenja važna
- Nagradne igre i natjecanja — oni koji nisu pobijedili pitaju prvi
- Odabir u zajednici i DAO-u — biranje tko dobiva mjesto, grant ili ulogu
- Istraživanje — plan uzorkovanja koji recenzent može ponovno provesti i potvrditi
- Nagradne promocije s pravnom izloženošću — neke jurisdikcije zahtijevaju dokaziv postupak, ne samo tvrdnju
- Sve što stranac mora vjerovati — što je publika udaljenija, to manje vrijedi “izabrali smo nasumično” samo po sebi