Ataques de repetición en poker provably fair: por qué una prueba vieja no debe valer dos veces
Cuando alguien busca ataques de repetición en poker provably fair, suele querer una respuesta concreta: ¿podría una prueba válida de una mano antigua reutilizarse para hacer que otra mano parezca justa? En seguridad, un ataque de repetición ocurre cuando un mensaje o una prueba válida se captura y se usa otra vez fuera de su contexto correcto.
En poker online, el problema no se resuelve por mencionar la palabra nonce. Lo importante es que cada mano quede unida a su propio identificador, mesa, jugadores, compromisos, contadores, revelaciones y orden de verificación. Una prueba de equidad debe servir para una mano exacta, no para cualquier mano futura.
Qué es un ataque de repetición
OWASP explica la protección contra repetición con valores únicos, marcas de tiempo y controles que impiden aceptar mensajes antiguos como si fueran nuevos: OWASP replay vulnerabilities. En lenguaje simple, el sistema debe saber si un dato pertenece a este momento o a uno anterior.
Las pruebas de equidad en poker necesitan lo mismo. Un transcript de barajado puede incluir compromisos, semillas, nonces, cartas reveladas, orden de acciones e ID de mano. Si esas piezas no están atadas entre sí, una plataforma defectuosa o deshonesta podría presentar evidencia de una mano como si fuera de otra.
Por eso la verificación no debe preguntar solo "¿coincide el hash?". También debe preguntar "¿coincide con esta mano, esta mesa, este contador y esta ventana de revelación?".
Por qué el contexto de la mano importa
Una mano de Texas Hold'em tiene varias etapas: jugadores sentados, número de mano, ciegas, entradas aleatorias, reparto, acciones en orden y revelación de cierta información al final. La verificación debe conservar esa secuencia.
Por ejemplo, un compromiso de semilla del servidor puede ser real, pero eso no demuestra por sí solo que pertenece a la mano que estás revisando. También necesita un ID de mano, un contador único y una relación clara con el valor que se revela después. El flujo básico está en commit-reveal poker shuffle.
Lo mismo vale para las aportaciones del jugador. Si una semilla de jugador, un valor aleatorio del navegador o una firma de acción puede repetirse en otra mano, el transcript pierde fuerza. Un buen diseño hace que cada aportación sea específica de una mano y de un paso.
Nonces, contadores y aleatoriedad nueva
El glosario de NIST define nonce como un valor usado una sola vez en un contexto determinado: NIST nonce glossary. En poker puede ser un contador de mano, un contador de paso de barajado, un número de revelación u otro valor que no debe repetirse.
Un nonce no tiene que ser secreto. Tiene que ser único donde la unicidad importa. Un número público de mano puede ser útil si la prueba lo incluye de forma clara. Una semilla oculta puede ser útil si se compromete antes de jugar y se revela en el momento correcto.
La aleatoriedad fresca también importa. En navegadores, Web Crypto se usa para valores aleatorios fuertes; MDN describe crypto.getRandomValues() como una API que llena arreglos con valores aleatorios criptográficamente fuertes: MDN getRandomValues. Para el lado del poker, lee nonce in provably fair poker.
Una prueba resistente a repetición es como una entrada con asiento, fecha, evento y registro de escaneo. La entrada puede ser real, pero no debe abrir todas las puertas para siempre.
Qué puede revisar un jugador
Un jugador normal no necesita auditar todo el código. Puede buscar señales simples de que una prueba antigua no se puede reutilizar:
- Cada mano tiene un ID o recibo estable
- La prueba incluye un nonce o contador único
- Los compromisos se registran antes de la revelación
- Las revelaciones se vinculan a la misma mano y mesa
- El verificador rechaza pasos faltantes, duplicados o fuera de orden
- El sitio explica límites como bots y colusión
Si un sitio solo muestra una marca verde al final, la evidencia es débil. Un sistema mejor da suficiente información para reproducir la prueba y ver dónde pertenece cada valor. Para una lista práctica, consulta provably fair poker checklist.
El límite honesto
La protección contra repetición mantiene la evidencia de equidad unida a la mano correcta. No evita todos los abusos. Los jugadores aún pueden coludirse fuera de la mesa, una cuenta puede ser robada y los bots requieren controles separados. La equidad criptográfica y el anti-cheat deben trabajar juntos.
La regla práctica es sencilla: una prueba vieja válida no debería ser válida para una mano nueva. Cuando el transcript deja eso claro, el poker provably fair es más fácil de verificar y más difícil de falsificar con evidencia reciclada.