AU2759102A - Casino gaming apparatus with gaming data check and disk memory - Google Patents

Casino gaming apparatus with gaming data check and disk memory Download PDF

Info

Publication number
AU2759102A
AU2759102A AU27591/02A AU2759102A AU2759102A AU 2759102 A AU2759102 A AU 2759102A AU 27591/02 A AU27591/02 A AU 27591/02A AU 2759102 A AU2759102 A AU 2759102A AU 2759102 A AU2759102 A AU 2759102A
Authority
AU
Australia
Prior art keywords
data set
casino
program
game
rom
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
AU27591/02A
Other versions
AU758509B2 (en
Inventor
Allan E. Alcorn
Michael Barnett
Louis D Giacalone
Adam E Levinthal
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
International Game Technology
Original Assignee
Silicon Gaming Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Silicon Gaming Inc filed Critical Silicon Gaming Inc
Priority to AU27591/02A priority Critical patent/AU758509B2/en
Publication of AU2759102A publication Critical patent/AU2759102A/en
Application granted granted Critical
Publication of AU758509B2 publication Critical patent/AU758509B2/en
Assigned to SILICON GAMING-NEVADA reassignment SILICON GAMING-NEVADA Alteration of Name(s) in Register under S187 Assignors: SILICON GAMING, INC.
Assigned to IGT reassignment IGT Alteration of Name(s) in Register under S187 Assignors: SILICON GAMING-NEVADA
Anticipated expiration legal-status Critical
Expired legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/57Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
    • G06F21/575Secure boot
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/52Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2109Game systems

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Storage Device Security (AREA)
  • Slot Machines And Peripheral Devices (AREA)

Description

AUSTRALIA
Patents Act 1990 COMPLETE SPECIFICATION STANDARD PATENT Applicant(s): SILICON GAMING, INC.
Invention Title: ELECTRONIC CASINO GAMING SYSTEM WITH IMPROVED PLAY CAPACITY, AUTHENTICATION AND SECURITY The following statement is a full description of this invention, including the best method of performing it known to me/us: 11 12 13 14 15 16 S 17 .o 18 19 9° S* 20 S 21 .22 23 24 26 27 28 29 31 32 33 -la- Specification ELECTRONIC CASINO GAMING SYSTEM WITH IMPROVED PLAY CAPACITY, AUTHENTICATION AND SECURITY BACKGROUND OF THE INVENTION Field of the Invention This invention relates to microprocessor based gaming Systems used in gambling casinos.
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 three reel single or multiline 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 1 2 3 4 6 7 8 9 11 12 1 S* 13 S14 16 S* 17 18 S 19 20 21 22 23 24 26 27 28 29 31 32 33 algoritlm 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, 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 INVENTION 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 I system and method having greatly expanded mass storage capability for storing a 2multiplicity of high resolution, high sound quality casino type games, and provides 3 enhanced authentication of the stored game program information with a high security 4 factor.
~According to a first aspect of the invention, authentication of a casino ga-me 6 data set is carried out within the casino game console using an authentication 7 program stored in an unalterable ROM physically located within the casino game 8 console. The casino game data set and a unique signature are stored in a mass 9 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 11I and linked to the casino game console over a suitable network. The authentication 12 program stored in the unalterable ROM performs an authentication check on -the 13) casino game data set at appropriate times, such as prior to commencement of game 14 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 16 unalterable ROM contents and comparing this computed message digest with a *17 securely stored copy of the message digest computed from the ROM contents prior 18 to installation in the casino game console.
*19 From a process standpoint, this aspect of the invention comprises a method 20 of authenticating a data set of a casino style game which consists of two phases: a 99*. 21 game data set preparation phase and a game data set checking phase. In the game 22 data set preparation phase, the method proceeds by providing a data set for a casino 23 game, computing a first abbreviated bit string unique to the casino game data set, 24 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 26 mass storage device. The first abbreviated bit string is preferably computed using a 27 hash function to produce a message digest of the casino game data set. The signature 28 is then encrypted from the message digest. After storage of the game data set and 29 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 31 from the stored casino game data set using the same hash function, decrypting the 32 stored encrypted signature to recover the First abbreviated bit string, and comparing 33 the first and second abbreviated bit strings to determine whether the two strings I match. If a match does occur, the casino game data set is deemed authentic if there 2 is no match, authentication is denied and game play is prohibited.
3 The encryption/decryption process is preferably performed using a private 4 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 6 game manufacturer. The decryption of the signature is performed using a public key 7 which is contained in an unalterable read only memory element located in the game 8 console, along with the casino game data set. The casino game data set is preferably 9 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 i 11 size of the mass storage device will depend upon the casino game storage 12 requirements and can be tailored to any specific application.
S 13 Each time a casino game data set is transferred from the mass storage device 14 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 S. 16 console or remotely via a network. Consequently, the authenticity of the data set can 17 be automatically checked whenever the transfer occurs and at other appropriate times.
18 In order to detect attempts to tamper with the contents of the unalterable read 19 only memory element located in the game console, a message digest computed for 20 the authentication program stored therein is stored in a secure manner in a different "9.9 21 location from the game console, such as the casino operator's security facilities or 22 the facilities of a gaming commission (or both). The authenticity of the unalterable 23 read only memory element is checked in the same way as that now performed in 24 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 26 custodial version.
27 From an apparatus standpoint, the first aspect of the invention comprises an 28 electronic casino gaming system having means for providing authentication of a 29 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 31 gae data set, the signature comprising an encrypted version of a unique first 32 abbreviated bit string computed from the casino game data set; second rnmeans for 33 storing an authentication program capable of computing a second abbreviated bit I string from the casino game data set stored in the first storing means and capable of 2 dccrypting the encrypted signature stored in the first storing means to recover tilhe 3 first abbreviated bit string; processing means for enabling the authentication program 4 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 6 signature; and means for comparing the computed second abbreviated bit string with 7 the decrypted abbreviated bit string to determine whether a match is present. The 8 first storing means preferably comprises a mass storage device, such as a disk drive 9 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 11 stored.
S 12 According to a second aspect of the invention, the authentication program 13 stored in the unalterable ROM located within the casino game console is used to test 14 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 16 containing the operating system program, system drivers and executive/loader 17 programs, and other memory devices incorporated into the electronic casino game 18 system architecture. The contents of each such memory device, whether program S 19 information or fixed data, include signatures encrypted from message digests 20 computed using a hash function from the original program information or fixed data 21 set. Upon system initialization, the authentication program in the unalterable ROM 22 is used to authenticate the individual memory device contents in essentially the same 23 fashion as that used to authenticate the casino game data sets. More specifically, the 24 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 26 data set. The encrypted signature is decrypted using the proper decryption program 27 and decryption key to recover the message digest. The two versions of the message 28 digest are then compared and, if found to be matching, the concerned program or 29 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, tilhe 31 casino game data set authentication procedure is run, after which game play is 32 permitted (provided a match occurs).
-6- I From a process standpoint, this second aspect of thile invention comprises a 2 method of authenticating a program or data set of a casino style game which consists 3 of two phases: a program or fixed data set preparation phase, and a program or fixed 4 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, 6 computing a first abbreviated bit string unique to the program or fixed data set, 7 encrypting the first abbreviated bit string to provide an encrypted signature of the 8 program or fixed data set, and storing the program or fixed data set and the signature 9 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 S 11 signature is then encrypted from the message digest. After storage of the program or 12 fixed data set and unique signature in the memory device, the memory device is 13 installed in a casino game console. The casino game program or fixed data set 14 checking phase proceeds by computing a second abbreviated bit string from the S" 15 stored casino game program or fixed data set stored in the memory device using the 16 same hash function, decrypting the encrypted signature stored in the memory device S 17 to recover the first abbreviated bit string, and comparing the first and second 18 abbreviated bit strings to determine whether the two strings match. If a match does o 19 occur, the casino game program or fixed data set is deemed authentic; if there is no match, authentication is denied and use of that casino game program or fixed data 21 set is prohibited.
22 The authentication routine is run each time a given casino game program or 23 fixed data set needs to be called or used. The authentication routine can also be run 24 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.
26 Consequently, the authenticity of the casino game program or fixed data set can be 27 automatically checked whenever use of that program or fixed data set is required and 28 at other appropriate times, such as in the course of a gaming commission audit.
29 From an apparatus standpoint, this second aspect of the invention comprises an electronic casino gaming system for providing authentication of a casino game 3 program or fixed data set prior to permitting system use of that casino game program 32 or fixed data set, the system including first means for storing a casino game program 33 or fixed data set and a signature of the casino game program or fixed data set; the 1 2 3 4 6 7 8 9 11 12 13 14 16 17 18 19 20 21 22 23 24 26 27 28 29 31 32 33 signature comprising an encrypted version of a unique first abbreviated bit strinu 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 painin, 9 11 12 13 13 14 15 16 17 18 19 21 22 23 24 26 27 28 29 31 32 33 -8systems 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.
BRIEF DESCRIPTION OF THE DRAWINGS FIG. 1 is a block diagram of a system incorporating the invention; FIG. 2 is a schematic diagram illustrating the contents of the read only memory and the mass storage device; FIG. 3 is a more detailed schematic view of the authentication program stored in the ROM and the game data stored in the mass storage unit; FIG. 4 is a diagram illustrating the preparation of the game data set; FIG. 5 is a diagram illustrating the authentication procedure for the game data set; and FIG. 6 is a diagram illustrating an alternative approach to the secure loading of software into the system.
DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS Turning now to the drawings, FIG. 1 is a block diagram of an electronic casino gaming system incorporating the invention. As seen in this figure, the system consists of several system components under software control. These system components include a microprocessor 12, which may comprise any general purpose microprocessor, such as a Pentium-based microprocessor from Intel Corporation. A main memory unit 13 is provided, which is typically a random access memory having a capacity of between 32 and 64 megabytes for storing the majority of programs and graphics elements during game play. A system boot ROM 14 provides the initialization software required when power is first applied to the system. ROM 14 contains additional programs in read only form, including the operating system, related drivers and the authentication software described in detail below A nonvolatile RAM 17 is a battery backed static RAM capable of maintaining its contents I through power cycling. NV RIAAM 17 stores significant information relating to game 2 play, such as the number of player credits, the last game outcome and certain 3 diagnostic and error information not critical to an understanding of the invention.
4 A mass storage unit implemented in the Fig. 1 system as a magnetic hard disk drive unit 18 is coupled to and controlled by a disk subsystem 19 of conventional 6 design and operation. Disk drive unit 18 provides storage for the game specific data 7 set, which includes both program data and image data specifying the rules of the 8 various different casino games or single casino game variations, and the types of 9 images and image sequences to be displayed to the game players. The size of the disk drive unit 18 is a function of the number of games and game variations 1 provided for a given system, as well as the amount of data required for each specific 12 game. In general, the more motion video designed into a particular casino game, the 13 more storage required for that casino game software. A disk drive unit 18 with a 4- 14 gigabyte capacity will usually provide sufficient storage capacity. Disk subsystem 19 comprises a disk controller connected to a PCI bus 20 for controlling the disk drive t* 16 unit 18. Controller 19 preferably supports SCSI-2, with options of fast and wide. It 17 should be noted that a number of different types of locally-based disk drive units 18 may be used in the Fig. 1 system, including a CD-ROM storage unit. Also, the mass 19 storage unit need not be physically located within the game console along with the 20 other elements depicted in Fig. 1: the mass storage unit may be located remotely 21 from the game console and coupled thereto by means of an appropriate network, 22 such as an ethernet, an R5232 link, or some other hard-wired or wireless network 23 link. This latter alternate arrangement is indicated by the inclusion of a network 24 subsystem 21 of appropriate configuration and functional characteristics, which may have ethernet, R5232 serial, or other network compatibility.
26 A video subsystem 22 is coupled to the PCI bus and provides the capability 27 of displaying full color still images and MPEG movies with a relatively high frame 28 rate 30 frames per second) on an appropriate monitor (not shown). Optional 3D 29 texture mapping may be added to this system, if desired.
A sound subsystem 23 having a stereo sound playback capability with up to 31 16 bit CD quality sound is coupled to an ISA bus 24. A general purpose 32 input/output unit 25 provides interfaces to the game mechanical devices (not 33 illustrated) such as manually actuatable switches and display lights. A first bridge
-I
1 2 3 4 6 7 8 9 12 12 1* 16 13 14 16 18 19 21 21 22 23 24 26 27 28 29 31 32 33 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.
Fig. 2 illustrates the types of information stored in the system ROM 14 and the mass storage unit. As seen in Fig. 2, the ROM unit 14 used in the Fig. I system comprises two separate ROM elements: ROM 29 and ROM 30. ROM 29 must be an unalterable device, such as a Toshiba type C53400 512Kx8 bit mask programmed ROM. ROM 30 is preferably an unalterable device like ROM 29, but may comprise a different type of ROM, such as a type 29F040 field programmable flash ROM available from Intel Corp. ROM 29 contains the system initialization or boot code, an authentication program, a random number generator program and an initial portion of the executive/loader programs. ROM 30 contains the operating system program, the system drivers and the remainder of the executive/loader programs as noted below. The mass storage unit contains the applications, which include the game image and sound data, rules of game play and the like, and the signature associated to each particular casino game.
Fig. 3 illustrates the authentication and application program information in more detail. As seen in this figure, the authentication program stored in unalterable ROM 29 comprises a message digest algorithm component 32, a decryption algorithm component 33, and a decryption key component 34. The message digest algorithm component 32 stored in ROM 29 comprises an exact copy of a hash function program routine used to originally compute a message digest from the loadable game data set 36 in the manner described below. The decryption algorithm component 33 stored in ROM 29 comprises the algorithm required to decrypt any encrypted casino game data set signature using the decryption key component 34.
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.
Fig. 4 illustrates the manner in which an encrypted data set signature 37 is generated. A loadable casino game data set 36 is processed using a hash function 4 1 to generate a message digest 42 which is unique to the loadable game data set 36.
-I-
I The hash function employed may be one of a number of known hash functions, such 2 as the MD2, MD4, and MD5 hash functions and the SI-IS hash function; or any other 3 suitable hash function capable of producing a unique abbreviated bit string from a 4 variable size input data set. For further infomiation about these hash functions.
reference should be had to the publication entitled "Answers To Frequently Asked 6 Questions About Today's Cryptography", Revision 2.0, October 5, 1993, published 7 by RSA Laboratories, Redwood City, California, and the publications listed in the 8 references section thereof, the disclosures of which are hereby incorporated by 9 reference. After generation, the message digest 42 is then encrypted with an encryption algorithm 43 using a private encryption key 44 to generate a signature 37 11 of the message digest. In the preferred embodiment, the two-key (private/public key) 12 encryption technique developed by RSA Data Security, Inc., of Redwood City, 13 California, is used. This technique is disclosed and described in U.S. Patent Nos.
14 4,200,770, 4,218,582 and 4,405,829, the disclosures of which are hereby incorporated by reference. The signature 37 of the message digest 42 is then stored in the mass 16 storage unit along with the loadable data set 36.
eo 17 Fig. 5 illustrates the authentication routine carried out in accordance with the 18 invention, when the authentication routine is called (see below), the loadable casino S19 game data set 36 is transferred from the mass storage unit to main memory 13 20 (unless already there), and the message digest of casino game data set 36 is 21 computed using the message digest algorithm 32. Message digest algorithm 32 uses 22 the same hash function 41 as that used by the manufacturer to prepare the original 23 message digest 42. The result is an unencrypted version 46 of the message digest 24 computed from the casino game data set 36 currently present in the mass storage unit. The encrypted data set signature 37 is decrypted using the public decryption key 26 34 matching the private key 44 used to originally encrypt the message digest 42 of 27 the casino game data set 36. The message digest 47 decrypted with decryption key 28 34 is then compared with the message digest 46 computed from the casino game data 29 set 36. If the two message digests match, then the casino game data set 36 is deemed authentic and game play may proceed. If there is no match, either the casino game 31 data set 36 or the signature 37 is deemed corrupted and not authentic. Game play is 32 prohibited and appropriate actions can be taken: e.g. alerting a security employee -12- I using a suitable messaging system (an audible alarm, flashing lights, or a network 2 message from the game console to a central security area).
3 In order to ensure that the authentication routine cannot be bypassed by ,4 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 6 program requires that the authentication program be called prior to the initiation of 7 any casino game play. Since this initial portion of the loader program is located in 8 the unalterable ROM 29, and since no casino game play can occur until the particular 9 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 12 Since authentication of the game data set 36 and signature 37 is entrusted to 13 the contents of ROM 29, a procedure must be provided to verify the ROM 29 14 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 16 with the casino operator or the gaming commission (or both) along with the hash 17 function used to produce the message digest. This hash function may be the same 18 hash function used to compute the message digest 42 of the casino game data set or 19 a different hash function. In this way, the authenticity of the ROM 29 can be easily 20 checked in the same way as that now performed in prior art devices: viz. computing 21 the message digest directly from the ROM 29 and comparing the message digest thus 22 computed with the custodial version of the message digest. If required by a given 23 gaming commission or deemed desirable by a casino operator, the system may also 24 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 26 information via networking subsystem 21 to an on-site or off-site remote location 27 (such as the office of the gaming commission). The message digest displayed or 28 transmitted may comprise the decrypted version or the computed version (or both).
29 The authentication procedure carried out by means of the message digest program 32, decryption program 33 and decryption key 34 stored in unalterable 31 ROM 29 in the manner described above is also used to authenticate the contents of 32 all memory devices in the Fig. I system, such as the conticis of ROM 30 (sec Fig 33 the fixed data portions and program components stored in NV RAM 17 and the -13- 1 program and fixed data contents of any memory devices stored in the networking 2 subsystem 21, video subsystem 22, sound subsystem 23, PCI-ISA interface 24, and 3 GPIO unit 25. Each program or fixed data set stored in any memory device in any 4 of these units has an associated signature, which is encrypted from a message digest of the original program or fixed data set using a hash function, which is preferably 6 the sanme hash function used to prepare the message digest of the casino game data 7 set. Prior to permitting any such program or fixed data set to participate in the 8 system operation, that program or fixed data set is subjected to the authorization 9 procedure to ensure that the message digest computed from the current version of the program or fixed data set matches the message digest decrypted from the encrypted 11 signature associated to the program or fixed data set. In addition, the authentication 12 procedure can be run on each such program or fixed data set at periodic or random 13 intervals (on demand) in a manner essentially identical to that described above with 14 respect to the casino game data set authentication procedure. As a consequence, the integrity of all software in the system is checked prior to the use of that particular 16 software in order to reveal any unauthorized changes to the software portion of the 17 casino gaming system.
18 An alternative approach to the secure loading of software into the system is 19 depicted in FIG. 6. In this embodiment the basic input/output system (BIOS) 20 software is stored in a ROM 50, the first of two ROMs making up the system boot 9* 21 ROM 14 (FIG. The boot strap code, operating system code OS drivers and 22 a secure loader are stored in a second ROM 52. An anchor application 54 including 23 graphics and sound drivers, system drivers, money-handling software, a second 24 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 26 experiences a warm restart, the CPU 12 will begin executing code from the BIOS 27 ROM 50. The BIOS is responsible for initializing the motherboard and peripheral 28 cards of the system. After the BIOS has completed the initialization, it jumps to the 29 boot strap code in ROM 252 causing the boot strap to copy the OS, OS drivers, and the secure loader into RAM.
31 Once in RAM, the OS is started and the secure loader stored in ROM 52 is 32 used to load the anchor application 54 from disk 18. On disk, the anchor application -14- 1 has a signature that is used during the load to verify the validity of thle anchor 2 application.
3 After the anchor application 54 is started, it will be used to load all other 4 applications. The secure loader of the anchor application will cheek the validity of an application to be loaded by computing the signature and comparing it against the 6 one stored on disk with the application as described above.
7 An important advantage of the invention not found in 20 prior art systems 8 is the maniner in which the casino game data set can be authenticated. In prior art 9 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, 11I and this requires that the game be disabled while the ROM is physically removed and 12 the ROM contents are verified. In systems incorporating the invention, the 13 authenticity of a given casino game data set can be checked in a variety of ways. For e 14. example, the game data set 36 can be automatically subjected to the authentication procedure illustrated in Fig. 5 each time the game is loaded from the mass storage 16 unit into the main memory 13. Thus, as a player selects a casino game for game play 17 in the system, the authenticity of that game actually stored in the mass storage unit 18 is automatically checked using the authentication procedure described above without 19 removing the ROM 29. Further, if desired, the authentication procedure may be 20 initiated in response to the pull of a slot game handle, the detection of a coin insert, 21 the payout of coins or issuing of credit, or any other detectable event related to game 22 play. The authenticity of a given casino game data set 36 can also be checked on 23 demand, either locally at the game console or remotely via a network, by providing 24 a demand procedure. Such a procedure may be initiated, e.g. by providing a manually operable switch in the game console, accessible only to authorized persons.
26 for initiating the authentication routine. Alternatively, the Fig. I system may be 27 configured to respond to a demand command generated remotely in a security 28 area in the casino or off-site) and transmitted to the ga-me console over a network to 29 the networking subsystem 2 1.
Another advantage of the invention lies in the fact that the game data set 3 1 storage capacity of a system incorporating the invention is not limited by the size of 32 a ROM, but is rather dictated by the size of the mass storage unlit. As a consequence.
3 3 games using high resolution, high miotion video and high quality stereo Sound can
-I
I be designed and played on systems incorporating the invention. Also, since the mass 2 storage unit need not be a read-only device, and need not be physically located in tihe S gamne console, the invention affords great flexibility in game content, scheduling and 4 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 6 and stored in the mass storage unit by either exchanging disk drives, replacing disks 7 (for read only disk units), or writing new data to the media. In the networked mass S storage application, these changes can be made to the files controlled by the network 9 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 11 the invention opens up the field of electronic casino gaming systems to readily 12 modifiable games with flexible displays and rules, without sacrificing the essential 13 security of such systems. In fact, security is greatly enhanced by the ability of the S° 14 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 16 match occurs between the two forms of message digest).
17 While the above provides a full and complete disclosure of the preferred 18 embodiments of the invention, various modifications, alternate constructions and S 19 equivalents may be employed without departing from the true spirit and scope of the 20 invention. For example, while the RSA public/private key encryption technique is o.
S: 21 preferred (due to the known advantages of this technique), a single, private key 22 encryption technique may be employed, if desired. In a system using this technique, 23 the single key would be stored in ROM 29 in place of the public key 34. Also, the 24 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 26 desirable to provide a fixed set of rules while permitting future changes in the casino 27 game graphics, sound or both. For such casino games, it may be sufficient to 28 compute the message digest 42 and signature 37 from only the rules portion of the 29 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 31 changes to the rules of game play. For casino games of this category, the message 32 digest 42 and signature 37 may be computed from the graphics and sound portions 33 of the application program 36. It may also be desirable to compute a message digest 1 42 and signature 37 from a subset of the rules, graphics or sound portions of a given 2 applications program 36, or from some other subset taken from a given applications 3 program 36. Therefore, the above should not be construed as limiting tile scope of 4 the invention, which is defined by the appended claims.
S S S ft

Claims (3)

  1. 2. The device of claim 1 wherein the message digest computing program comprises a hash function.
  2. 3. The device of claim 1 wherein the stored decryption key comprises a public key.
  3. 4. The device of claim 1 further including an initial loader program stored in said unalterable read only memory device for ensuring use of the message digest computing program, the decryption program and the decryption key. Dated this 22nd day of March 2002 SILICON GAMING INC. .4 By their Patent Attorneys GRIFFITH HACK Fellows Institute of Patent and Trade Mark Attorneys of Australia H S-B.:e~p 'p P45,3.-L 2 '2 H
AU27591/02A 1995-06-29 2002-03-22 Casino gaming apparatus with gaming data check and disk memory Expired AU758509B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
AU27591/02A AU758509B2 (en) 1995-06-29 2002-03-22 Casino gaming apparatus with gaming data check and disk memory

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US497662 1995-06-29
AU47184/00A AU4718400A (en) 1995-06-29 2000-07-12 Electronic casino gaming system with improved play capacity, authentication and security
AU27591/02A AU758509B2 (en) 1995-06-29 2002-03-22 Casino gaming apparatus with gaming data check and disk memory

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
AU47184/00A Division AU4718400A (en) 1995-06-29 2000-07-12 Electronic casino gaming system with improved play capacity, authentication and security

Publications (2)

Publication Number Publication Date
AU2759102A true AU2759102A (en) 2002-06-06
AU758509B2 AU758509B2 (en) 2003-03-20

Family

ID=3734076

Family Applications (8)

Application Number Title Priority Date Filing Date
AU47184/00A Abandoned AU4718400A (en) 1995-06-29 2000-07-12 Electronic casino gaming system with improved play capacity, authentication and security
AU27592/02A Expired AU758507B2 (en) 1995-06-29 2002-03-22 Casino gaming apparatus with gaming data check utilising decryption
AU27594/02A Expired AU758203B2 (en) 1995-06-29 2002-03-22 Casino gaming apparatus with gaming data check and remote memory
AU27595/02A Expired AU758257B2 (en) 1995-06-29 2002-03-22 Casino gaming apparatus with gaming data check and dual memories
AU27593/02A Expired AU758204B2 (en) 1995-06-29 2002-03-22 Casino gaming apparatus, utilising hashing and decryption
AU27591/02A Expired AU758509B2 (en) 1995-06-29 2002-03-22 Casino gaming apparatus with gaming data check and disk memory
AU2007200645A Expired AU2007200645B2 (en) 1995-06-29 2007-02-14 Electronic Casino Gaming System With Improved Play Capacity, Authentication and Security
AU2010201666A Expired AU2010201666B2 (en) 1995-06-29 2010-04-27 Electronic casino gaming system with improved play capacity, authentication and security

Family Applications Before (5)

Application Number Title Priority Date Filing Date
AU47184/00A Abandoned AU4718400A (en) 1995-06-29 2000-07-12 Electronic casino gaming system with improved play capacity, authentication and security
AU27592/02A Expired AU758507B2 (en) 1995-06-29 2002-03-22 Casino gaming apparatus with gaming data check utilising decryption
AU27594/02A Expired AU758203B2 (en) 1995-06-29 2002-03-22 Casino gaming apparatus with gaming data check and remote memory
AU27595/02A Expired AU758257B2 (en) 1995-06-29 2002-03-22 Casino gaming apparatus with gaming data check and dual memories
AU27593/02A Expired AU758204B2 (en) 1995-06-29 2002-03-22 Casino gaming apparatus, utilising hashing and decryption

Family Applications After (2)

Application Number Title Priority Date Filing Date
AU2007200645A Expired AU2007200645B2 (en) 1995-06-29 2007-02-14 Electronic Casino Gaming System With Improved Play Capacity, Authentication and Security
AU2010201666A Expired AU2010201666B2 (en) 1995-06-29 2010-04-27 Electronic casino gaming system with improved play capacity, authentication and security

Country Status (1)

Country Link
AU (8) AU4718400A (en)

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4218582A (en) * 1977-10-06 1980-08-19 The Board Of Trustees Of The Leland Stanford Junior University Public key cryptographic apparatus and method
DE3316414A1 (en) * 1982-05-12 1983-12-22 Bally Manufacturing Corp., 60618 Chicago, Ill. DEVICE AND METHOD FOR ENSURE THE INTEGRITY OF A PLAYING DEVICE
US4759064A (en) * 1985-10-07 1988-07-19 Chaum David L Blind unanticipated signature systems
US4752068A (en) * 1985-11-07 1988-06-21 Namco Ltd. Video game machine for business use
US4727544A (en) * 1986-06-05 1988-02-23 Bally Manufacturing Corporation Memory integrity checking system for a gaming device

Also Published As

Publication number Publication date
AU758204B2 (en) 2003-03-20
AU2759302A (en) 2002-05-30
AU2010201666B2 (en) 2013-01-31
AU758203B2 (en) 2003-03-20
AU2010201666A1 (en) 2010-05-20
AU4718400A (en) 2000-09-14
AU2759202A (en) 2002-05-16
AU758509B2 (en) 2003-03-20
AU758257B2 (en) 2003-03-20
AU2007200645B2 (en) 2010-01-28
AU2759402A (en) 2002-05-16
AU2007200645A1 (en) 2007-03-08
AU2759502A (en) 2002-05-16
AU758507B2 (en) 2003-03-20

Similar Documents

Publication Publication Date Title
US6106396A (en) Electronic casino gaming system with improved play capacity, authentication and security
CA2225805C (en) Electronic casino gaming system with improved play capacity, authentication and security
AU2009206188B2 (en) Pass-through live validation device and method
US20030203755A1 (en) Encryption in a secure computerized gaming system
CA2450201C (en) Method and apparatus for securing gaming machine operating data
JP2005523668A (en) Authentication in an encrypted computerized game system
USRE39369E1 (en) Electronic casino gaming system with improved play capacity, authentication and security
US20100120529A1 (en) Wagering game machine digitally signed volume management
EP1441464A1 (en) Electronic casino gaming system with authentication and security
AU2013205523A1 (en) Electronic casino gaming system with improved play capacity, authentication and security
AU758204B2 (en) Casino gaming apparatus, utilising hashing and decryption

Legal Events

Date Code Title Description
FGA Letters patent sealed or granted (standard patent)
PC Assignment registered

Owner name: IGT

Free format text: FORMER OWNER WAS: SILICON GAMING, INC.

TH Corrigenda

Free format text: IN VOL 17, NO 44, PAGE(S) 1502 UNDER THE HEADING ASSIGNMENTS REGISTERED PLEASE DELETE ALL REFERENCES TO PATENT NUMBERS 758203, 758204, 758257 AND 758509

PC Assignment registered

Owner name: SILICON GAMING-NEVADA

Free format text: FORMER OWNER WAS: SILICON GAMING, INC.

PC Assignment registered

Owner name: IGT

Free format text: FORMER OWNER WAS: SILICON GAMING-NEVADA