Kontrolli loosimist
Kleepige sertifikaadi kood, et seda kontrollida.
Mida see tööriist kontrollib
Keegi tegi loosimise ja andis teile sertifikaadi koodi. See leht ütleb, kas see kood on sisemiselt kooskõlaline — kas numbrid tulevad tõesti korraldaja avaldatud seemnest ning kas sõrmejälg tõesti katab seda seemet ja neid seadeid.
Kõik toimub teie brauseris. Sertifikaati ei saadeta kunagi kuhugi.
Kaks kontrolli
Sõrmejälg. Sertifikaat sisaldab SHA-256 räsi seemne ja loosimise seadete üle. See leht arvutab selle räsi uuesti. Kui see ei ühti sertifikaadis salvestatuga, siis muudeti seemet või seadeid pärast kohustuse loomist.
Kordamine. Seemnega generaator on täielikult deterministlik, seega annavad sama seeme ja samad seaded alati samad numbrid. See leht kordab loosimist ja võrdleb tulemusi. Kui numbrid erinevad, siis tulemust on muudetud.
Sertifikaat läbib kontrolli ainult siis, kui mõlemad kontrollid õnnestuvad.
Mida läbitud kontroll tõestab ja mida mitte
See tõestab, et korraldaja ei muutnud vaikselt seemet, seadeid ega numbreid pärast nendega seotud kohustuse võtmist.
See ei tõesta, et seeme oli ettearvamatu. Kui korraldaja valis seemne ise ega avaldanud sõrmejälge enne loosimist, võis ta proovida paljusid seemneid ja jätta selle, mis talle meeldis. Sõrmejälg on tähenduslik ainult siis, kui see avaldati enne loosimist, kuskil ajatempliga — postituses, kommentaaris, sõnumis.
Selles seisnebki kohustuse sammu mõte: see muudab “usaldage mind” millekski, mida igaüks saab hiljem kontrollida.
Sellise loosimise korraldamine, mida saab kontrollida
- Määrake oma vahemik ja mitu numbrit vajate.
- Vajutage Loo sõrmejälg. Avaldage saadud räsi — loosi postituses, kommentaaris, kus iganes osalejad saavad seda ajatempliga näha.
- Sulgege osalemine ja seejärel loosige.
- Avaldage seeme ja sertifikaat. Igaüks saab selle siia kleepida.
Sammu 2 vahelejätmine muudab sertifikaadi puhtalt dekoratiivseks. Sõrmejälje esmane avaldamine annab sellele kaalu.
Miks pelgalt seemnest ei piisa
Seeme on lihtsalt tekst. See annab numbreid alles siis, kui on teada, kuidas see nendeks laiendati — milline algoritm, milline vahemik, mitu numbrit, kas kordused olid lubatud.
Seepärast katab sõrmejälg nii seemet kui ka seadeid. Ilma selleta võiks korraldaja avaldada seemne ja hiljem väita, et loosimine toimus teises vahemikus ning tegelik tulemus oli mingi muu numbrite hulk. Kohustus sulgeb selle võimaluse.
Miks sõrmejälge ei saa võltsida
SHA-256 räsi on ühesuunaline funktsioon: seda on lihtne arvutada edaspidi, kuid tagasi arvutamiseks ei ole teadaolevat viisi. Just see teebki kohustuse siduvaks.
Petmiseks peaks korraldaja avaldama ühe sõrmejälje ja hiljem paljastama teistsuguse seemne, mis annab sama räsi — nn teise eelkujutise rünnak (second-preimage attack). Kedagi pole veel õnnestunud SHA-256 vastu leida ja otsinguruum teeb jõuga proovimise mõttetuks: 2²⁵⁶ on rohkem kui hinnanguline aatomite arv nähtavas universumis.
Samuti ei saa korraldaja tulemust suunata. Ühe tähemärgi muutmine seemnes muudab umbes poole räsi bittidest, ettearvamatult. Ei ole võimalik otsida seemet, mis ühtaegu vastaks avaldatud sõrmejäljele ja annaks sobiva võitja, sest räsi tuleks kõigepealt fikseerida ning räsi sõltub kõigest.
Seega fikseerib sõrmejälg seemne ja seaded täielikult. Ainus, mida see ei fikseeri, on see, millal see avaldati — seepärast teeb pool tööst ära teie postituse ajatempel.
Kus kontrollitav loosimine on oluline
- Kingitused ja võistlused — küsimusi esitavad need, kes ei võitnud
- Kogukonna ja DAO valikud — kellele antakse koht, toetus või roll
- Teadustöö — valimiplaan, mida hindaja saab uuesti käivitada ja kinnitada
- Õigusliku riskiga auhinnakampaaniad — mõnes jurisdiktsioonis nõutakse tõestatavat meetodit, mitte pelgalt kinnitust
- Kõik, mida võõras peab uskuma — mida kaugemal on publik, seda vähem on “valisime juhuslikult” iseenesest väärt