Dos perritos calientes, un refresco y un boleto de 14,3 millones de dólares
La cinta de vigilancia del QuikTrip en el lado este de Des Moines muestra a un hombre corpulento con sudadera con capucha alrededor de las 3:30 de la tarde, dos días antes de Navidad de 2010, pagando 3,17 dólares por perritos calientes, una bebida de máquina y dos boletos de Hot Lotto. Seis días después, el 29 de diciembre de 2010, uno de esos boletos acertó los cinco números y la Hot Ball. El premio mayor era de 14,3 millones de dólares en efectivo, 16,5 millones como anualidad. Nadie se presentó.
La reclamación llegó con horas de margen. Los boletos de Iowa caducan al año; el 29 de diciembre de 2011, una hora y cincuenta minutos antes del plazo, abogados de un bufete de Des Moines presentaron el boleto en nombre de un fideicomiso llamado Hexham Investments, registrado en Belice, cuyo fiduciario, un abogado de Nueva York llamado Crawford Shaw, lo había escrito como “Hexam” en los papeles. La reclamación fue rechazada. En enero de 2012 Shaw se reunió en persona con funcionarios de la lotería; Iowa no paga a ganadores anónimos, Shaw no quiso decir quién había comprado el boleto, y el 26 de enero de 2012 firmó una declaración jurada y se retiró. Los 14,3 millones volvieron al fondo de los jugadores. La lotería divulgó la cinta del QuikTrip y preguntó al público quién era el hombre de la sudadera.
| FECHA | EVENTO |
|---|---|
| 20 de noviembre de 2010 | Tipton entra en la sala de sorteos sellada de MUSL para ajustar el reloj del generador por el horario de verano; la cámara de la sala graba aproximadamente un fotograma por minuto |
| 23 de diciembre de 2010 | Se compran dos boletos de Hot Lotto en un QuikTrip de Des Moines, alrededor de las 3:30 p.m. |
| 29 de diciembre de 2010 | Sorteo: un boleto gana el premio mayor, 14,3 millones de dólares en efectivo / 16,5 millones en anualidad |
| 9 de noviembre – 29 de diciembre de 2011 | Reclamaciones presentadas por un abogado, y luego por el fideicomiso Hexham Investments Trust registrado en Belice; el intento final llega 1 h 50 min antes de la caducidad y es rechazado |
| 26 de enero de 2012 | El fiduciario Crawford Shaw retira la reclamación en lugar de nombrar al comprador; el premio se pierde |
| 15 de enero de 2015 | Tipton es arrestado por dos cargos de fraude tras la cinta y la identificación de voz de un colega |
| 20 de julio de 2015 | Condenado por ambos cargos; sentenciado en septiembre a diez años, pendiente de apelación |
| Junio de 2017 | La Corte Suprema de Iowa anula las condenas (prescripción); ese mismo mes Tipton se declara culpable de conducta criminal continuada y confiesa haber instalado el código alrededor de 2005–2006 |
| 22 de agosto de 2017 | Sentenciado a 25 años, el máximo; cerca de $2.2 millones en restitución a Colorado, Oklahoma, Wisconsin y Kansas |
| Julio de 2022 | Liberado en libertad condicional tras cinco años |
Fechas del expediente del caso de Iowa según lo reportado por el Des Moines Register, Associated Press, The Daily Beast (7 de julio de 2015) y CNN (22 de agosto de 2017). El resumen del caso en Wikipedia da el valor en efectivo como $14.3 millones y el premio anunciado como $16.5 millones; ambas cifras aparecen en los reportes de la época.
El hombre de la sudadera con capucha era Eddie Tipton, quien legalmente no podía comprar un boleto de lotería en absoluto. Como director de seguridad informática de MUSL, era una de las cinco personas con acceso a la sala de sorteos, y había ayudado a escribir el software que había dentro. Un colega reconoció su voz en la grabación. La teoría de la fiscalía en el juicio de 2015 fue que el 20 de noviembre de 2010 había usado el ajuste del reloj como pretexto para conectar una memoria USB que portaba un programa autodestructivo, y que la cámara, configurada para grabar un segundo de cada sesenta, había sido arreglada para no verlo. La defensa dijo que las cámaras tenían un historial de fallas y que nunca se encontró ningún malware. El jurado condenó; la Corte Suprema de Iowa anuló las condenas dos años después por prescripción; y luego Tipton, enfrentando cargos en cinco estados, se puso de pie en la corte y explicó lo que realmente había hecho.
Tres fechas al año, después de las ocho de la noche
El código no se encontró en Iowa, donde los discos habían sido borrados, sino en Wisconsin. En 2016, investigadores que examinaban el generador usado para el sorteo de Megabucks de ese estado encontraron segmentos de código añadidos después de que el software había sido revisado y certificado. En tres fechas del año, el 27 de mayo, el 23 de noviembre y el 29 de diciembre, si la fecha caía en miércoles o sábado (los días de sorteo) y el sorteo se realizaba después de las 8 p.m., el generador no sorteaba al azar. Ejecutaba lo que los investigadores llamaron un algoritmo multivariable cuya salida el autor podía reproducir. Cualquier otro día del año era exactamente el generador de números aleatorios que los auditores habían aprobado.
Miren entonces la lista de premios mayores. Colorado, 23 de noviembre de 2005: $568,990, la parte del hermano de Tipton, Tommy, de un premio de $4.5 millones, en un generador que Eddie había ayudado a construir. Wisconsin, 29 de diciembre de 2007: $783,257, pagado a una empresa controlada por Robert Rhodes, un amigo de Texas que luego movió dinero a Tipton. Kansas, 2010. Iowa, 29 de diciembre de 2010: los $14.3 millones que nunca se pagaron. Oklahoma, 23 de noviembre de 2011: $1.2 millones. Todos y cada uno el 23 de noviembre o el 29 de diciembre. Las fechas eran la firma; la razón por la que nadie lo notó durante seis años es que nadie estaba mirando una lista de fechas. Estaban mirando un generador de números aleatorios certificado.
| SITUACIÓN | PROBABILIDADES DE BOTE POR BOLETO | BOLETOS PARA CUBRIR |
|---|---|---|
| Hot Lotto, 5 de 39 más 1 de 19, sorteo honesto | 1 en 10,939,383 | 10,939,383 |
| Sorteo honesto, 362 días del año | 1 en 10,939,383 | 10.939.383 |
| 27 de mayo, 23 de noviembre, 29 de diciembre en miércoles/sábado después de las 8 p.m., autor del código | 1 entre 1 | 1 (compró 2) |
| Las mismas fechas, todos los demás | 1 entre 10.939.383 | 10.939.383 |
C(39,5) × 19 = 575.757 × 19 = 10.939.383 para la matriz que usaba Hot Lotto hasta mayo de 2013. Un jugador que puede reproducir el estado del generador no tiene mejores probabilidades; tiene la respuesta. Los otros 362 días fueron, hasta donde se ha demostrado, honestos, razón por la cual el generador pasó todas las auditorías a las que se le sometió.
Hay un detalle aquí que importa más que el rootkit. Un generador de números aleatorios es una función: entra una semilla, salen números. La certificación verifica la función; no puede verificar quién eligió la semilla, ni si la función usa en silencio una semilla distinta tres noches al año. El código de Wisconsin no rompió la aleatoriedad. La reemplazó, brevemente, por algo que parecía idéntico desde afuera y estaba completamente determinado desde adentro, y luego volvió a ser aleatorio antes de que nadie lo revisara. Cualquier prueba del resultado, antes o después, pasaría.
La pregunta que una auditoría no puede responder: ¿quién eligió la semilla?
El caso se resolvió gracias a un empleado de reclamos, un trust mal escrito y una cámara de una tienda de conveniencia, no por nada en el sorteo. Esa es la parte incómoda. MUSL operaba una sala sellada, un generador certificado, una lista de acceso de cinco personas y una cámara de vigilancia, y la persona responsable de las cuatro cosas era el atacante. Tras el arresto, la Lotería de Iowa anunció nuevos equipos y software de sorteo, nuevas cámaras, nuevos protocolos de sala de sorteo y «separación de funciones», que es la frase honesta para el problema: la misma persona había escrito la función, tenía las llaves y configuraba la cámara. Hot Lotto en sí fue retirado en octubre de 2017.
La solución estructural no es una mejor cámara. Es quitarle la elección de la semilla a cualquiera que pueda ver el resultado. En un juego provably fair, el operador publica un hash de su semilla antes de la apuesta; el jugador aporta su propia semilla; y el número de cada ronda es un hash con clave de ambas junto con un contador. Un insider que escribió la función y tiene la semilla del servidor aún no puede elegir el resultado, porque la semilla del jugador llega después del compromiso y el operador no puede cambiar su propia semilla sin romper el hash publicado. Las tres fechas al año de Tipton habrían sido imposibles bajo esa regla, no porque no se pudiera escribir el código, sino porque la semilla que necesitaba conocer no era suya para elegir.
VERIFICADO POR EL MOTOR_shared/seedApi.ts: getRandomKey devuelve {serverSeedHashed, clientSeed, nonce} y setClientSeed(clientSeed) permite al jugador establecer su propia semilla, iniciando un par nuevo en nonce 0; _shared/demoLocal.ts deriva el número de cada ronda como u64(hmacSha256Utf8(serverSeed, `${clientSeed}-${nonce}-${cursor}`)), descrito como equivalente a RandomUtils.generateHash en el servidor. OriginalBaseDiceService.kt luego mapea ese número a uno de 9.999 resultados igualmente probables (×1,98 al 50%, un margen del 1,0%). La semilla del servidor se compromete mediante su SHA-256 antes de jugar; desde el 22-09-2026 la semilla retirada no se envía en la app, por lo que el compromiso se verifica mediante la huella en lugar de abrirse por el jugador.
Nada de esto es una afirmación de que un casino provably fair sea más confiable que una lotería estatal; es la afirmación más pequeña de que la semilla no es solo de la casa para elegir, que en la lotería sí lo era. Los premios de Tipton solo fueron tan aleatorios como lo permitió el único hombre dentro de la sala, y la sala estaba construida para que nadie pudiera saberlo. Un compromiso público y una semilla que la casa no elige lo habrían dejado con las mismas probabilidades que todos los demás: una entre 10.939.383, en cualquier fecha del año.
Preguntas frecuentes
¿Quién era Eddie Tipton?
El director de seguridad de la información de la Multi-State Lottery Association, que operaba Hot Lotto y otros juegos multiestatales, y uno de los programadores de su generador de números aleatorios. Compró el boleto ganador del sorteo de Hot Lotto de Iowa del 29 de diciembre de 2010, un premio de 14,3 millones de dólares que nunca se pagó porque el reclamo llegó a través de un trust anónimo de Belice que se retiró en lugar de nombrarlo a él.
¿Cómo manipuló el sorteo?
El examen forense de un generador hermano en Wisconsin encontró código añadido después de la certificación que, el 27 de mayo, el 23 de noviembre y el 29 de diciembre, si la fecha caía en un sorteo de miércoles o sábado después de las 8 p.m., reemplazaba el sorteo aleatorio con números que él podía calcular. En junio de 2017 confesó haberlo instalado alrededor de 2005-2006. Los fiscales habían argumentado antes que usó una visita a la sala de sorteo el 20 de noviembre de 2010, con la cámara grabando un segundo por minuto, para instalar un programa que se autoeliminaba.
¿Qué botes estuvieron involucrados?
Colorado, 23 de noviembre de 2005 (parte de $568,990, reclamado por su hermano Tommy); Wisconsin, 29 de diciembre de 2007 ($783,257, a través de una empresa de Robert Rhodes); Kansas, 2010; Iowa, 29 de diciembre de 2010 ($14.3 millones, perdido); Oklahoma, 23 de noviembre de 2011 ($1.2 millones). Todos el 23 de noviembre o el 29 de diciembre.
¿Cuál fue la sentencia?
Condenado en julio de 2015 y sentenciado a diez años; las condenas fueron anuladas en junio de 2017 por prescripción; luego se declaró culpable de conducta criminal continuada y fue sentenciado el 22 de agosto de 2017 a 25 años, el máximo, con alrededor de $2.2 millones en restitución repartidos entre Colorado, Oklahoma, Wisconsin y Kansas. Obtuvo la libertad condicional en julio de 2022 tras cinco años.
¿Podría pasar esto en un juego provably fair?
No por esta vía. El operador se compromete con su seed mediante un hash publicado antes de la apuesta, el jugador aporta su propia seed después, y el resultado es una función de ambas, así que un interno que haya escrito el código y tenga la server seed aún no puede elegir el resultado. Lo que sigue siendo posible es un servidor que no honre su compromiso, por eso el hash se publica primero y la seed del jugador es suya para fijar.
FUENTES Y REFERENCIAS
- The Daily Beast — M.L. Nestel, “Inside the Biggest Lottery Scam Ever” (7 de julio de 2015): la compra en QuikTrip ($3.17 en hot dogs, dos boletos, ~3:30 p.m.), la cámara de un segundo por minuto, la visita a la sala de sorteo el 20 de noviembre de 2010, el reclamo de Hexham/“Hexam” 1 h 50 min antes de vencer, el retiro de enero de 2012
- CNN — “Ex-lottery worker who rigged winnings gets 25 years in prison” (22 de agosto de 2017): la sentencia, la restitución de $2.2 millones repartida ($1.1 millones Colorado, $644,000 Oklahoma, $391,000 Wisconsin, $30,000 Kansas), la declaración de culpabilidad de junio de 2017 por conducta criminal continuada en siete boletos en cinco estados, el bote de $14.3 millones de Iowa
- Associated Press vía NBC26 — “Brother of jackpot rigger in massive lottery scandal arrested” (2016): los segmentos de código de Wisconsin, la parte de $568,990 de Colorado de un bote de $4.5 millones, “cada uno de los seis fue sorteado el 23 de noviembre o el 29 de diciembre entre 2005 y 2011”
- Wikipedia — “Hot Lotto fraud scandal” (resumiendo el Des Moines Register, AP, Ars Technica y State v. Tipton, 897 N.W.2d 653 (Iowa 2017)): el hallazgo forense de Wisconsin (27 de mayo, 23 de noviembre, 29 de diciembre; miércoles/sábado; después de las 8 p.m.), los botes por estado, la apelación, la confesión de 2017, la libertad condicional en julio de 2022, la declaración de la Lotería de Iowa de abril de 2015
- Wikipedia — “Hot Lotto”: la matriz de 5 de 39 más 1 de 19 usada hasta mayo de 2013 y el calendario de sorteos de miércoles/sábado
- Código fuente del motor de Betkyo: _shared/seedApi.ts, _shared/demoLocal.ts, _shared/rng.ts (commit de server seed, client seed, HMAC-SHA256 por ronda) y OriginalBaseDiceService.kt (9,999 resultados, ×1.98 al 50%, 1% de ventaja)
- Cálculo para este artículo: C(39,5) × 19 = 575,757 × 19 = 10,939,383
LOS JUEGOS EN ESTE ARTÍCULO
Dice — reglas y juego gratis →Crash — reglas y juego gratis →