Poštenost
Poštenost Originalnih Kock in Kock z Razponom
Ne želimo, da nam preprosto verjamete, ko gre za varnost. Namesto tega bomo razložili, kako zagotavljamo poštenost vsakega metanja.
Randomizacija na kratko
Naši člani lahko kadar koli preverijo svoje stave. Zaradi tega bi morali ugotoviti število meta.
Če dodate tretji element – Nonce – v par Client Seed in Server Seed, boste lahko ugotovili rezultat stave. Seveda, če svoje rezultate razkrijete vnaprej, bi to pokvarilo celoten postopek. Zato uporabljamo SHA-256 hash, da začasno skrijemo vaš Server Seed. Vsak Seed se razkrije po zadnji randomizaciji. To našim uporabnikom omogoča, da pregledno preverijo svoje mete.
Kako se izračunajo številke za metanje
Pravila igre določajo, da moramo poznati številko metanja. Da jo prejmemo, moramo izvesti nekaj izračunov. Združite svojo številko stave, strežnik in semena odjemalca. Tako dobimo številko med 0 in 9,999.
Tako deluje:
kombinacija = strežniško seme + seme odjemalca + nonceNato potrebujemo 128-znakovno hex‑niz, ki uporablja SHA-512 hash:
hash = SHA512(kombinacija)Na tej točki pretvorimo 5 znakov tega hasha v tako imenovano decimalno število. Nato so možni trije scenariji. Če je enakovredno milijonu ali več, nadaljujemo na enak način z naslednjimi 5 znaki. To se zgodi do 25 krat. Če nobena od teh poizkusov ni dala rezultata manj kot milijon, se zadnji 3 znaki pretvorijo v vašo številko metanja. V nasprotnem primeru jo delimo z 10K in upoštevamo vaš izid metanja.
Kako izgleda koda
Uporabite našo spletno preverjevalec ali si oglejte primer kode, da vidite, kako preverjamo našo stavo:
function getRoll(serverSeed, clientSeed, nonce) {
var hash = sha512(serverSeed + clientSeed + nonce);
var index = 0;
do {
var lucky = parseInt(hash.substr(index, 5), 16);
index += 5;
} while (lucky >= 1000000);
return lucky % 10000;
}