Electronic casino gaming system with improved play capacity, authentication and security
The electronic casino gaming system consists of several system components, including a microprocessor (12), a main memory unit (13) that is typically a random access memory, and a system boot ROM (14). Also included in the electronic casino gaming system are a non-volatile RAM (17), a mass storage unit (18), a disk subsystem (19), and a PCI bus (20). The disk subsystem (19) preferably supports SCSI-2 with options of fast and wide. A video subsystem (22) is also included in the electronic casino gaming system and is coupled to the PCI bus (20) to provide full color still images and MPEG movies.
Latest IGT Patents:
This application is the national stage of International Application No. PCT/US96/10463, filed on Jun. 17, 1996, which is a continuation-in-part of U.S. application Ser. No. 08/497,662, now U.S. Pat. No. 5,643,086, filed on Jun. 29, 1995.
Notice: More than one reissue application has been filed for the reissue of U.S. Pat. No. 6,106,396. The reissue applications are Reissue application Ser. No. 10/225,096 filed Aug. 21, 2002, Reissue application Ser. No. 10/224,680 filed Aug. 21, 2002, Reissue application Ser. No. 10/225,116 filed Aug. 21, 2002, Reissue application Ser. No. 10/225,097 filed Aug. 21, 2002 (the present application) and Reissue application Ser. No. 10/224,699 filed Aug. 21, 2002, all of which are divisional reissues of U.S. Pat. No. 6,106,396, which issued from U.S. Ser. No. 08/981,882 which is the U.S. national phase of International Application No. PCT/US96/10463 filed Jun. 17, 1996, which is a continuation-in-part of U.S. Ser. No. 08/497,662 filed Jun. 29, 1995, now U.S. Pat. No. 5,643,086.
BACKGROUND OF THE INVENTION1. Field of the Invention
This invention relates to microprocessor based gaming Systems used in gambling casinos.
2. Brief Description of the Prior Art
Microprocessor based gaming systems are known which are used in gambling casinos to augment the traditional slot machine games (e.g. three reel single or multi-line games) and card games, such as poker and black jack. In a typical gaming system of this type, a microprocessor based system includes both hardware and software components to provide the game playing capabilities. The hardware components include a video display for displaying the game play, mechanical switches for enabling player selection of additional cards or game play choices, coin acceptors and detectors and the electronic components usually found in a microprocessor based system, such as random access memory (RAM), read only memory (ROM), a processor and one or more busses. The software components include the initialization software, credit and payout routines, the game image and rules data set, and a random number generator algorithm. In order to be acceptable for casino use, an electronic gaming system must provide both security and authentication for the software components. For this reason, gaming commissions have heretofore required that all software components of an electronic gaming system be stored in unalterable memory, which is typically an unalterable ROM. In addition, a copy of the contents of the ROM or a message digest of the contents (or both) are normally kept on file in a secure location designated by the gaming commission so that the contents of an individual ROM removed from a gaming machine can be verified against the custodial version.
In a typical arrangement, a message digest of the ROM contents is initially generated prior to the installation of the ROM in the machine by using a known algorithm usually referred to as a hash function. A hash function is a computation procedure that produces a fixed-size string of bits from a variable-size digital input. The fixed-sized string of bits is termed the hash value. If the hash function is difficult to invert—termed a one-way hash function—the hash function is also termed a message digest function, and the result is termed the message digest. The message digest is unique to any given variable size input data set, i.e., the game data set stored in the ROM. When it becomes necessary to later authenticate the ROM from any given machine, the ROM is physically removed from the game console and the message digest of the ROM contents is computed directly from the ROM using the original hash function. The computed message digest is compared with the message digest on file at the designated custodial location (typically in the casino itself). This procedure is typically carried out whenever a machine produces a payoff beyond a given threshold value. If the two message digests match, then the contents of the ROM are considered to be authenticated (verified) and the payout is made to the player.
While such electronic casino gaming systems have been found to be useful in promoting casino game play, the restriction requiring that the casino game program be stored in unalterable ROM memory, leads to a number of disadvantageous limitations. First, due to the limited capacity of the ROM storage media traditionally used to hold the program, the scope of game play available with such systems is severely limited. For sophisticated games using motion video and audio multi-media elements, much more memory capacity, on the order of hundreds of megabytes, is necessary. However, physical verification of such a large quantity of physical devices is not practical, and has thus far been an impediment to creating sophisticated games with more player appeal. Second, the authentication check is only conducted on a limited basis (usually after a jackpot) or other significant winning game outcome, and the authentication procedure requires that game play be halted until the ROM contents have been found to be authentic.
SUMMARY OF THE INVENTIONIn one aspect, the invention is directed to a casino gaming apparatus, comprising: a casino game console; a video display unit; a memory disposed in said casino game console, said memory having gaming data stored therein; and a processor disposed in said casino game console and being operatively coupled to said video display unit and said memory, said processor causing said gaming data to be checked based on a comparison of data generated by said processor from said gaming data with data previously generated from known gaming data, said processor utilizing a hash function in checking said gaming data, and said processor utilizing decryption in checking said gaming data.
In another aspect, the invention is directed to a casino gaming apparatus, comprising: a casino game console; a video display unit; a sound-generating apparatus; a first memory disposed in said casino game console; a second memory having a gigabyte storage capacity, said second memory having gaming data relating to a casino game stored therein, said second memory being disposed in said casino game console; and a processor disposed in said casino game console and being operatively coupled to said video display unit, said sound-generating apparatus, said first memory and said second memory, said processor causing said gaming data stored in said second memory to be transferred to said first memory, said processor causing said gaming data that was transferred from said second memory to said first memory to be authenticated, said processor causing said gaming data to be authenticated by: 1) subjecting said gaming data to a one-way hash function to generate a first message digest, 2) decrypting an encrypted message digest previously generated by subjecting known gaming data to a one-way hash function to generate a decrypted message digest, and 3) comparing said first message digest with said decrypted message digest, and said processor causing a remedial action to be taken if said gaming data is not authentic as determined by said processor.
Other aspects of the invention are defined by the claims set forth at the end of this patent.
The invention comprises an electronic casino gaming system which greatly expands casino game play capability and enhances security and authentication capabilities. More particularly, the invention comprises an electronic casino gaming system and method having greatly expanded mass storage capability for storing a multiplicity of high resolution, high sound quality casino type games, and provides enhanced authentication of the stored game program information with a high security factor.
According to a first aspect of the invention, authentication of a casino game data set is carried out within the casino game console using an authentication program stored in an unalterable ROM physically located within the casino game console. The casino game data set and a unique signature are stored in a mass storage device, which may comprise a read only unit or a read/write unit and which may be physically located either within the casino game console or remotely located and linked to the casino game console over a suitable network. The authentication program stored in the unalterable ROM performs an authentication check on the casino game data set at appropriate times, such as prior to commencement of game play, at periodic intervals or upon demand. At appropriate occasions, the contents of the unalterable ROM can be verified by computing the message digest of the unalterable ROM contents and comparing this computed message digest with a securely stored copy of the message digest computed from the ROM contents prior to installation in the casino game console.
From a process standpoint, this aspect of the invention comprises a method of authenticating a data set of a casino style game which consists of two phases: a game data set preparation phase and a game data set checking phase. In the game data set preparation phase, the method proceeds by providing a data set for a casino game, computing a first abbreviated bit string unique to the casino game data set, encrypting the first abbreviated bit string to provide an encrypted signature of the casino game data set, and storing the casino game data set and the signature in a mass storage device. The first abbreviated bit string is preferably computed using a hash function to produce a message digest of the casino game data set. The signature is then encrypted from the message digest. After storage of the game data set and unique signature, this information is installed in a casino game console. The casino game data set checking phase proceeds by computing a second abbreviated bit string from the stored casino game data set using the same hash function, decrypting the stored encrypted signature to recover the first abbreviated bit string, and comparing the first and second abbreviated bit strings to determine whether the two strings match. If a match does occur the casino game data set is deemed authentic; if there is no match, authentication is denied and game play is prohibited.
The encryption/decryption process is preferably performed using a private key-public key technique in which the first abbreviated bit string is encrypted by the game manufacturer using a private encryption key maintained in the custody of the game manufacturer. The decryption of the signature is performed using a public key which is contained in an unalterable read only memory element located in the game console, along with the casino game data set. The casino game data set is preferably stored in a mass storage device, such as a magnetic or CD-ROM disk drive unit or a network file unit, the selected unit having a relatively large capacity. The actual size of the mass storage device will depend upon the casino game storage requirements and can be tailored to any specific application.
Each time a casino game data set is transferred from the mass storage device to the main memory of the system, the authentication routine is run. The authentication routine can also be means of an operator switch mounted in the game console or remotely via a network. Consequently, the authenticity of the data set can be automatically checked whenever the transfer occurs and at other appropriate times.
In order to detect attempts to tamper with the contents of the unalterable read only memory element located in the game console, a message digest computed for the authentication program stored therein is stored in a secure manner in a different location from the game console, such as the casino operator's security facilities or the facilities of a gaming commission (or both). The authenticity of the unalterable read only memory element is checked in the same way as that now performed in prior art devices: viz. computing the message digest directly from the unalterable read only memory device, and comparing the message digest thus computed with the custodial version.
From an apparatus standpoint, the first aspect of the invention comprises an electronic casino gaming system having means for providing authentication of a game data set of a casino type game prior to permitting game play, the system including first means for storing a casino game data set and a signature of the casino game data set, the signature comprising an encrypted version of a unique first abbreviated bit string computed from the casino game data set; second means for storing an authentication program capable of computing a second abbreviated bit string from the casino game data set stored in the first storing means and capable of decrypting the encrypted signature stored in the first storing means to recover the first abbreviated bit string; processing means for enabling the authentication program to compute an abbreviated bit string from the casino game data set stored in the first storing means and for enabling the authentication program to decrypt the encrypted signature; and means for comparing the computed second abbreviated bit string with the decrypted abbreviated bit string to determine whether a match is present. The first storing means preferably comprises a mass storage device, such as a disk drive unit, a CD-ROM unit or a network storage unit. The second storing means preferably comprises an unalterable read only memory in which the authentication program is stored.
According to a second aspect of the invention, the authentication program stored in the unalterable ROM located within the casino game console is used to test the authenticity of all other programs and fixed data stored in memory devices in the electronic casino gaming system, such as a system boot ROM, memory devices containing the operating system program, system drivers and executive/loader programs, and other memory devices incorporated into the electronic casino game system architecture. The contents of each such memory device, whether program information or fixed data, include signatures encrypted from message digests computed using a hash function from the original program information or fixed data set. Upon system initialization, the authentication program in the unalterable ROM is used to authenticate the individual memory device contents in essentially the same fashion as that used to authenticate the casino game data sets. More specifically, the message digest for the given program or fixed data set is computed using the same hash function originally used to produce the message digest for that program or fixed data set. The encrypted signature is decrypted using the proper decryption program and decryption key to recover the message digest. The two versions of the message digest are then compared and, if found to be matching, the concerned program or fixed data set is deemed authentic and is permitted to be used by the system. Once all of the concerned programs and fixed data sets have been so authenticated, the casino game data set authentication procedure is run, after which game play is permitted (provided a match occurs).
From a process standpoint, this second aspect of the invention comprises a method of authenticating a program or data set of a casino style game which consists of two phases: a program or fixed data set preparation phase, and a program or fixed data set checking phase. In the program or fixed data set preparation phase, the method proceeds by providing a program or fixed data set for a casino game, computing a first abbreviated bit string unique to the program or fixed data set, encrypting the first abbreviated bit string to provide an encrypted signature of the program or fixed data set, and storing the program or fixed data set and the signature in a memory device. The first abbreviated bit string is preferably computed using a hash function to produce a message digest of the program or fixed data set. The signature is then encrypted from the message digest. After storage of the program or fixed data set and unique signature in the memory device, the memory device is installed in a casino game console. The casino game program or fixed data set checking phase proceeds by computing a second abbreviated bit string from the stored casino game program or fixed data set stored in the memory device using the same hash function, decrypting the encrypted signature stored in the memory device to recover the first abbreviated bit string, and comparing the first and second abbreviated bit strings to determine whether the two strings match. If a match does occur, the casino game program or fixed data set is deemed authentic; if thee is no match, authentication is denied and use of that casino game program or fixed data set is prohibited.
The authentication routine is run each time a given casino game program or fixed data set needs to be called or used. The authentication routine can also be run automatically on a periodic basis, or on demand—either locally by means of an operator switch mounted in the casino game console or remotely via a network. Consequently, the authenticity of the casino game program or fixed data set can be automatically checked whenever use of that program or fixed data set is required and at other appropriate times, such as in the course of a gaming commission audit.
From an apparatus standpoint this second aspect of the invention comprises an electronic casino gaming system for providing authentication of a casino game program or fixed data set prior to permitting system use of that casino game program or fixed data set, the system including first means for storing a casino game program or fixed data set and a signature of the casino game program or fixed data set; the signature comprising an encrypted version of a unique first abbreviated bit string computed from the casino game program or fixed data set; second means for storing an authentication program capable of computing a second abbreviated bit string from the casino game program or fixed data set stored in the first storing means and capable of decrypting the encrypted signature stored in the first storing means to recover the first abbreviated bit string; processing means for enabling the authentication program to compute an abbreviated bit string from the casino game program or fixed data set stored in the first storing means and for enabling the authentication program to decrypt the encrypted signature; and means for comparing the computed second abbreviated bit string with the decrypted abbreviated bit string to determine whether a match is present. The first storing means preferably comprises a memory device, such as a read only memory or random access memory. The second storing means preferably comprises an unalterable read only memory in which the authentication program is stored.
Electronic casino game systems incorporating the invention provide a vastly expanded capacity for more sophisticated and attractive casino-style games, while at the same time improving the authentication of the games without compromising security. In addition, casino game systems incorporating the invention provide great flexibility in changing casino game play, since the casino game data sets representing the various games can be stored in alterable media rather than read only memory units as with present casino game systems.
By separating the authentication process from the casino game data set storage, the invention affords secure distribution and execution of program code and data, regardless of the particular distribution or storage technique employed. More specifically, the invention allows the casino game data set to reside in any form of secondary storage media, such as the traditional ROM storage, hard magnetic disk drives and CD-ROM drives, or networked file systems. So long as the authentication procedure conducted on the game data set is performed using the authentication program stored in an unalterable ROM, and so long as that ROM can be verified reliably, any casino game data set can be loaded from any source and can be verified by the system at any time: either prior to use, during run-time, periodically during run-time or upon demand. The large quantities of storage that can be made available in a secure fashion using the invention, facilitates the creation of casino gaming systems offering both an increased diversity of games, and individual games of superior quality. In addition, the authentication of all casino game program and fixed data software ensures the integrity of all system software both prior to game play and thereafter at periodic or random intervals.
For a fuller understanding of the nature and advantages of the invention, reference should be had to the ensuing detailed description taken in conjunction with the accompanying drawings.
Turning now to the drawings,
A mass storage unit implemented in the
A video subsystem 22 is coupled to the PCI bus and provides the capability of displaying full color still images and MPEG movies with a relatively high frame rate (e.g. 30 frames per second) on an appropriate monitor (not shown). Optional 3D texture mapping may be added to this system, if desired.
A sound subsystem 23 having a stereo sound playback capability with up to 16 bit CD quality sound is coupled to an ISA bus 24. A general purpose input/output unit 25 provides interfaces to the game mechanical devices (not illustrated) such as manually actuatable switches and display lights. A first bridge circuit 27 provides an interface between microprocessor 12, ROM 14, main memory 13 and PCI bus 20. Bridge circuit 27 is preferably a TRITON chip set available from INTEL Corporation. A second bridge circuit 28 provides an interface between the PCI bus 20 and the ISA bus 24. Bridge circuit 28 is preferably a type 82378 chip available from Intel Corporation.
The decryption key component 34 comprises the decryption key that is required to decrypt any of the encrypted signatures 37 in the manner described below during the authentication routine.
In order to ensure that the authentication routine cannot be bypassed by tampering with the loader program stored in ROM 30, an initial part of the loader program is incorporated into unalterable ROM 29. This initial portion of the loader program requires that the authentication program be called prior to the initiation of any casino game play. Since this initial portion of the loader program is located in the unalterable ROM 29, and since no casino game play can occur until the particular casino game application data set 36 is loaded into main memory 13, the authentication procedure cannot be bypassed by tampering with the software stored in ROM 30.
Since authentication of the game data set 36 and signature 37 is entrusted to the contents of ROM 29, a procedure must be provided to verify the ROM 29 contents. For this purpose, a message digest is computed for the authentication program stored in ROM 29, and this message digest is stored in a secure manner with the casino operator or the gaming commission (or both) along with the hash function used to produce the message digest. This hash function may be the same hash function used to compute the message digest 42 of the casino game data set or a different hash function. In this way, the authenticity of the ROM 29 can be easily checked in the same way as that now performed in prior art devices: viz. computing the message digest directly from the ROM 29 and comparing the message digest thus computed with the custodial version of the message digest. If required by a given gaming commission or deemed desirable by a casino operator, the system may also display the message digest 42 of each particular data set 36 or the encrypted signature version 37 for auditing purposes. In addition, the system may transmit this information via networking subsystem 21 to an on-site or off-site remote location (such as the office of the gaming commission). The message digest displayed or transmitted may comprise the decrypted version or the computed version (or both).
The authentication procedure carried out by means of the message digest program 32, decryption program 33 and decryption key 34 stored in unalterable ROM 29 in the manner described above is also used to authenticate the contents of all memory devices in the
An alternative approach to the secure loading of software into the system is depicted in FIG. 6. In this embodiment the basic input/output system (BIOS) software is stored in a ROM 50, the first of two ROMs making up the system boot ROM 14 (FIG. 1). The boot strap code, operating system code (OS), OS drivers and a secure loader are stored in a second ROM 52. An anchor application 54 including graphics and sound drivers, system drivers, money-handling software, a second secure loader, and a signature is stored in the mass storage 18 (FIG. 1).
When power is initially applied to the system on start-up, or when the system experiences a warm restart, the CPU 12 will begin executing code from the BIOS ROM 50. The BIOS is responsible for initializing the motherboard and peripheral cards of the system. After the BIOS has completed the initialization, it jumps to the boot strap code in ROM 252 causing the boot strap to copy the OS, OS drivers, and the secure loader into RAM.
Once in RAM, the OS is started and the secure loader stored in ROM 52 is used to load the anchor application 54 from disk 18. On disk, the anchor application has a signature that is used during the load to verify the validity of the anchor application.
After the anchor application 54 is started, it will be used to load all other applications. The secure loader of the anchor application will check the validity of an application to be loaded by computing the signature and comparing it against the one stored on disk with the application as described above.
An important advantage of the invention not found in 20 prior art systems is the manner in which the casino game data set can be authenticated. In prior art systems, authentication of the casino game data set is normally only done when a payout lying above a given threshold is required by the outcome of the game play, and this requires that the game be disabled while the ROM is physically removed and the ROM contents are verified. In systems incorporating the invention, the authenticity of a given casino game data set can be checked in a variety of ways. For example, the game data set 36 can be automatically subjected to the authentication procedure illustrated in
Another advantage of the invention lies in the fact that the game data set storage capacity of a system incorporating the invention is not limited by the size of a ROM, but is rather dictated by the size of the mass storage unit. As a consequence, games using high resolution, high motion video and high quality stereo sound can be designed and played on systems incorporating the invention. Also, since the mass storage unit need not be a read-only device, and need not be physically located in the game console, the invention affords great flexibility in game content, scheduling and changes. For example, to change the graphic images in a particular casino game or set of games, new casino game data sets can be generated along with new signatures and stored in the mass storage unit by either exchanging disk drives, replacing disks (for read only disk units), or writing new data to the media. In the networked mass storage application, these changes can be made to the files controlled by the network file server. Since the casino game data sets must pass the authentication procedure test, either periodically or on demand, corrupted data sets cannot go undetected. Thus the invention opens up the field of electronic casino gaming systems to readily modifiable games with flexible displays and rules, without sacrificing the essential security of such systems. In fact, security is greatly enhanced by the ability of the invention to authenticate all game data sets both regularly (for each handle pull) and at any time (on demand), without interfering with regular game play (unless no match occurs between the two forms of message digest).
While the above provides a full and complete disclosure of the preferred embodiments of the invention, various modifications, alternate constructions and equivalents may be employed without departing from the true spirit and scope of the invention. For example, while the RSA public/private key encryption technique is preferred (due to the known advantages of this technique), a single, private key encryption technique may be employed, if desired. In a system using this technique, the single key would be stored in ROM 29 in place of the public key 34. Also, the message digest 42 and signature 37 for a given application 36 need not be computed from the entire casino game data set. For example, for some casino games it may be desirable to provide a fixed set of rules while permitting future changes in the casino game graphics, sound or both. For such casino games, it may be sufficient to compute the message digest 42 and signature 37 from only the rules portion of the applications program 36. In other cases, it may be desirable or convenient to maintain the casino game video and audio portions constant, while allowing future changes to the rules of game play. For casino games of this category, the message digest 42 and signature 37 may be computed from the graphics and sound portions of the application program 36. It may also be desirable to compute a message digest 42 and signature 37 from a subset of the rules, graphics or sound portions of a given applications program 36, or from some other subset taken from a given applications program 36. Therefore, the above should not be construed as limiting the scope of the invention, which is defined by the appended claims.
Claims
1. An electronic gaming system for providing authentication of a data set associated with a casino type game, said system comprising:
- (a) a first storage means for storing a game data set and a game signature comprising an encrypted version of a unique primary abbreviated game bit string computed from said game data set;
- (b) a second storage means for storing, an anchor application including a first authentication program capable of determining the validity of said game data set by, computing a complementary abbreviated game bit string from said game data set, decrypting said game signature set to recover said primary abbreviated game bit string, comparing said complementary abbreviated game bit string with said primary abbreviated game bit string to determine whether a match is present, and an anchor signature including an encrypted version of a unique primary abbreviated anchor bit string computed from said anchor application;
- (c) a third storage means for storing a second authentication program capable of determining the validity of said anchor application by, computing a complementary abbreviated anchor bit string from said anchor application, decrypting said anchor signature to recover said primary abbreviated anchor bit string, and comparing said complementary abbreviated anchor bit string with said primary abbreviated anchor bit string to determine whether a match is present; and
- (d) processing means for enabling said first authentication program to determine the validity of said game data set and for enabling said second authentication program to determine the validity of said anchor application.
2. An electronic gaming system as recited in claim 1 further comprising a fourth storage means for storing basic input/output system (BIOS) code.
3. An electronic gaming system as recited in claim 2 wherein said fourth storage means is an unalterable ROM device.
4. An electronic gaming system as recited in claim 1 wherein said third storage means further stores operating system code, operating system drivers, and bootstrap code.
5. An electronic gaming system as recited in claim 1 wherein said first storage means and said second storage means comprise a single mass storage means.
6. An electronic gaming system as recited in claim 1 wherein said first storage means is a mass storage memory device.
7. An electronic gaming system as recited in claim 1 wherein said third storage means is an unalterable read only memory.
8. An electronic gaming system as recited in claim 1 wherein said first storage means is a CD ROM.
9. An electronic gaming system as recited in claim 1 wherein said first storage means is a hard disk drive.
10. An electronic gaming system as recited in claim 1 wherein said first storage means comprises a network storage system which is remote from the electronic gaming system.
11. An electronic gaming system as recited in claim 1 wherein said second storage means comprises a network storage system which is remote from the electronic gaming system.
12. An electronic gaming system as recited in claim 1 wherein said game data set is a game-modifying data set for changing game rules parameters of the casino type game.
13. An electronic gaming system as recited in claim 12 wherein said game-modifying data set includes a money handler modifying data set for changing money handling parameters of the casino type game.
14. An electronic gaming system as recited in claim 12 wherein said game-modifying data sets include a graphics modifying data set for changing graphics parameters of the casino type game.
15. An electronic gaming system as recited in claim 12 wherein said game-modifying data sets include a sound driver modifying data set for changing sound parameters of the casino type game.
16. A casino gaming apparatus comprising:
- a casino game console;
- a video display unit;
- a random access memory (RAM) for providing an executable space for a processor, said RAM being disposed in said casino game console;
- a mass storage unit having gaming data relating to at least one casino game stored therein, said mass storage unit being disposed in said casino game console wherein the mass storage unit is operable as a read-only device;
- a first memory storing a basic input/output system (BIOS) for initializing a motherboard and a second memory;
- the second memory storing at least components of an operating system for controlling access to the mass storage unit wherein the components of the operating system are authenticated prior to the gaming data; and
- the processor disposed in said casino game console and being operatively coupled to said video display unit, said first memory, said second memory, said mass storage unit, said motherboard and said RAM,
- said processor operable to cause said gaming data to be authenticated by: 1) subjecting said gaming data to a one-way hash function to generate a first message digest, 2) decrypting an encrypted message digest previously generated by subjecting known gaming data to a one-way hash function to generate a decrypted message digest, and 3) comparing said first message digest with said decrypted message digest, and
- said processor causing a remedial action to be taken if said gaming data is not authentic as determined by said processor.
17. The casino gaming apparatus as defined in claim 16 wherein said mass storage unit comprises an optical disk.
18. The casino gaming apparatus as defined in claim 16 further comprising at least one peripheral device, coupled to the gaming console, wherein the peripheral device includes a memory device and wherein the processor is operable to authenticate contents of the memory device.
19. The casino gaming apparatus as defined in claim 16 wherein said mass storage unit comprises a magnetic hard disk.
20. The casino gaming apparatus as defined in claim 16 wherein the mass storage unit is disposed in said casino game console.
21. The casino gaming apparatus as defined in claim 16 wherein the mass storage unit is disposed in a remote location separate from said casino game console.
22. The casino gaming apparatus as defined in claim 16 further comprising a nonvolatile memory operable to store gaming data relating to the play of the casino game.
23. The casino gaming apparatus as defined in claim 22 wherein the nonvolatile memory is disposed in said casino game console.
24. The casino gaming apparatus as defined in claim 22 wherein the nonvolatile memory is disposed in a remote location separate from said casino game console.
25. The casino gaming apparatus as defined in claim 16 wherein the video display unit is disposed in a remote location separate from said casino game console.
26. The casino gaming apparatus as defined in claim 16 further comprising a video subsystem, operatively coupled to the video display unit and operatively coupled to the processor, adapted for displaying still images, motion video or combinations thereof.
27. The casino gaming apparatus as defined in claim 16 wherein the processor is operable to generate a game play of a plurality of different casino games.
28. The casino gaming apparatus as defined in claim 16 wherein in response to receiving a selection of a particular casino game from a plurality of different casino games, the casino gaming apparatus is operable to generate a play of the particular casino game on the casino gaming apparatus.
29. The casino gaming apparatus as defined in claim 16 further comprising a sound-generating apparatus operatively coupled to the processor.
30. The casino gaming apparatus as defined in claim 16 further comprising a network interface wherein the network interface is designed to provide a wired connection or a wireless connection to a network.
31. A casino gaming apparatus comprising:
- a casino game console;
- a video display unit;
- a mass storage unit having gaming data relating to at least one casino game stored therein;
- a first memory storing a basic input/output system (BIOS) for initializing a motherboard and a second memory;
- the second memory storing at least components of an operating system adapted for reading files in a file system on the mass storage unit wherein the components of the operating system are authenticated prior to the gaming data; and
- a processor disposed in said casino game console and being operatively coupled to said video display unit, first memory and said second memory, said motherboard and said mass storage unit,
- said processor operable to cause said gaming data to be authenticated by: 1) subjecting said gaming data to a one-way hash function to generate a first message digest and 2) comparing said first message digest to a second message digest previously generated by subjecting known gaming data to a one-way hash function, and
- said processor operable to cause a remedial action to be taken if said gaming data is not authentic.
32. The casino gaming apparatus as defined in claim 31 wherein said mass storage unit comprises an optical disk.
33. The casino gaming apparatus as defined in claim 31 further comprising at least one peripheral device, coupled to the gaming console, wherein the peripheral device includes a memory device and wherein the processor is operable to authenticate contents of the memory device.
34. The casino gaming apparatus as defined in claim 31 wherein said mass storage unit comprises a magnetic hard disk.
35. The casino gaming apparatus as defined in claim 31 wherein said mass storage unit is operable as a read-only memory.
36. The casino gaming apparatus as defined in claim 31 wherein the mass storage unit is disposed in said casino game console.
37. The casino gaming apparatus as defined in claim 31 wherein the mass storage unit is disposed in a remote location separate from said casino game console.
38. The casino gaming apparatus as defined in claim 31 further comprising a nonvolatile memory operable to store gaming data relating to the play of the casino game.
39. The casino gaming apparatus as defined in claim 38 wherein the nonvolatile memory is disposed in said casino game console.
40. The casino gaming apparatus as defined in claim 38 wherein the nonvolatile memory is disposed in a remote location separate from said casino game console.
41. The casino gaming apparatus as defined in claim 31 wherein the video display unit is disposed in a remote location separate from said casino game console.
42. The casino gaming apparatus as defined in claim 31 further comprising a video subsystem, operatively coupled to the video display unit and operatively coupled to the processor, adapted for displaying still images, motion video or combinations thereof.
43. The casino gaming apparatus as defined in claim 31 wherein the processor is operable to generate a game play of a plurality of different casino games.
44. The casino gaming apparatus as defined in claim 31 wherein in response to receiving a selection of a particular casino game from a plurality of different casino games, the casino gaming apparatus is operable to generate a play of the particular casino game on the casino gaming apparatus.
45. The casino gaming apparatus as defined in claim 31 further comprising a sound-generating apparatus operatively coupled to the processor.
46. The casino gaming apparatus as defined in claim 31 further comprising a network interface wherein the network interface is designed to provide a wired connection or a wireless connection to a network.
47. A casino gaming apparatus comprising:
- a casino game console;
- a video display unit;
- a mass storage unit disposed in said casino game console;
- a network interface coupled to the gaming console for allowing communication with a remote storage device located on a network wherein the remote storage device is adapted to store second gaming data related to a second casino game;
- a first memory storing a basic input/output system (BIOS) for initializing a motherboard and a second memory;
- the second memory storing at least components of an operating system for controlling access to the mass storage unit wherein the components of the operating system are authenticated prior to the first gaming data or second gaming data; and
- a processor disposed in said casino game console and being operatively coupled to said video display unit, first memory and said second memory, said motherboard, said network interface and said mass storage unit,
- said processor operable to cause the second gaming data related to the second casino game to be transferred from the remote storage device to the casino gaming apparatus;
- said processor operable to authenticate said first gaming data or to authenticate said second gaming data prior to generating the first casino game or the second casino game.
48. The casino gaming apparatus as defined in claim 47 wherein said mass storage unit comprises an optical disk.
49. The casino gaming apparatus as defined in claim 47 further comprising at least one peripheral device, coupled to the gaming console, wherein the peripheral device includes a memory device and wherein the processor is operable to authenticate contents of the memory device.
50. The casino gaming apparatus as defined in claim 47 wherein said mass storage unit comprises a magnetic hard disk.
51. The casino gaming apparatus as defined in claim 47 wherein said mass storage unit is operable as a read-only memory.
52. The casino gaming apparatus as defined in claim 47 wherein the mass storage unit is disposed in said casino game console.
53. The casino gaming apparatus as defined in claim 47 wherein the mass storage unit is disposed in a remote location separate from said casino game console.
54. The casino gaming apparatus as defined in claim 47 further comprising a nonvolatile memory operable to store gaming data relating to the play of the casino game.
55. The casino gaming apparatus as defined in claim 54 wherein the nonvolatile memory is disposed in said casino game console.
56. The casino gaming apparatus as defined in claim 54 wherein the nonvolatile memory is disposed in a remote location separate from said casino game console.
57. The casino gaming apparatus as defined in claim 47 wherein the video display unit is disposed in a remote location separate from said casino game console.
58. The casino gaming apparatus as defined in claim 47 further comprising a video subsystem, operatively coupled to the video display unit and operatively coupled to the processor, adapted for displaying still images, motion video or combinations thereof.
59. The casino gaming apparatus as defined in claim 47 wherein the processor is operable to generate a game play of a plurality of different casino games.
60. The casino gaming apparatus as defined in claim 47 wherein in response to receiving a selection of a particular casino game from a plurality of different casino games, the casino gaming apparatus is operable to generate a play of the particular casino game on the casino gaming apparatus.
61. The casino gaming apparatus as defined in claim 47 further comprising a sound-generating apparatus operatively coupled to the processor.
62. The casino gaming apparatus as defined in claim 47 wherein the network interface is deigned to provide a wired connection or a wireless connection to the network.
63. A casino gaming apparatus comprising:
- a casino game console;
- a video display unit;
- a mass storage unit having first gaming data relating to a first casino game stored therein and having second gaming data relating to a second casino game stored therein;
- a first memory storing a basic input/output system (BIOS) for initializing a motherboard and a second memory;
- the second memory storing at least components of an operating system for reading files in a file system on the mass storage unit wherein the components of the operating system are authenticated prior to the first gaming data or second gaming data;
- an input mechanism for receiving a selection of the first casino game or the second casino game; and
- a processor disposed in said casino game console and being operatively coupled to said video display unit, first memory, said second memory, said input mechanism, said motherboard and said mass storage unit,
- said processor operable to authenticate said first gaming data or to authenticate said second gaming data prior to generating the first casino game or generating the second casino game,
- said processor operable to generate a play of the first casino game in response to receiving a selection of the first casino game via the input mechanism and
- said processor operable to generate a play of the second casino game in response to receiving a selection of the second casino game via the input mechanism.
64. The casino gaming apparatus as defined in claim 63 wherein said mass storage unit comprises an optical disk.
65. The casino gaming apparatus as defined in claim 63 further comprising at least one peripheral device, coupled to the gaming console, wherein the peripheral device includes a memory device and wherein the processor is operable to authenticate contents of the memory device.
66. The casino gaming apparatus as defined in claim 63 wherein said mass storage unit comprises a magnetic hard disk.
67. The casino gaming apparatus as defined in claim 63 wherein said mass storage unit is operable as a read-only memory.
68. The casino gaming apparatus as defined in claim 63 wherein the mass storage unit is disposed in said casino game console.
69. The casino gaming apparatus as defined in claim 63 wherein the mass storage unit is disposed in a remote location separate from said casino game console.
70. The casino gaming apparatus as defined in claim 63 further comprising a nonvolatile memory operable to store gaming data relating to the play of the casino game.
71. The casino gaming apparatus as defined in claim 70 wherein the nonvolatile memory is disposed in said casino game console.
72. The casino gaming apparatus as defined in claim 70 wherein the nonvolatile memory is disposed in a remote location separate from said casino game console.
73. The casino gaming apparatus as defined in claim 63 wherein the video display unit is disposed in a remote location separate from said casino game console.
74. The casino gaming apparatus as defined in claim 63 further comprising a video subsystem, operatively coupled to the video display unit and operatively coupled to the processor, adapted for displaying still images, motion video or combinations thereof.
75. The casino gaming apparatus as defined in claim 63 wherein the processor is operable to generate a game play of a plurality of different casino games.
76. The casino gaming apparatus as defined in claim 63 wherein in response to receiving a selection of a particular casino game from a plurality of different casino games, the casino gaming apparatus is operable to generate a play of the particular casino game on the casino gaming apparatus.
77. The casino gaming apparatus as defined in claim 63 further comprising a sound-generating apparatus operatively coupled to the processor.
78. The casino gaming apparatus as defined in claim 63 further comprising a network interface wherein the network interface is designed to provide a wired connection or a wireless connection to a network.
79. A casino gaming apparatus, comprising:
- a casino game console;
- a video display unit;
- a mass storage unit disposed in said casino game console;
- a first memory storing a basic input/output system (BIOS) for initializing a motherboard and a second memory;
- the second memory storing at least components of an operating system adapted for reading files in a file system on the mass storage unit wherein the components of the operating system are authenticated prior to the first gaming data or second gaming data;
- a network interface coupled to the gaming console for allowing communication with a remote device located on a network;
- a processor operatively coupled to the mass storage unit, the first memory, the second memory, the network interface and the motherboard,
- said processor operable to authenticate said gaming data prior to generating a play of the casino game,
- said processor operable to communicate information relating to the authentication of the gaming data to the remote device.
80. The casino gaming apparatus as defined in claim 79 wherein said mass storage unit comprises an optical disk.
81. The casino gaming apparatus as defined in claim 79 further comprising at least one peripheral device, coupled to the gaming console, wherein the peripheral device includes a memory device and wherein the processor is operable to authenticate contents of the memory device.
82. The casino gaming apparatus as defined in claim 79 wherein said mass storage unit comprises a magnetic hard disk.
83. The casino gaming apparatus as defined in claim 79 wherein said mass storage unit is operable as a read-only memory.
84. The casino gaming apparatus as defined in claim 79 wherein the mass storage unit is disposed in said casino game console.
85. The casino gaming apparatus as defined in claim 79 wherein the mass storage unit is disposed in a remote location separate from said casino game console.
86. The casino gaming apparatus as defined in claim 79 further comprising a nonvolatile memory operable to store gaming data relating to the play of the casino game.
87. The casino gaming apparatus as defined in claim 86 wherein the nonvolatile memory is disposed in said casino game console.
88. The casino gaming apparatus as defined in claim 86 wherein the nonvolatile memory is disposed in a remote location separate from said casino game console.
89. The casino gaming apparatus as defined in claim 79 wherein the video display unit is disposed in a remote location separate from said casino game console.
90. The casino gaming apparatus as defined in claim 79 further comprising a video subsystem, operatively coupled to the video display unit and operatively coupled to the processor, adapted for displaying still images, motion video or combinations thereof.
91. The casino gaming apparatus as defined in claim 79 wherein the processor is operable to generate a game play of a plurality of different casino games.
92. The casino gaming apparatus as defined in claim 79 wherein in response to receiving a selection of a particular casino game from a plurality of different casino games, the casino gaming apparatus is operable to generate a play of the particular casino game on the casino gaming apparatus.
93. The casino gaming apparatus as defined in claim 79 further comprising a sound-generating apparatus operatively coupled to the processor.
94. The casino gaming apparatus as defined in claim 79 wherein the network interface is designed to provide a wired connection or a wireless connection to a network.
95. The casino gaming apparatus as defined in claim 79 wherein the remote device is controlled by a regulatory body.
96. The casino gaming apparatus as defined in claim 95 wherein the regulatory body is a gaming commission.
97. A casino gaming apparatus comprising:
- a casino game console;
- a video display unit;
- a mass storage having gaming data for a casino game stored therein;
- a first memory storing a basic input/output system (BIOS) for initializing a motherboard and a second memory;
- the second memory storing at least components of an operating system for reading files in a file system on the mass storage unit wherein the components of the operating system are authenticated prior to the first gaming data or second gaming data;
- at least one peripheral device coupled to the casino game console wherein the peripheral device includes a memory device and wherein, prior to allowing the peripheral device to participate in system operations on the casino gaming apparatus, the casino gaming apparatus is operable to authenticate contents of the memory device; and
- a processor disposed in said casino game console and being operatively coupled to said video display unit, said mass storage unit, said first memory, said second memory, said peripheral device and said motherboard,
- said processor operable to authenticate said gaming data prior to generating a play of the casino game.
98. The casino gaming apparatus as defined in claim 97 wherein said mass storage unit comprises an optical disk.
99. The casino gaming apparatus as defined in claim 97 further comprising an input switch for receiving a selection of a casino game to play on the casino gaming apparatus.
100. The casino gaming apparatus as defined in claim 97 wherein said mass storage unit comprises a magnetic hard disk.
101. The casino gaming apparatus as defined in claim 97 wherein said mass storage unit is operable as a read-only memory.
102. The casino gaming apparatus as defined in claim 97 wherein the mass storage unit is disposed in said casino game console.
103. The casino gaming apparatus as defined in claim 97 wherein the mass storage unit is disposed in a remote location separate from said casino game console.
104. The casino gaming apparatus as defined in claim 97 further comprising a nonvolatile memory operable to store gaming data relating to the play of the casino game.
105. The casino gaming apparatus as defined in claim 104 wherein the nonvolatile memory is disposed in said casino game console.
106. The casino gaming apparatus as defined in claim 104 wherein the nonvolatile memory is disposed in a remote location separate from said casino game console.
107. The casino gaming apparatus as defined in claim 97 wherein the video display unit is disposed in a remote location separate from said casino game console.
108. The casino gaming apparatus as defined in claim 97 further comprising a video subsystem, operatively coupled to the video display unit and operatively coupled to the processor, adapted for displaying still images, motion video or combinations thereof.
109. The casino gaming apparatus as defined in claim 97 wherein the processor is operable to generate a game play of a plurality of different casino games.
110. The casino gaming apparatus as defined in claim 97 wherein in response to receiving a selection of a particular casino game from a plurality of different casino games, the casino gaming apparatus is operable to generate a play of the particular casino game on the casino gaming apparatus.
111. The casino gaming apparatus as defined in claim 97 further comprising a sound-generating apparatus operatively coupled to the processor.
112. The casino gaming apparatus as defined in claim 97 further comprising a network interface wherein the network interface is designed to provide a wired connection or a wireless connection to a network.
3825905 | July 1974 | Allen, Jr. |
3838264 | September 1974 | Maker |
4193131 | March 1980 | Lennon et al. |
4200770 | April 29, 1980 | Hellman et al. |
4218582 | August 19, 1980 | Hellman et al. |
4354251 | October 12, 1982 | Hellwig et al. |
4355390 | October 19, 1982 | Hellwig et al. |
4405829 | September 20, 1983 | Rivest et al. |
4458315 | July 3, 1984 | Uchenick |
4462076 | July 24, 1984 | Smith, III |
4467424 | August 21, 1984 | Hedges et al. |
4494114 | January 15, 1985 | Kaish et al. |
4519077 | May 21, 1985 | Amin |
4525599 | June 25, 1985 | Curran et al. |
4582324 | April 15, 1986 | Koza et al. |
4607844 | August 26, 1986 | Fullerton |
4652998 | March 24, 1987 | Koza et al. |
4658093 | April 14, 1987 | Hellman |
4727544 | February 23, 1988 | Brunner et al. |
4752068 | June 21, 1988 | Endo |
4759064 | July 19, 1988 | Chaum |
4817140 | March 28, 1989 | Chandra et al. |
4837728 | June 6, 1989 | Barrie et al. |
4845715 | July 4, 1989 | Francisco |
4848744 | July 18, 1989 | Steininger et al. |
4856787 | August 15, 1989 | Itkis |
4865321 | September 12, 1989 | Nakagawa et al. |
4911449 | March 27, 1990 | Dickinson et al. |
4930073 | May 29, 1990 | Cina, Jr. |
4944008 | July 24, 1990 | Piosenka et al. |
4951149 | August 21, 1990 | Faroudja |
5004232 | April 2, 1991 | Wong et al. |
5021772 | June 4, 1991 | King et al. |
5050212 | September 17, 1991 | Dyson |
5103081 | April 7, 1992 | Fisher et al. |
5109152 | April 28, 1992 | Takagi et al. |
5146575 | September 8, 1992 | Nolan |
5155680 | October 13, 1992 | Wiedener |
5155768 | October 13, 1992 | Matsuhara |
5161193 | November 3, 1992 | Lampson et al. |
5179517 | January 12, 1993 | Sarbin |
5224160 | June 29, 1993 | Paulini et al. |
5235642 | August 10, 1993 | Wobber et al. |
5259613 | November 9, 1993 | Marnell |
5283734 | February 1, 1994 | Von Kohorn |
5288978 | February 22, 1994 | Iijima |
5291585 | March 1, 1994 | Sato et al. |
5297205 | March 22, 1994 | Audebert et al. |
5326104 | July 5, 1994 | Pease et al. |
5342047 | August 30, 1994 | Heidel et al. |
5343527 | August 30, 1994 | Moore |
5398932 | March 21, 1995 | Eberhardt et al. |
5421006 | May 30, 1995 | Jablon et al. |
5465364 | November 7, 1995 | Lathrop et al. |
5488702 | January 30, 1996 | Byers et al. |
5489095 | February 6, 1996 | Goudard et al. |
5507489 | April 16, 1996 | Reibel et al. |
5586766 | December 24, 1996 | Forte et al. |
5586937 | December 24, 1996 | Menashe |
5604801 | February 18, 1997 | Dolan et al. |
5611730 | March 18, 1997 | Weiss |
5643086 | July 1, 1997 | Alcorn et al. |
5644704 | July 1, 1997 | Pease et al. |
5655965 | August 12, 1997 | Takemoto et al. |
5668945 | September 16, 1997 | Ohba et al. |
5704835 | January 6, 1998 | Dietz, II |
5707286 | January 13, 1998 | Carlson |
5725428 | March 10, 1998 | Achmuller |
5737418 | April 7, 1998 | Saffari et al. |
5742616 | April 21, 1998 | Torreiter et al. |
5759102 | June 2, 1998 | Pease et al. |
5768382 | June 16, 1998 | Schneier et al. |
5934672 | August 10, 1999 | Sines et al. |
5991399 | November 23, 1999 | Graunke et al. |
6071190 | June 6, 2000 | Weiss et al. |
6104815 | August 15, 2000 | Alcorn et al. |
6149522 | November 21, 2000 | Alcorn et al. |
6195587 | February 27, 2001 | Hruska et al. |
6620047 | September 16, 2003 | Alcorn et al. |
6851607 | February 8, 2005 | Orus et al. |
20040002381 | January 1, 2004 | Alcorn et al. |
0 685 246 | December 1995 | EP |
2 121 569 | December 1983 | GB |
6-327831 | November 1994 | JP |
7-31737 | February 1995 | JP |
WO 99/65579 | December 1999 | WO |
WO 00/33196 | June 2000 | WO |
- Bakhtiari, et al., “Cryptographic Hash Functions: A Survey,” Centre for Computer Security Research, 1995, 3 introductory pages and pp. 1-26.
- Federal Information Processing Standards (FIPS) Publication 180 entitled “Secure Hash Standard” dated May 11, 1993, title page, abstract page and pp. 1-20.
- Federal Information Processing Standards (FIPS) Publication 186 entitled “Digital Signature Standard (DSS)” dated May 19, 1994, 17 pages.
- Document entitled “Fact Sheet on Digital Signature Standard” dated May 1994, 6 pages.
- Federal Information Processing Standards (FIPS) Publication 180-1 entitled “Secure Hash Standard” dated Apr. 17, 1995, 2 title pages, abstract page and pp. 1-21.
- Bauspiess, et al., “Requirements For Cryptographic Hash Functions,” Computers and Security, 5:427-437 (Sep. 11, 1992).
- Complaint for patent infringement filed by Aristocrat Technologies, et al. dated Jan. 22, 2002, Civil Action No. CV-S-02-0091.
- Court docket for Civil Action No. CV-S-02-0091 listing papers filed.
- Answer and Counterclaims to Second Amended Complaint filed in connection with Civil Action No. CV-S-01-1498, pp. 1-26 and certificate of service page.
- Defendants' Supplemental Response to Plaintiffs' First Set of Interrogatories filed in connection with Civil Action No. CV-S-01-1498, pp. 1-3, 50-68 and 85-86.
- Davida, G. et al., “Defending Systems Against Viruses through Cryptographic Authentication,” Proceedings of the Symposium on Security and Privacy, IEEE Comp. Soc. Press, pp. 312-318 (May 1, 1989).
- Hellman, Martin E., “The Mathematics of Public-Key Cryptography,” Scientific American, vol. 241, No. 8, Aug. 1979, pp. 146-152 and 154-157.
- Rivest, et al., “A Method for Obtaining Digital Signatures and Public-Key Cryptosystems,” Communications of the ACM, vol. 21, No. 2, Feb. 1978, pp. 120-126.
- Translation of communication from the Japanese Patent Office with respect to JP 504453/97 dated Dec. 7, 2004.
Type: Grant
Filed: Jun 17, 1996
Date of Patent: Oct 31, 2006
Assignee: IGT (Reno, NV)
Inventors: Allan E. Alcorn (Portola Valley, CA), Michael Barnett (San Carlos, CA), Louis D. Giacalone, Jr. (Henderson, NV), Adam E. Levinthal (Redwood City, CA)
Primary Examiner: John M. Hotaling, II
Attorney: Beyer Weaver & Thomas LLP
Application Number: 10/225,097
International Classification: A63F 13/00 (20060101); G06F 5/00 (20060101);