Crittografia per giocatori d'azzardo
Cosa è dimostrabile: semi, hash, nonce e verifica spiegati
Una guida chiara e indipendente dai giochi che mostra come i moderni casinò criptati bloccano i risultati prima di giocare e come è possibile verificarli in seguito.
Controllo delle sementi del cliente
Nonce per scommessa
Rivelazione dopo il turno
Idea centrale
Il casinò si impegna su un seme nascosto del server con un hash pubblico. L'utente porta un seme del cliente. Un nonce si incrementa per ogni puntata. Dopo il round, il seme del server viene rivelato in modo che chiunque possa ricalcolare il risultato in base alle regole pubbliche.
Perché è importante
I risultati sono bloccati in anticipo. Nessuna modifica in diretta. Nessun reroll a posteriori. Potete verificare voi stessi i calcoli con qualsiasi implementazione standard di SHA-256.
Cosa serve
- Server seed (rivelato dopo il turno)
- Hash del seme del server (pubblicato prima del round)
- Il vostro seme cliente
- Nonce per questa scommessa
Come funziona l'equità dimostrabile - passo dopo passo
1. Pre-impegno
Il casinò genera un seme casuale del server e pubblica il suo hash. Esempio: hash = SHA-256(serverSeed). Il seme del server in chiaro rimane nascosto fino a dopo l'insediamento.
2. Semi del cliente
Si sceglie o si conferma un seme del client nel browser. Potete mantenerlo o cambiarlo tra una sessione e l'altra, a seconda delle vostre preferenze.
3. Nonce
Ogni puntata utilizza un nonce incrementale che parte da 0 per una nuova coppia di semi. Questo impedisce il riutilizzo dell'output e lega un output unico a ogni round.
4. Calcolo dei risultati
Il gioco combina valori come HMAC-SHA256(serverSeed, clientSeed:nonce) o SHA-256(serverSeed + clientSeed + nonce) e poi mappa i byte in un risultato. Le specifiche esatte sono pubblicate per ogni gioco.
5. Rivelare e verificare
Dopo il regolamento viene rivelato il seme del server. Si esegue l'hash per confermare la corrispondenza con il preimpegno, quindi si ricalcola il risultato con il seme e il nonce del cliente.
Esempio - Mappatura del lancio di dadi (JavaScript)
// Pseudo-implementazione: SHA-256 -> numero in [0, 99,999]
funzione async sha256(hexStr){
const bytes = new TextEncoder().encode(hexStr);
const hash = await crypto.subtle.digest('SHA-256', bytes);
return Array.from(new Uint8Array(hash)).map(b=>b.toString(16).padStart(2,'0')).join('');
}
function toNumberFromHash(hash){
// prende i primi 52 bit ~ 13 caratteri esadecimali
const slice = hash.slice(0,13);
const asInt = parseInt(slice,16);
const max52 = Math.pow(2,52);
return (asInt / max52) * 100; // 0 - 100
}
async function diceResult(serverSeed, clientSeed, nonce){
const input = `${serverSeed}:${clientSeed}:${nonce}`;
const hash = await sha256(input);
const roll = toNumberFromHash(hash);
return Math.min(99.999, roll);
}
I giochi reali possono utilizzare HMAC con il seed del server come chiave e una politica di byte slicing documentata. Seguire le specifiche ufficiali.
Esempio - Verifica dell'impegno (Python)
importare hashlib
def sha256_hex(s: str) -> str:
return hashlib.sha256(s.encode()).hexdigest()
server_seed = "REVEALED_AFTER_ROUND"
published_hash = "HASH_SHOWN_BEFORE_ROUND"
assert sha256_hex(server_seed) == published_hash, "Commitment mismatch" (mancata corrispondenza dell'impegno)
print("Impegno verificato")
Modelli di mappatura comuni per tipo di gioco
| Gioco | Approccio Hashing | Mappatura | Note |
|---|---|---|---|
| Dadi | HMAC-SHA256(serverSeed, clientSeed:nonce) | Primi 52 bit a 0-99.999 | Deterministico per nonce |
| Schianto | SHA-256 o variante HMAC | Trasformazione in curva di moltiplicazione | La specifica definisce come evitare i pregiudizi |
| Miniere | Flusso SHA-256 | Piastrelle rivelate per ordine di byte | Layout della scheda riproducibile |
| Plinko | HMAC-SHA256 | Passi di piolo destro o sinistro da bit | Il conteggio delle righe influisce sullo spazio del percorso |
| Blackjack | Mischiamento basato su SHA-256 | Fisher-Yates è stato selezionato dai byte | Ordine del mazzo riproducibile |
Lista di controllo del giocatore - flusso di verifica veloce
- Copiate l'hash del seme del server prima di giocare o confermate che sia visibile nel pannello della correttezza.
- Impostare il seme del client se il gioco lo consente o memorizzare il valore generato automaticamente.
- Dopo il round, copiare il seme del server rivelato e il nonce della propria puntata.
- Hash del seme del server per confermare le corrispondenze del preimpegno
- Ricalcolare il risultato utilizzando le specifiche pubbliche e confrontarlo con il risultato della scommessa.
Se un passaggio non riesce, contattate il supporto con il vostro ID scommessa, i semi, il nonce e le schermate del pannello di correttezza.
Le migliori pratiche per gli utenti
- Ruotare il seme del cliente tra le sessioni, se si preferisce l'isolamento.
- Registrare gli ID delle scommesse per le puntate più alte e verificarle in seguito.
- Utilizzate strumenti indipendenti per l'hashing se volete un secondo parere
- Non confondete i semi con le password: sono due cose diverse.
Bandiere rosse da evitare
- Nessun hash del seme del server prima del gioco
- Nessuna descrizione pubblica della mappatura da hash a risultato
- Risultati non riproducibili con gli stessi input
- Ritardi nei prelievi legati a condizioni di bonus poco chiare
Giocate agli Originali in modo comprovatamente equo con premi senza scommesse
Utilizzare il codice VIP su Duel per ottenere un cashback istantaneo e giochi di verifica come Crash, Dice, Mines, Plinko e Blackjack.
L'equità dimostrabile garantisce il profitto
No. Garantisce la trasparenza, non l'aspettativa positiva. Il vostro EV dipende dal margine della casa e dalle vostre scelte.
Posso verificare da mobile
Sì. La maggior parte dei browser moderni supporta SHA-256. È anche possibile utilizzare strumenti esterni o semplici script.
