Criptografía para jugadores
Qué es demostrablemente justo: semillas, hashes, nonce y verificación explicados
Una guía clara y agnóstica del juego que muestra cómo los criptocasinos modernos bloquean los resultados antes de que juegues y cómo puedes verificarlos después.
Control de semillas cliente
Nonce por apuesta
Revelación tras la ronda
Idea central
El casino se compromete con una semilla de servidor oculta con un hash público. Usted aporta una semilla cliente. Un nonce se incrementa por apuesta. Después de la ronda, la semilla del servidor se revela para que cualquiera pueda volver a calcular el resultado a partir de las reglas públicas.
Por qué es importante
Los resultados están bloqueados de antemano. No hay ajustes en directo. No se puede repetir el resultado a posteriori. Puedes comprobar los cálculos tú mismo con cualquier implementación SHA-256 estándar.
Lo que necesita
- Semilla del servidor (revelada después de la ronda)
- Semilla hash del servidor (publicada antes de la ronda)
- Su semilla cliente
- Nonce para esa apuesta
Cómo funciona provably fair - paso a paso
1. Compromiso previo
El casino genera una semilla de servidor aleatoria y publica su hash. Ejemplo: hash = SHA-256(serverSeed). La semilla del servidor simple permanece oculta hasta después de la liquidación.
2. Semilla cliente
Usted elige o confirma una semilla de cliente en su navegador. Consérvala o cámbiala entre sesiones según tus preferencias.
3. Nonce
Cada apuesta utiliza un nonce incremental que comienza en 0 para un nuevo par de semillas. Evita la reutilización de la salida y vincula una salida única a cada ronda.
4. Cálculo de resultados
El juego combina valores como HMAC-SHA256(servidorSeed, clienteSeed:nonce) o SHA-256(serverSeed + clientSeed + nonce) y luego asigna bytes a un resultado. La especificación exacta se publica para cada juego.
5. Revelar y verificar
Tras el acuerdo, se revela la semilla del servidor. Se hace un hash para confirmar que coincide con el compromiso previo y, a continuación, se vuelve a calcular el resultado con la semilla y el nonce del cliente.
Ejemplo - Asignación de tiradas de dados (JavaScript)
// Pseudo-implementación: SHA-256 -> número en [0, 99.999]
async function 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){
// toma los primeros 52 bits ~ 13 caracteres hexadecimales
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 diceResultado(servidorSeed, clienteSeed, nonce){
const input = `${serverSeed}:${clientSeed}:${nonce}`;
const hash = await sha256(entrada);
const roll = toNumberFromHash(hash);
return Math.min(99.999, roll);
}
Los juegos reales pueden usar HMAC con la semilla del servidor como clave y una política de byte slicing documentada. Sigue la especificación oficial.
Ejemplo - Verificar el compromiso (Python)
importar hashlib
def sha256_hex(s: str) -> str:
return hashlib.sha256(s.encode()).hexdigest()
server_seed = "REVEALED_AFTER_ROUND" (Revelado después de la ronda)
published_hash = "HASH_SHOWNEFORE_ROUND"
assert sha256_hex(server_seed) == published_hash, "Error de compromiso"
print("Compromiso verificado")
Patrones comunes de mapeo por tipo de juego
| Juego | Enfoque Hashing | Cartografía | Notas |
|---|---|---|---|
| Dados | HMAC-SHA256(servidorSeed, clienteSeed:nonce) | Primeros 52 bits a 0-99.999 | Determinista por nonce |
| Crash | SHA-256 o variante HMAC | Transformación a curva multiplicadora | Las especificaciones definen cómo evitar los prejuicios |
| Minas | Flujo SHA-256 | Azulejos revelados por orden de byte | Diseño de la placa reproducible |
| Plinko | HMAC-SHA256 | Pasos de clavija izquierda o derecha a partir de bits | El recuento de filas afecta al espacio de la ruta |
| Blackjack | Barajado basado en SHA-256 | Fisher-Yates sembrados por bytes | Orden de cubierta reproducible |
Lista de control de jugadores - flujo de verificación rápida
- Copia el hash de la semilla del servidor antes de jugar o confirma que está visible en el panel de equidad
- Establece tu semilla cliente si el juego lo permite o almacena el valor autogenerado
- Después de la ronda copia la semilla del servidor revelada y el nonce de tu apuesta
- Hash de la semilla del servidor para confirmar los partidos pre-compromiso
- Recalcule el resultado utilizando la especificación pública y compárelo con el resultado de su apuesta.
Si algún paso falla, contacte con soporte con su Bet ID, semillas, nonce, y capturas de pantalla del panel de equidad.
Buenas prácticas para los usuarios
- Rota tu semilla de cliente entre sesiones si prefieres el aislamiento
- Registre los identificadores de apuesta para las rondas de apuestas altas y verifíquelos más tarde
- Utiliza herramientas independientes para el hashing si quieres una segunda opinión
- No confunda las semillas con las contraseñas: son diferentes.
Señales de alarma que hay que evitar
- Sin hash de semillas del servidor antes de jugar
- No hay descripción pública de la correspondencia entre el hash y el resultado
- Resultados no reproducibles con las mismas entradas
- Retrasos en las retiradas por falta de claridad en las condiciones de las bonificaciones
Juega a Originals de probada equidad con recompensas sin apuestas
Utilice el código VIP en Duel para obtener cashback instantáneo y juegos fáciles de auditar como Crash, Dados, Minas, Plinko y Blackjack.
¿Garantiza el beneficio una feria demostrable?
No. Garantiza la transparencia, no la expectativa positiva. Tu EV depende de la ventaja de la casa y de tus elecciones.
¿Puedo verificar en el móvil?
Sí. La mayoría de los navegadores modernos admiten SHA-256. También puede utilizar herramientas externas o scripts sencillos.
