Process verification
First Claim
1. A method of verifying the authenticity of a first gaming software program temporarily stored in RAM of a gaming machine having a master gaming controller for executing said gaming software program, the method comprising:
- (a) identifying the first gaming software program as currently stored in the gaming machine RAM;
(b) identifying a second gaming software program stored on a file storage device;
(c) selecting the second gaming software program from a list of certified gaming software programs wherein the certified gaming software programs are stored on one or more file storage devices; and
(d) comparing at least a first portion of the second gaming software program with a first portion of the first gaming software program as currently stored in the gaming machine RAM, wherein the first portion of the gaming software program is a portion of the first gaming software program that does not change during execution of said first gaming software program.
2 Assignments
0 Petitions
Accused Products
Abstract
A disclosed gaming machine provides methods and apparatus of verifying the authenticity of gaming software stored in and executed from RAM on the gaming machine. When presenting a game on the gaming machine, a master gaming controller may dynamically load gaming software applications into RAM and dynamically unload gaming software applications from RAM. The authenticity of the gaming software applications temporarily stored in RAM may be verified by using methods to compare it with certified gaming software stored on one or more local or remote file storage devices accessible to the master gaming controller on the gaming machine. The verification process may be used to satisfy gaming regulatory entities within various gaming jurisdictions that require certified gaming software to be operating on the gaming machine at all times as well as to prevent tampering with the gaming machine.
-
Citations
69 Claims
-
1. A method of verifying the authenticity of a first gaming software program temporarily stored in RAM of a gaming machine having a master gaming controller for executing said gaming software program, the method comprising:
-
(a) identifying the first gaming software program as currently stored in the gaming machine RAM;
(b) identifying a second gaming software program stored on a file storage device;
(c) selecting the second gaming software program from a list of certified gaming software programs wherein the certified gaming software programs are stored on one or more file storage devices; and
(d) comparing at least a first portion of the second gaming software program with a first portion of the first gaming software program as currently stored in the gaming machine RAM, wherein the first portion of the gaming software program is a portion of the first gaming software program that does not change during execution of said first gaming software program. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 26)
generating an error condition when the first portion of the second gaming software program does not match the first portion of the first gaming software program stored in RAM.
-
-
9. The method of claim 1, further comprising:
comparing a plurality of portions of the second gaming software program with a plurality of portions of the first gaming software program as currently stored in the gaming machine RAM.
-
10. The method of claim 9, further comprising:
generating an error condition when at least one of the plurality of compared portions of the second gaming software program does not match at least one of the plurality of portions of the first gaming software program stored in RAM.
-
11. The method of claim 1, further comprising:
identifying an executable file name for the first gaming software program.
-
12. The method of claim 11, further comprising:
identifying the second gaming software program using the executable file name.
-
13. The method of claim 1, wherein the second gaming software program includes a substantially identical copy of the executable code of the first gaming software program.
-
14. The method of claim 1, further comprising:
identifying a memory location in RAM of the first gaming software program.
-
15. The method of claim 1, further comprising:
identifying the first gaming software program from a directory of processes scheduled for execution on the gaming machine.
-
16. The method of claim 1, further comprising:
presenting a game of chance on the gaming machine.
-
17. The method of claim 1, wherein the game of chance is a video slot game, a mechanical slot game, a lottery game, a video poker game, a video black jack game, a video card game, a video bingo game, a video keno game, and a video pachinko game.
-
18. The method of claim 1, wherein the first gaming software program as currently stored in the gaming machine RAM is managed using an operating system using a virtual memory system.
-
19. The method of claim 1, wherein the first gaming software program as currently stored in the gaming machine RAM is managed using a Unix-based operating system.
-
26. The method of claim 5, further comprising:
computer readable code for generating an error condition when at least one of the plurality of compared portions of the second gaming software program does not match at least one of the plurality of portions of the first gaming software program stored in RAM.
-
20. A computer readable medium containing computer-readable instructions for verifying the authenticity of a first gaming software program stored in RAM of a gaming machine having a master gaming controller for executing said gaming software program, said computer readable medium comprising:
-
(a) computer readable code for identifying the first gaming software program as currently stored in the gaming machine RAM;
(b) computer readable code for identifying a second gaming software program stored on a file storage device;
(c) computer readable code for selecting the second gaming software program from a list of certified gaming software programs wherein the certified gaming software programs are stored on one or more file storage devices; and
(d) computer readable code for comparing at least a first portion of the second gaming software program with a first portion of the first gaming software program as currently stored in the gaming machine RAM, wherein the first portion of the gaming software program is a portion of the first gaming software program that does not change during execution of said first gaming software program. - View Dependent Claims (21, 22, 23, 24, 25, 27, 28, 29, 30, 31)
computer readable code for generating an error condition when the first portion of the second gaming software program does not match the first portion of the first gaming software program stored in RAM.
-
-
25. The method of claim 20, further comprising:
computer readable code for comparing a plurality of portions of the second gaming software program with a plurality of portions of the first gaming software program as currently stored in the gaming machine RAM.
-
27. The method of claim 20, further comprising:
identifying an executable file name for the first gaming software program.
-
28. The method of claim 27, further comprising:
identifying the second gaming software program using the executable file name.
-
29. The method of claim 20, wherein the second gaming software program includes a substantially identical copy of the executable code of the first gaming software program.
-
30. The method of claim 20, further comprising:
identifying a memory location in RAM of the first gaming software program.
-
31. The method of claim 20, further comprising:
identifying the first gaming software program from a directory of processes scheduled for execution on the gaming machine.
-
32. A gaming machine comprising:
-
a master gaming controller that controls a game of chance played on the gaming machine and executes gaming logic, said master gaming controller comprising;
(i) one or more logic devices designed or configured to execute a plurality of gaming software programs used to present said game of chance on the gaming machine;
(ii) a RAM that stores one or more of the plurality of gaming software programs during execution; and
gaming logic for comparing a first portion of a first gaming software program as currently stored in the gaming machine RAM with at least a first portion of a second gaming software program, wherein the second gaming software program is selected from a list of certified gaming software programs stored on one or more file storage devices. - View Dependent Claims (33, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44)
a file storage device storing said second gaming software program.
-
-
36. The gaming machine of claim 35, wherein the file storage device is selected from the group consisting of a hard drive, a CD-ROM drive, a CD-DVD drive, compact flash, smart media, disk-on-chip and removable media.
-
37. The gaming machine of claim 35, wherein the file storage device is located on the gaming machine.
-
38. The gaming machine of claim 35, wherein the file storage device is remote to the gaming machine.
-
39. The gaming machine of claim 32, further comprising:
gaming logic designed to locate the second gaming software program in a file structure with a plurality of file names.
-
40. The gaming machine of claim 39, further comprising:
a static memory storage device storing the gaming logic designed to locate the second gaming software program.
-
41. The gaming machine of claim 40, wherein the static memory storage device is selected from the group consisting of an EPROM, a flash memory, a non-volatile memory storage device.
-
42. The gaming machine of claim 40, further comprising:
a list of gaming software file names stored on the static memory storage device wherein the gaming software files on the list are approved for execution on the gaming machine.
-
43. The gaming machine of claim 32, wherein the game of chance is a video slot game, a mechanical slot game, a lottery game, a video poker game, a video black jack game, a video card game, a video bingo game, a video keno game and a video pachinko game.
-
44. The gaming machine of claim 32, wherein the gaming software programs stored in RAM changes as a function of time.
-
45. A gaming machine network comprising:
-
a plurality of file storage devices storing gaming software programs;
a plurality of gaming machines, each gaming machine comprising;
a master gaming controller that controls a game of chance played on the gaming machine and executes gaming logic, said master gaming controller comprising;
(i) one or more logic devices designed or configured to execute a plurality of gaming software programs used to present said game of chance on the gaming machine;
(ii) a RAM that stores one or more of the plurality of gaming software programs during execution;
gaming logic for comparing a first portion of a first gaming software program as currently stored in the gaming machine RAM with at least a first portion of a second gaming software program stored on at least one of the plurality of file storage devices, wherein the second gaming software program is selected from a list of certified gaming software programs stored on one or more of the file storage devices; and
a network allowing communication between the file storage devices and the plurality of gaming machines. - View Dependent Claims (34, 46, 47, 48, 49)
gaming logic designed to locate the second gaming software program stored on at least one of the file storage devices.
-
-
49. The gaming machine network of claim 45, wherein the game of chance is a video slot game, a mechanical slot game, a lottery game, a video poker game, a video black jack game, a video card game, a video bingo game, a video keno game and a video pachinko game.
-
50. A method of verifying the authenticity of a first gaming software program temporarily stored in RAM of a gaming machine having a master gaming controller for executing said gaming software program, the method comprising:
-
(a) identifying the first gaming software program as currently stored in the gaming machine RAM;
(b) identifying an executable file name for the first gaming software program;
(c) identifying a second gaming software program stored on a file storage device, wherein identifying the second gaming software program includes using the executable file name;
(d) comparing at least a first portion of the second gaming software program with a first portion of the first gaming software program as currently stored in the gaming machine RAM, wherein the first portion of the gaming software program is a portion of the first gaming software program that does not change during execution of said first gaming software program. - View Dependent Claims (51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67)
generating an error condition when the first portion of the second gaming software program does not match the first portion of the first gaming software program stored in RAM.
-
-
58. The method of claim 50, further comprising:
comparing a plurality of portions of the second gaming software program with a plurality of portions of the first gaming software program as currently stored in the gaming machine RAM.
-
59. The method of claim 58, further comprising:
generating an error condition when at least one of the plurality of compared portions of the second gaming software program does not match at least one of the plurality of portions of the first gaming software program stored in RAM.
-
60. The method of claim 50, wherein the second gaming software program includes a substantially identical copy of the executable code of the first gaming software program.
-
61. The method of claim 50, further comprising:
identifying a memory location in RAM of the first gaming software program.
-
62. The method of claim 50, further comprising:
identifying the first gaming software program from a directory of processes scheduled for execution on the gaming machine.
-
63. The method of claim 50, further comprising:
selecting the second gaming software program from a list of certified gaming software programs wherein the certified gaming software programs are stored on one or more file storage devices.
-
64. The method of claim 50, further comprising:
presenting a game of chance on the gaming machine.
-
65. The method of claim 50, wherein the game of chance is a video slot game, a mechanical slot game, a lottery game, a video poker game, a video black jack game, a video card game, a video bingo game, a video keno game, and a video pachinko game.
-
66. The method of claim 50, wherein the first gaming software program as currently stored in the gaming machine RAM is managed using an operating system using a virtual memory system.
-
67. The method of claim 50, wherein the first gaming software program as currently stored in the gaming machine RAM is managed using a Unix-based operating system.
-
68. A gaming machine comprising:
-
a master gaming controller that controls a game of chance played on the gaming machine and executes gaming logic, said master gaming controller comprising;
(i) one or more logic devices designed or configured to execute a plurality of gaming software programs used to present said game of chance on the gaming machine;
(ii) a RAM that stores one or more of the plurality of gaming software programs during execution; and
gaming logic for;
identifying an executable file name for a first gaming software program as currently stored in RAM;
identifying a second gaming software program stored on a file storage device using the executable file name; and
comparing a first portion of a first gaming software program as currently stored in the gaming machine RAM with at least a first portion of the second gaming software program.
-
-
69. A gaming machine network comprising:
-
a plurality of file storage devices storing gaming software programs;
a plurality of gaming machines, each gaming machine comprising;
a master gaming controller that controls a game of chance played on the gaming machine, said master gaming controller comprising;
(i) one or more logic devices designed or configured to execute a plurality of gaming software programs used to present said game of chance on the gaming machine;
(ii) a RAM that stores one or more of the plurality of gaming software programs during execution;
gaming logic for;
identifying an executable file name for a first gaming software program as currently stored in RAM;
identifying a second gaming software program stored on a file storage device using the executable file name;
comparing a first portion of a first gaming software program as currently stored in the gaming machine RAM with at least a first portion of a second gaming software program stored on at least one of the plurality of file storage devices; and
a network allowing communication between the file storage devices and the plurality of gaming machines.
-
Specification