PROCEDIMIENTO PARA VERIFICAR ALEATORIA Y DINÁMICAMENTE LA INTEGRIDAD DE LA CONFIGURACIÓN DE UN SISTEMA DE JUEGO.
Un procedimiento para asegurar la validez de un conjunto de datos para su uso en un sistema de juego (10) de tipo casino,
comprendiendo el citado procedimiento los pasos de: (a) instalar (102) un conjunto de datos de juego en un módulo de juego (14); (b) proporcionar (104) una copia exacta de al menos una porción del conjunto de datos de juego en un módulo de supervisión (12); (c) generar aleatoria y dinámicamente (108, 154) un ejecutable de integridad en el módulo de supervisión, en el que la generación aleatoria del ejecutable de integridad hace que el ejecutable de integridad se genere en cualquier momento, sin seguir un patrón y la generación dinámica produce la generación de ejecutables de integridad cambiantes, no estáticos, siendo diferente cada generación de ejecutables de integridad de las otras; (d) enviar el ejecutable de integridad al módulo de juego; (e) utilizar el ejecutable de integridad, calcular (110) un primer resultado del conjunto de datos de juego en el módulo de juego; (f) después de calcular el primer resultado, enviar (216) el primer resultado al módulo de supervisión y retirar (214) el ejecutable de integridad del módulo de juego; (g) utilizar el ejecutable de integridad, calculando un segundo resultado de la copia exacta del conjunto de datos de juego en el módulo de supervisión, representando el segundo resultado una configuración prevista del conjunto de datos de juego en el módulo de juego; (h) comparar (112) los resultados primero y segundo para determinar si los resultados primero y segundo coinciden; (i) si los resultados primero y segundo coinciden, indicar que el conjunto de datos de juego es auténtico, y (j) los resultados primero y segundo coinciden no coinciden, indicar que el conjunto de datos de juego no es auténtico
Tipo: Patente Internacional (Tratado de Cooperación de Patentes). Resumen de patente/invención. Número de Solicitud: PCT/US2007/078410.
Solicitante: IGT.
Nacionalidad solicitante: Estados Unidos de América.
Dirección: 9295 PROTOTYPE DRIVE RENO, NV 89521-8986 ESTADOS UNIDOS DE AMERICA.
Inventor/es: BIGELOW,Robert,Jr. , DAVIS,Dwayne,A. , RADER,Kirk.
Fecha de Publicación: .
Fecha Solicitud PCT: 13 de Septiembre de 2007.
Clasificación Internacional de Patentes:
- G06F21/00N3P
Clasificación PCT:
- G06F21/00 FISICA. › G06 CALCULO; CONTEO. › G06F PROCESAMIENTO ELECTRICO DE DATOS DIGITALES (sistemas de computadores basados en modelos de cálculo específicos G06N). › Disposiciones de seguridad para la protección de computadores, sus componentes, programas o datos contra actividades no autorizadas.
Países PCT: Austria, Bélgica, Suiza, Alemania, Dinamarca, España, Francia, Reino Unido, Grecia, Italia, Liechtensein, Luxemburgo, Países Bajos, Suecia, Mónaco, Portugal, Irlanda, Eslovenia, Finlandia, Rumania, Chipre, Lituania, Letonia, Ex República Yugoslava de Macedonia, Albania.
Fragmento de la descripción:
ANTECEDENTES DE LA INVENCIÓN
Campo de la invención
La presente invención se refiere a máquinas de juego y más particular, a procedimientos de verificación de la integridad de máquinas de juego remotas.
Descripción de la técnica relacionada
Un problema común para garantizar que el sistema informático distribuido continúa operando de una manera correcta, segura y estable se produce debido a la facilidad con la que los dispositivos informáticos individuales (por ejemplo, estaciones de trabajo de sobremesa, dispositivos clientes portátiles, plataformas de servidor, etc.) puede tener ajustes de configuración cambiados, componentes de hardware añadidos o retirados y componentes de software de aplicación instalados o desinstalados.
La industria del juego, en particular, debe someterse a una amplia regulación en múltiples jurisdicciones para garantizar que todos los dispositivos informáticos que se implementan como parte de un sistema de juego se ajustan exactamente a la configuración de hardware y de software aprobada previamente. A medida que la industria evoluciona desde sistemas que están basados en gran medida, o totalmente, en componentes de hardware y de software desarrollados de una manera personalizada hacia la introducción de productos comerciales existentes más sofisticados, la dificultad de monitorizar y controlar la configuración de esos sistemas aumenta en gran medida, incluso debido a que la necesidad de la citada monitorización se hace más rigurosa.
Para satisfacer los requisitos de seguridad y reglamentarios en un entorno de juego, una máquina de juego debe demostrar que posee garantías suficientes que eviten que un operador o jugador de la máquina de juego pueda manipular el hardware y el software de una manera que le proporcione una ventaja injusta y en algunos casos ilegal. La máquina de juego incluye típicamente un medio para determinar si el código que ejecutará es válido y si el código ha sido manipulado indebidamente. Si el código no es válido o ha sido manipulado indebidamente, se considera que la máquina de juego ha quedado comprometida y el juego se detiene
o se suspende. Esto también puede activar operaciones de seguridad adicionales.
Las salvaguardias de juego adoptan una variedad de formas. Las máquinas de juego pueden incluir medidas de seguridad que detectan la intrusión física. Por ejemplo, las máquinas de juego pueden incluir un sistema de seguridad que monitoriza los conmutadores de seguridad que se encuentran fijados a las puertas de acceso de la máquina de juego. Las máquinas de juego también pueden utilizar cintas de evidencia para detectar físicamente manipulaciones indebidas entre las visitas que realiza un regulador de juego. La cinta de evidencia se dispone a través de un dispositivo de memoria que se ha instalado, y si está rota, indica que el dispositivo de memoria ha sido manipulado indebidamente.
Las máquinas de juego también pueden incluir medidas de seguridad que detectan la intrusión electrónica. Si el código está almacenado en un dispositivo de memoria de sólo lectura, tal como una EPROM, una firma única puede ser determinada por el código almacenado en la EPROM utilizando un procedimiento tal como un CRC. A continuación, antes de instalar la EPROM en la máquina de juego, la firma única se puede comparar con una firma aprobada.
En subsistemas de memoria menos seguros, se pueden utilizar dispositivos de memoria de confianza para garantizar la autenticidad del código. Los dispositivos de memoria de confianza y la circuitería de control están diseñados típicamente para no permitir la modificación del código ni de los datos almacenados en el dispositivo de memoria mientras el dispositivo de memoria esté instalado en la máquina de juego. El código y los datos almacenados en estos dispositivos pueden incluir algoritmos de autenticación, generadores de números aleatorios, claves de autenticación, núcleos de sistema operativo, etc. El objetivo de estos dispositivos de memoria de confianza es proporcionar a las autoridades reguladoras del juego una base de autoridad de confianza dentro del entorno informático de la máquina tragaperras que se puede seguir y verificar como original. Esto se puede lograr por medio de la retirada del dispositivo de memoria de confianza del ordenador de las máquinas tragaperras y la verificación de los contenidos del dispositivo seguro de memoria en un tercer dispositivo de verificación separado. Una vez que el dispositivo de memoria de confianza es verificado como auténtico, y en base a los algoritmos de aprobación contenidos en el dispositivo de confianza, se permite que la máquina de juego verifique la autenticidad del código y los datos adicionales que puedan estar localizados en el conjunto de ordenador de juego, tales como el código y los datos almacenados en unidades de disco duro.
El documento norteamericano número 2003/0191942 de Sinha se refiere a una implementación de tecnología para facilitar la protección de las instrucciones ejecutables por ordenador, tales como el software. Sinha sugiere la generación de firmas de integridad para múltiples conjuntos de instrucciones ejecutables por ordenador sobre la base de la traza de salida y / o de la traza de ejecución de tales conjuntos. Se puede realizar una determinación respecto a si dos o más de estos conjuntos son duplicados no alterados mediante la comparación de las firmas de integridad de tales conjuntos.
Aunque estas medidas funcionan bien, se desean sistemas y técnicas mejorados para garantizar que el dispositivo de juego sigue operando de una manera correcta, segura y estable.
SUMARIO DE LA INVENCIÓN
De acuerdo con un primer aspecto de la presente invención, se proporciona un procedimiento para asegurar la validez de un conjunto de datos para su uso en un sistema de juego de tipo casino, comprendiendo el citado procedimiento los pasos de: (a) instalar un conjunto de datos de juego en un módulo de juego, (b) proporcionar una copia exacta de al menos una porción del conjunto de datos de juego en un módulo de supervisión; (c) generar aleatoria y dinámicamente un ejecutable de integridad en el módulo de supervisión, en el que la generación aleatoria del ejecutable de integridad hace que el ejecutable de integridad se genere en cualquier momento, sin seguir un patrón y la generación dinámica produce la generación de ejecutables de integridad no estáticos cambiantes, siendo diferente cada uno de ellos de otra generación del ejecutable de integridad; (d) enviar el ejecutable de integridad al módulo de juego; (e) utilizar el ejecutable de integridad, calcular un primer resultado del conjunto de datos del juego en el módulo de juego; (f) después de calcular el primer resultado, enviar el primer resultado al módulo de supervisión y retirar el ejecutable de integridad del módulo de juego; (g) usando el ejecutable de integridad, calcular un segundo resultado de la copia exacta del conjunto de datos del juego en el módulo de supervisión, representando el segundo resultado una configuración prevista del conjunto de datos de juego en el módulo de juego; (h) comparar los resultados primero y segundo para determinar si los resultados primero y segundo coinciden; (i) si los resultados primero y segundo coinciden, indicar que el conjunto de datos del juego es auténtico, y (j) si los resultados primero y segundo no coinciden, indicar que el conjunto de datos del juego no es auténtico.
La invención se refiere, en otra realización, a un procedimiento para ejecutar una verificación de integridad de la configuración de sistema. El procedimiento incluye, en un ordenador principal, el mantenimiento de una base de datos de configuraciones de sistema previstas de uno o más sistemas remotos. El procedimiento también incluye, en el servidor, generar aleatoria y dinámicamente un módulo ejecutable que contiene un algoritmo que está configurado para generar una firma única del estado del sistema remoto particular. El procedimiento incluye, además, enviar el módulo ejecutable al sistema remoto particular. El procedimiento incluye, además, en el sistema remoto particular, ejecutar el módulo ejecutable con el fin de generar una firma única del estado de la configuración de sistema actual del sistema remoto particular. El procedimiento incluye también devolver la firma única al ordenador principal y retirar el módulo ejecutable del sistema remoto particular. El procedimiento incluye además, en el ordenador principal, generar una firma única del estado de la configuración...
Reivindicaciones:
1. Un procedimiento para asegurar la validez de un conjunto de datos para su uso en un sistema de juego (10) de tipo casino, comprendiendo el citado procedimiento los pasos de:
(a) instalar (102) un conjunto de datos de juego en un módulo de juego (14);
(b) proporcionar (104) una copia exacta de al menos una porción del conjunto de datos de juego en un módulo de supervisión (12);
(c) generar aleatoria y dinámicamente (108, 154) un ejecutable de integridad en el módulo de supervisión, en el que la generación aleatoria del ejecutable de integridad hace que el ejecutable de integridad se genere en cualquier momento, sin seguir un patrón y la generación dinámica produce la generación de ejecutables de integridad cambiantes, no estáticos, siendo diferente cada generación de ejecutables de integridad de las otras;
(d) enviar el ejecutable de integridad al módulo de juego;
(e) utilizar el ejecutable de integridad, calcular (110) un primer resultado del conjunto de datos de juego en el módulo de juego;
(f) después de calcular el primer resultado, enviar (216) el primer resultado al módulo de supervisión y retirar (214) el ejecutable de integridad del módulo de juego;
(g) utilizar el ejecutable de integridad, calculando un segundo resultado de la copia exacta del conjunto de datos de juego en el módulo de supervisión, representando el segundo resultado una configuración prevista del conjunto de datos de juego en el módulo de juego;
(h) comparar (112) los resultados primero y segundo para determinar si los resultados primero y segundo coinciden;
(i) si los resultados primero y segundo coinciden, indicar que el conjunto de datos de juego es auténtico, y
(j) los resultados primero y segundo coinciden no coinciden, indicar que el conjunto de datos de juego no es auténtico.
2. El procedimiento de acuerdo con la reivindicación 1, que comprende, además: si el primer resultado no se recibe dentro de un período predeterminado de tiempo desde que fue enviado el ejecutable de integridad, indicar que el conjunto de
datos del juego no es auténtico.
3. El procedimiento de acuerdo con la reivindicación 1, en el que el módulo de supervisión está almacenado en un dispositivo servidor (52) y el módulo de juego está almacenado en un dispositivo cliente (54, 56).
4. El procedimiento de acuerdo con la reivindicación 3, en el que el dispositivo servidor
(52) es un servidor de juego central y el dispositivo cliente es un terminal de juego remoto.
5. El procedimiento de acuerdo con la reivindicación 3, en el que el dispositivo servidor es un terminal de juego remoto y el dispositivo cliente es un reproductor de juego portátil.
6. El procedimiento de cualquiera de las reivindicaciones 1 a 3, que comprende, además: seleccionar uno o varios algoritmos de seguridad sobre la base de al menos una porción del conjunto de datos de juego en el módulo de supervisión, en el que el ejecutable de integridad se basa en la configuración de sistema del módulo de juego e incluye uno o más algoritmos de seguridad.
7. El procedimiento de cualquiera de las reivindicación precedente, que comprende ade
más: mantener una base de datos de las configuraciones de sistema previstas de uno
o más módulos de juego remoto en un principal basado en el servidor; y en el que el primer resultado es una firma única del estado de la configuración actual del sistema de un módulo de juego particular.
8. El procedimiento de la reivindicación 1 ó 6, en el que: el ejecutable de integridad contiene uno o más algoritmos que se ejecutan en al menos una porción de una configuración de sistema particular de un módulo de juego particular; si el primer resultado es recibido por el módulo de supervisión, determinar si el módulo de juego es un dispositivo de confianza basado en el primer resultado; si la respuesta no se recibe dentro de un intervalo de tiempo predeterminado, indicar que el módulo de juego al cual se envió el ejecutable de integridad ya no es de confianza, y enviar una respuesta de confianza al módulo de juego, indicando la respuesta de confianza que el módulo de juego es de confianza o no es de confianza.
9. El procedimiento de acuerdo con la reivindicación 8, que comprende, además: almacenar al menos la porción de la configuración de sistema prevista del módulo de juego particular, incluyendo la porción al menos los datos no comprometibles.
10. El procedimiento de acuerdo con la reivindicación 9, en el que los datos no comprometibles son los datos de juego.
11. El procedimiento de cualquiera de las reivindicaciones 8 ó 9, que comprende, además: cifrar el ejecutable de integridad para evitar que cualquiera, excepto el módulo de juego, pueda leer el ejecutable, en el que el ejecutable de integridad está cifrado con una clave pública almacenada en un servidor y se descifra con la clave privada almacenada en el módulo de juego.
12. El procedimiento de cualquiera de las reivindicaciones 8 a 11, que comprende, además: enviar un comando al módulo de juego cuando el dispositivo cliente ya no es de confianza, instruyendo el comando al cliente a que interrumpa las operaciones, borre los datos o inicie una alarma.
13. El procedimiento de cualquiera de las reivindicación precedentes, en el que el ejecuta
ble de integridad se determinará haciendo referencia a: i) los datos almacenados en una base de datos de configuraciones del módulo de juego, estando basado el ejecutable de integridad en un conjunto de datos completo o en uno o varios subconjuntos de datos, y ii) una base de datos de algoritmos (22) que incluye una multiplicidad de algoritmos de seguridad, en el que cualquier número (260) de los algoritmos de seguridad se compila (262) para generar el ejecutable de integridad y en el que se selecciona una orden de ejecución de los algoritmos de seguridad en el ejecutable de integridad.
Patentes similares o relacionadas:
SISTEMA DE JUEGO ELECTRÓNICO DE CASINO CON MAYOR CAPACIDAD DE JUEGO, DE AUTENTICACIÓN Y DE SEGURIDAD, del 26 de Abril de 2011, de IGT: LA INVENCION SE REFIERE A UN SISTEMA DE JUEGO ELECTRONICO DE UN CASINO CONSISTENTE EN VARIOS COMPONENTES DEL SISTEMA, INCLUYENDO UN MICROPROCESADOR , UNA UNIDAD DE MEMORIA […]
MÉTODO DE ACTUALIZACIÓN Y DE GESTIÓN DE UNA APLICACIÓN DE TRATAMIENTO DE DATOS AUDIOVISUALES INCLUIDA EN UNA UNIDAD MULTIMEDIA MEDIANTE UN MÓDULO DE ACCESO CONDICIONAL, del 10 de Febrero de 2011, de NAGRAVISION S.A.: Método de actualización y de gestión de una aplicación APP de tratamiento de datos audiovisuales incluida en una unidad multimedia PC, a través de un módulo de […]
DISPOSITIVO INALAMBRICO MOVIL SEGURO, del 5 de Agosto de 2010, de NOKIA CORPORATION: Un dispositivo inalámbrico móvil seguro para un solo usuario en el que está instalado código ejecutable nativo, incluyendo el dispositivo: una pluralidad de […]
SISTEMA Y METODO DE ACTIVACION DE LA FUNCION DE SEGURIDAD PARA UN DISPOSITIVO ELECTRONICO MOVIL, del 7 de Diciembre de 2009, de RESEARCH IN MOTION LIMITED: Un sistema para activar una o más funciones de seguridad de un dispositivo móvil , que comprende: a) un portador de dispositivo móvil; y b) […]
Funcionamiento de red de frecuencia única (SFN) para mejoras de cobertura de comunicaciones de tipo máquina (MTC), del 17 de Junio de 2020, de QUALCOMM INCORPORATED: Un procedimiento para comunicaciones de tipo máquina, MTC, inalámbricas realizado por un dispositivo remoto caracterizado por: detectar […]
Método y aparato de procesamiento de servicio, del 3 de Junio de 2020, de Advanced New Technologies Co., Ltd: Un método para el procesamiento de servicios, el método que comprende: después de recibir una solicitud de procesamiento de servicios de un usuario, […]
Dispositivo de a bordo para un vehículo, del 20 de Mayo de 2020, de AUTOSTRADE TECH S.p.A: Dispositivo de a bordo (100, 100', 100") para un vehículo, siendo adecuado dicho dispositivo de a bordo (100, 100', 100") para su uso en un sistema […]
Método para detectar software clonado, del 29 de Abril de 2020, de NAGRAVISION S.A.: Método para detectar un software clonado para ser usado en una unidad de usuario cliente que se comunica con un servidor para solicitar un servicio enviando una solicitud […]