News

Cómo verificar que tus dados fueron justos

Cada partida de Orion se compromete con sus dados en SHA-256 antes de la primera tirada. Pega el ID en orion.arthea.ai/verify y compruébalo tú.

provably fairdiceguide

Los dados de backgammon se verifican con una promesa hecha antes de la partida y comprobada después de ella. Orion publica un compromiso SHA-256 sobre una semilla secreta antes de tu primera tirada, revela la semilla cuando la partida termina y deja que tu navegador recalcule cada tirada en orion.arthea.ai/verify con solo el ID de la partida. Si todo cuadra, los dados quedaron fijados antes de empezar a jugar y nadie, nosotros incluidos, los dirigió.

Todo jugador online conoce esa sensación. Bailas en la barra durante tres turnos. Tu rival encuentra el único número que golpea y cubre. En un tablero de madera te encogerías de hombros, porque viste salir los dados del cubilete. Online se te pide confiar en un número cuya generación nunca viste. No queríamos pedir esa confianza. Queríamos hacerla comprobable.

¿Qué significa realmente el commit-reveal?

Imagina un sobre sellado. Antes de que te sientes, la casa escribe dentro todos los dados de la noche, lo sella y te entrega una fotografía del sello. Cuando acaba el juego, el sobre se abre. Si el contenido coincide con el sello, las tiradas existían antes que la partida, y nada pudo elegirse a mitad de camino para perjudicarte. El commit-reveal es ese sobre, construido con aritmética. El sello es un hash SHA-256, y nadie puede producir otra semilla que encaje con él. Cuatro pasos llevan la prueba desde nuestro servidor hasta tu navegador.

Antes de la partida. El servidor extrae una semilla aleatoria secreta y la aplica un hash SHA-256. Ese hash es el compromiso, y queda adjunto a tu partida antes de la primera tirada. Desde ese instante, todos los dados de la partida ya están determinados. El servidor ha publicado una promesa que ya no puede editar.

Durante la partida. Cada tirada se deriva de la semilla con HMAC-SHA256: semilla y número de tirada a la entrada, dos dados a la salida. La posición, el marcador, el cubo, quién está a punto de ganar: nada de eso entra en el cálculo. El servidor no elige tiradas. Está leyendo una lista con la que se comprometió antes de que jugaras.

Cuando la partida termina. La semilla se revela y se guarda con el registro de la partida. Es la apertura del sobre. Cualquiera puede aplicar un hash a la semilla revelada y compararla con el compromiso publicado antes del primer movimiento, y ambos deben ser idénticos.

Verifícalo tú mismo. Abre orion.arthea.ai/verify en cualquier navegador e introduce el ID de la partida. La página lo recalcula todo en local con Web Crypto, la criptografía integrada en el propio navegador: primero el SHA-256 de la semilla revelada frente al compromiso original, después cada tirada de la partida, dado a dado. Sin cuenta, sin app, alrededor de un minuto.

Una coincidencia completa establece tres hechos a la vez:

  • La semilla revelada produce exactamente el compromiso publicado antes de la primera tirada
  • Cada tirada de la partida se deriva de esa semilla por HMAC-SHA256, así que nada se relanzó ni se cambió
  • Los dados nunca se adaptaron a la posición, al marcador ni al jugador

¿Qué probaría un descuadre?

Un descuadre no sería un fallo de visualización. Sería una prueba. Si la semilla revelada no produce el compromiso, los dados se cambiaron después de empezar la partida. Si una sola tirada falla su comprobación HMAC, los dados que viste no eran los dados comprometidos. Cualquiera de los dos fallos es una prueba de manipulación que cualquiera puede reproducir a partir del mismo registro, en cualquier máquina, para siempre.

Por eso mismo nunca deberías ver uno. El compromiso se publica primero, antes de que se mueva una sola ficha. Una casa que quisiera amañar esta partida tendría que publicar por adelantado la prueba de su propio amaño y luego entregar a cada jugador las herramientas para encontrarla. No te pedimos que confíes en que somos honestos. Construimos el sistema para que no tengas que hacerlo.

Nadie puede apuntar una tirada que quedó sellada antes de empezar la partida.

Si los dados son justos demostrablemente, ¿por qué sigo teniendo malas tiradas?

Porque unos dados justos siguen siendo dados. Te cerrarán en la barra. Necesitarás cualquier cosa menos un 2-1 y sacarás el 2-1. A lo largo de miles de partidas los números se aplanan hacia la distribución real, pero una noche no promete nada. Lo que la verificación elimina es la pregunta que hay debajo del enfado. Esa tirada milagrosa quedó fijada antes de que ninguno de los dos tocara una ficha, y no iba dirigida a ti. Saberlo no suavizará la tirada. Sí te permite dejar de auditar el universo y volver a jugar la posición.

Los dados son la sospecha más ruidosa, pero no la única. El mismo servidor que se compromete con tus tiradas valida también cada movimiento en vivo en origen, de modo que un cliente modificado no puede deslizar una ficha donde las reglas no lo permiten. Tiradas justas y movimientos legales vienen de la misma autoridad.

¿Puedo probar el verificador antes de que salga el juego?

Sí. El verificador está en línea hoy en orion.arthea.ai/verify, e incluye una repetición de demostración, así que puedes ver una verificación completa sobre una partida de ejemplo, del compromiso a la semilla y a cada tirada, antes de tener una partida propia. Para Orion en sí, la puerta en orion.arthea.ai/go lleva los enlaces del App Store y de Google Play y siempre muestra lo que está disponible ahora mismo.

Los dados justos son el suelo sobre el que se sostiene todo el viaje. Doce destinos, diez ligas, una regla por debajo de todo lo demás: cuando una partida termina, nunca tienes que creernos por nuestra palabra.

Artículos en español