US20040054952A1 - Device verification system and method - Google Patents
Device verification system and method Download PDFInfo
- Publication number
- US20040054952A1 US20040054952A1 US10/243,912 US24391202A US2004054952A1 US 20040054952 A1 US20040054952 A1 US 20040054952A1 US 24391202 A US24391202 A US 24391202A US 2004054952 A1 US2004054952 A1 US 2004054952A1
- Authority
- US
- United States
- Prior art keywords
- database
- file
- bit string
- verifying
- abbreviated bit
- 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.)
- Abandoned
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/22—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
- G06F11/2294—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing by remote test
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/006—Identification
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/0703—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
- G06F11/0706—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
- G06F11/0748—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment in a remote unit communicating with a single-box computer node experiencing an error/fault
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/22—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
- G06F11/2289—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing by configuration test
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/04—Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
- G11C29/08—Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
- G11C29/12—Built-in arrangements for testing, e.g. built-in self testing [BIST] or interconnection details
- G11C2029/4402—Internal storage of test result, quality data, chip identification, repair information
Abstract
Description
- This invention relates generally to a method and apparatus for verifying and detecting errors in a device and, more particularly, for verifying the device before starting or continuing operation, and for monitoring and logging events that may occur in the device.
- In common practice in the prior art, for example in the gaming machine field, verification of a device may occur by testing the entire contents of a read only memory (ROM) containing the application software for the device to ensure that tampering has not occurred, for example, after a prize is won during game play. An abbreviated bit string is computed from the gaming application program and stored in a secure ROM that is separate from the ROM where the gaming application is stored before deployment of the gaming machine. When the gaming machine is started, or at times when verification is desired, for example, after a win occurs during game play, a verification program calculates another abbreviated bit string from the contents of the ROM wherein the gaming application program is stored, and the previously computed abbreviated bit string stored in the secure ROM is used with the newly calculated abbreviated bit string to verify the gaming application program.
- Such a verification system may be adequate where the media on which the gaming application is stored is read-only, and therefore difficult to alter, and where there is little danger that the other components of the device can be compromised to breach security, such as a casino with 24 hour surveillance. However, such constant surveillance is not always available, both inside and outside the gaming industry, and as technology advances, it becomes more difficult to rely on these safeguards. The shortcomings of prior systems become more prevalent when several devices are connected over a network.
- Accordingly, there has been a long existing need for enhanced verification of devices, and more enhanced self-critical analysis of their components other than just the application software.
- Briefly, and in general terms, the present invention provides an improved method and system for verifying a device, having components, before or during use.
- More particularly, by way of example and not necessarily by way of limitation, the present invention provides a system and method for verifying a device by verifying the components of that device. The components may comprise, for example, software components, firmware components, hardware components, or structural components of an electronic device. These components include, without limitation, processors, persistent storage media, volatile storage media, random access memories, read-only memories (ROMs), erasable programmable ROMs, data files (which are any collections of data, including executable programs in binary or script form, and the information those programs operate upon), device cabinets (housings) or cathode ray tubes (CRTs). Identification numbers or strings of the components are read and then verified. The process of verifying may comprise matching each identification number in a database to determine whether each identification number is valid. In the case where a data file comprises one of a plurality of operating system files, verification of that file, in effect, comprises verifying part of an operating system. For data files, the file names may comprise the identification numbers.
- The database may comprise a relational database, object database, or may be stored in XML format, or in a number of other formats that are commonly known. However, in the case where storage space is limited for the verification system, a flat file structure for the database may be more desirable, and require less software instructions to read and retrieve information from. The database may also comprise an independent system stack of bindings, which comprise numbers, identification strings or signatures in the database for matching or authenticating the components, from manufacturers of the components, each identification number being verified using the binding from the manufacturer of the respective component to verify the component. Especially in the context of smaller devices such as personal digital assistants (PDAs), such a system stack may comprise a subset of one or more global component databases containing bindings from manufacturers of the components, each binding of the subset being associated with at least one of the identification numbers of one of the components in the device. Providing such a limited subset helps control the size of the verification system by controlling the size of the database. Another example of a verification system in which it may be desirable to limit the size of the database is one in which the database is stored in a personal computer's (PC's) complementary metal oxide semiconductor memory (CMOS), along with other configuration settings for the PC. Storing the database in the CMOS may improve security wherein the PC may be configured such that only users with administrative passwords may change the content of the portion of the CMOS containing the database.
- Structural components, such as cabinets, may contain an electronic identification chip embedded within them, such as a so-called Dallas chip or an IBUTTON device manufactured by Dallas Semiconductor of Dallas, Tex. These devices allow a unique identifier, placed within a semiconductor or chip, to be placed on a component that may or may not be electronic, such as a computer or gaming machine cabinet. The IBUTTON device is a computer chip enclosed in a 16 mm stainless steel can. The steel button can be mounted, preferably permanently or semi-permanently, on or in the structural component. Two wires may be affixed to the IBUTTON device, one on the top, and one on the bottom, to exchange data between the IBUTTON device and a processor, serial port, universal serial bus (USB) port, or parallel port.
- The matching process may comprise matching each identification number based on the type of component that the identification number identifies. The identification number and the type of component is matched in the database in order to verify that the identification number is valid. The reading of the identification numbers and verifying the components may be performed at the time of start-up of the device, or periodically during operation of the device. Operation of the device may be stopped if any one of the identification numbers is not matched in the database. In the case of a game or gaming machine type of device, a tilt condition message is generated if any one of the identification numbers is not matched in the database.
- The database may consist of a set of signatures, also called bindings. At least with respect to the components that comprise data files or firmware, a well-known hash function, the Secure Hash Function-1, also known as SHA-1, may be used to compute a 160-bit hash value from the data file or firmware contents. This 160-bit hash value, also called an abbreviated bit string, is then processed to create a signature of the game data using an equally well-known, one-way, private signature key technique, the Digital Signature Algorithm (DSA). The DSA uses a private key of a private key/public key pair, and randomly or pseudorandomly generated integers, to produce a 320-bit signature of the 160-bit hash value of the data file or firmware contents. This signature is stored in the database in addition to the identification number.
- Either contained in the device, or attachable to the device, is a processor and a memory containing executable instructions or a software program file for verification of the components (verification software), which may itself be one of the components to verify. The verification software may be stored on a persistent storage media such as a hard disk device, read only memory (ROM), electrically erasable programmable read-only memory (EEPROM), in the aforementioned CMOS memory, battery-backed random access memory, flash memory or other type of persistent memory. Preferably, the verification software is stored in a basic input/output system (BIOS) on a solid-state persistent memory device or chip. BIOS chips have been used for storing verification software, such as the BIOS+ chip used by Bally Gaming Systems, Inc. of Las Vegas, Nev. in their EVO gaming system. Placing the verification software in the BIOS is advantages because the code in the BIOS is usually the first code executed upon boot or start-up of the device, making it hard to bypass the verification process.
- Alternatively, the verification software may be stored in a firmware hub, which may comprise the part of an electronic device or computer that stores BIOS information. In personal computer hub technology, such as that manufactured by the Intel Corporation of Santa Clara, Calif., a hub is used in place of a peripheral component interconnect (PCI) bus to connect elements of chipsets.
- The persistent storage media may be a removable storage unit such as a CD-ROM reader, a WORM device, a CD-RW device, a floppy disk device, a removable hard disk device, a ZIP disk device, a JAZZ disk device, a DVD device, a removable flash memory device, or a hard card device. However, the database is preferably stored in a non-removable, secure device either within the device being verified, or remotely on a server, in order to enhance security.
- The verification software executes a DSA verification of the data files and firmware components. Also stored in the database is the public key of the private key/public key pair. For each data file and firmware component, as part of the DSA verification, the processor and verification software first computes the hash value of the digital contents of the component using the SHA-1 algorithm. The verification software then processes or authenticates this computed hash value, using the DSA signature verification algorithm, which also takes, as input, the aforementioned public key stored in the database. The verification part of the DSA produces a boolean result (yes or no) as to whether the inputs solve the algorithm. If the algorithm is not solved by the inputs, then an unexpected result is produced, thereby failing to verify the particular component. This may cause a fault tilt to occur to prohibit the loading operation of the device. Otherwise, use of the device is permitted. A detailed description of the DSA can be found in the U.S. government's Federal Information Processing Standards Publication (FIPS) 186-2. That publication describes each step of the DSA signature generation and verification.
- Alternatively, the set of executable instructions may use the Rivest-Shamir-Adleman (RSA) algorithm to verify the components. Using the RSA algorithm, a first abbreviated bit string or hash value is computed from each component's digital contents and encrypted into a digital signature. The digital signature is stored in the database along with the identification number for the component. When the device is verified, the component is verified by computing a second abbreviated bit string computed from the component's digital contents. The signature is retrieved from the database by searching the database for the identification number. The signature is decrypted to recover the first abbreviated bit string. The component is then verified by comparing the second abbreviated bit string with the first abbreviated bit string. If the first and second abbreviated bit strings do not match, then the component is not verified. As discussed below, this may cause a fault tilt to occur to prohibit the loading operation of the device. Otherwise, use of the device is permitted.
- Instead of creating a digital signature for, or signing, each data file individually, collections of data files may be signed together in order speed up processing. The abbreviated bit strings, hash values, or signatures, also called digests, of the collection of data files are collected into a catalog file, and the catalog is signed as described above.
- In some cases, it may be desirable to nevertheless allow operation of a device even though a data file failed verification. For example, that data file may contain an error caused by a number of events, such as a bad sector on a hard disk, which in turn caused the failed verification of that data file. The failed verification is evidently not due to tampering of the device as the system of the present invention is generally designed to prevent. Still, operation of the device is not desirable unless and until the error in the data file is corrected. When the data file is stored in alterable media, correcting such an error may be as simple as replacing the file. Along with the identification number, and encrypted signature or abbreviated bit string, a valid replacement data file may also be stored in the database. If the software program determines that the cause of the invalid file is simply due to an error in the file, and not tampering, then the replacement file is pulled from the database to replace the data file that failed the validation. A number of factors may be used by the software program to make such a determination. For example, determination may be based on the number of data files or components that fail validation. This may indicate a deceptive replacement of a hard disk in the device.
- In one embodiment, the database is remote from the device, wherein verification is performed over a network connecting a database server containing the database with the device. The device transmits the identification numbers for each of the components to the database server. The database server then performs the step of matching. For example, the device may be a personal computer (PC), with verification being performed before a transaction is allowed on a network server. A prime example of such a system is one set up for performing banking transactions with a network server owned or operated by a bank. In such a system, a bank may only allow trusted transactions using an authorized PC whose bindings for all of the components and banking transaction software have been recorded in the database located on the bank's network server, or another remote network server that is accessed by the PC. Once all of the components have been verified, the bank's network server then allows transactions to take place using the PC.
- In another example, the device comprises a gaming machine, wherein the verification of the gaming machine is performed before game play is allowed on the gaming machine. The database may either be located in a secure location in the gaming machine, such as a ROM device enclosed in a lock box within the gaming machine, or remotely from the gaming machine so that the gaming machine connects to a network server containing the database over a network. As with the banking personal computer described above, the components of the gaming machine are verified at the network server after the gaming machine transmits the identification numbers, hash values, etc., to the network server.
- Another aspect of the present invention is a method and system for recording event messages in a gaming machine. The device may comprise a gaming machine which contains a monitor for monitoring one or more system events being processed by the gaming machine. The operating system of the gaming machine is event driven. In an event driven system or device, applications and components respond to input from the user (mouse movement, keystrokes, menu choices, etc.) and messages from other applications and components. This is in contrast to, for example, a batch operation that continuously processes the next item from a group of instructions. The monitor comprises an event management system, which comprises software or firmware that monitors components of the device. Alternatively, the monitor may be located on a remote server, workstation or other network device. The monitor, which may comprise hardware and software components such as a processor and event management software, monitors routine and non-routine events. As an example, a coin insertion into a gaming machine will trigger a corresponding routine coin-in event message that triggers components to operate and/or software instructions to execute. Similarly, an exception fault or divide by zero condition will trigger a non-routine or error event message to be generated for example. These event messages can be generally referred to as system events.
- Either included within the monitor, or separately but in close coordination with the monitor, is a detector for detecting selected system events of the one or more system events so that they may be recorded. The gaming machine, or the remote server monitoring the gaming machine, stores the event message for the detected system event in a log file.
- Each monitored system event has a system event type. The detector selects the selected system event based on the system event type for the selected system event. The system event type may be a code in the event message that indicates a category of events that occur in the system that the system event belongs to. For example, the previously mentioned coin-in, exception fault and divide by zero system events are each so identified with the system event type. The detector selects the selected system event by comparing the system event type for each monitored system event to a list of system event types, and selecting one of the monitored system events for the selected system event if the system event type for the selected one monitored system event matches one of the system event types in the list. Each system event is monitored and as the detector selects a plurality of system events based on their types, the system event messages for each selected system event are stored in a log file. The list may be stored in an index or lookup file on a persistent storage media of one of the alterable types described above. The lookup file may comprise a database file, which may be relational, object based or in XML format for example. The log file may also be stored on a persistent storage media.
- A buffer region of a memory may be set aside for buffering a plurality of the monitored system events, wherein the step of storing comprises storing one or more of the buffered system events in the log file with the selected one of the system events each time one of the system event types is detected by the detector. Preferably, the buffer should be large enough so that at least the last 1000 system events may be stored in the buffer, and then written if a selected system event is detected and stored. The buffer is thus operated as a first-in-first-out stack of system event messages.
- Other digital contents of memory or components in the device may be stored upon detection of a selected system event. For example, it may be desirable to store the entire contents of a memory component, selected contents of a memory component, or selected or entire values for registers of a processor component of the gaming machine. For example, if a selected system event is a memory protection exception error, then it may be desirable to store at least the contents of the protected memory that was violated and the memory allocation tables for the offending application(s) that caused the error. Even if the memory in which the protection exception error occurred comprises a safe or battery-backed random access memory device, it nevertheless still may be desirable to store the contents in case other applications should further modify the memory.
- As another aspect of the present invention, it is desirable to perform operations on data files, such as verification operations, such data files being stored on a persistent storage media such as a hard disk, before or without the need for loading of the operating system for an electronic device. Typically, the operating system must be started or booted in order to perform file access operations on the storage media. This is because the operating system usually exclusively contains the file access system used to read the file allocation structure stored on the storage media. However, in some devices, it would be desirable to validate data files on the storage media before booting the operating system for, among other reasons, security purposes.
- In this regard, the system of the present invention has a file allocation reader stored in the basic input/output system (BIOS) or firmware hub (FWH). This makes accessing files stored in the persistent storage media or device possible in the absence of a running operating system. The processor may access the file allocation reader in the BIOS to open the file allocation structure on the persistent storage media and to read it. For faster access, the processor may move the contents of the file allocation structure into a RAM. The processor may then process the file allocation structure to or provide access to files stored on the persistent storage device.
- Providing this functionality in the BIOS or FWH facilitates accessing the files stored in the storage device using a computer program stored in the basic input/output system wherein the computer program comprises a set of executable instructions for processing the file allocation structure. An example of such a computer program that may benefit from this new functionality in the BIOS or FWH is the verification program described above for verifying software components on the persistent storage media. In that case, operating system files may be verified, and this providing of access to files stored on the storage media through the BIOS allows such verification to take place before the operating system is booted, or before any software program is run from the storage media. This makes the verification software completely independent of files stored on the persistent storage media that are being verified.
- As described above, verifying the data files may comprise verifying each data file by retrieving a first abbreviated bit string computed from the file from the database, computing a second abbreviated bit string from the data file, and verifying the file by authenticating the second abbreviated bit string using the first abbreviated bit string. As described above, the database of signatures or abbreviated bit strings may be stored in the BIOS as well, wherein the verification software uses DSA or RSA to verify each data file against the corresponding signature or abbreviated bit string stored in the database. The file allocation reader in the BIOS or FWH may be configured to read a 32-bit based file allocation table, a 16-bit based file allocation table, a WINDOWS NT file system structure, or any other file allocation structure used by the persistent storage media.
- These and other objects and advantages of the invention will become apparent from the following more detailed description, when taken in conjunction with the accompanying drawings of illustrative embodiments.
- FIG. 1 is a block diagram illustrating a device and components capable of verification before and during use of the device using the system and methods of the present invention;
- FIG. 2 is a flow diagram illustrating the steps for performing verification of the device of FIG. 1;
- FIG. 3 is a flow diagram illustrating the steps performed by the system of FIG. 1 for replacing data files that are unverified or contain errors;
- FIG. 4 is a block diagram illustrating the structure of a network that may be used with the device of FIG. 1;
- FIG. 5 is a flow diagram illustrating the steps preformed by a monitor in a gaming machine embodiment of FIG. 1; and
- FIG. 6 is a flow diagram illustrating the steps for reading a file allocation structure or file allocation table of a persistent storage media in the device of FIG. 1.
- Referring now to the drawings, like reference numerals denote like or corresponding parts throughout the drawing figures.
- With reference to FIG. 1, a block diagram illustrating a
device 10 andcomponents 50 capable of verification before and during use of thedevice 10 using the system and methods of the present invention is shown. Thecomponents 50 may comprise, for example, software ordata file components 54, firmware components 64-74,hardware components structural components 130 of thedevice 10. These components include, without limitation, one ormore processors 62,persistent storage media Components 50 may also include data files 54 (which are any collections of data, including executable programs in binary or script form, and the information those programs operate upon), device cabinets (housings) 130, cathode ray tubes (CRTs) 134, or compact disk read only memory (CDROM) or CD read-write (CR-RW)storage 80. The data files 54 may include data files 100-104, software program files 92-96, operating system files 98, or file allocation tables orstructures 99.Ports 139 may be included with thedevice 10 for connection todiagnostic systems 140 and other input/output devices 142. Theports 139 may each comprise a serial port, universal serial bus (USB) port, parallel port or any other type of known port, including a wireless port. Preferably, each of thecomponents 50 have embedded or loaded in them identification numbers or strings that can be accessed by theprocessor 60, including theprocessor 60 itself, which are utilized for verification as explained below. The data files 54 may use their file name as their identification number of string. - Either within the
device 10, or in thediagnostic system 140 attachable to thedevice 10, are executable instructions or asoftware program 70 for verification of the components (verification software 70), which may itself be one of thecomponents 50 to verify if it is internal to thedevice 10. Theverification software 70 is may be stored on a persistent storage media such as thehard disk device 90,ROM 77,EEPROM 64, in a complementary metal oxide semiconductor memory (CMOS) 72, in safe ram comprising a battery-backed static random access memory (BBRAM) 62, in a flash memory or other type of persistent memory. Preferably, theverification software 70 is stored in a basic input/output system (BIOS) 64 device or chip. BIOS chips 64 have been used for storing prior verification software, such as previous versions of the BIOS+ chip used by Bally Gaming Systems, Inc. of Las Vegas, Nev. in their EVO gaming system. Placing theverification software 70 in theBIOS 64 is advantages because the code in theBIOS 64 is usually the first code executed upon boot or start-up of thedevice 10, making it hard to bypass the verification process. - Alternatively, the
verification software 70 may be stored in a firmware hub (FWH), which may comprise the part of anelectronic device 10, which may be a computer, that stores BIOS information. Hub technology is currently being developed and used by the Intel Corporation of Santa Clara, Calif. Usually, so called north and south bridges link elements of chip sets through a peripheral component interconnect (PCI) bus. In the hub architecture, the elements are connected via an interlink dedicated bus. This is a high-speed bus, currently with twice the bandwidth of the PCI bus. Typically, the interlink bus operates at 133 MHz in 2× mode. Being 64 bits wide the interlink provides a bandwidth of 266 MB/sec (2×133.000.000×8 byte). One such hub is known as a firmware hub (FWH). Intel's 82802 FWH stores system BIOS and video BIOS in a 4 Mbit or 8 Mbit EEPROM or flash EEPROM. - As another alternative, the persistent storage media that stores the
verification software 70 may be a removable storage unit such as the CD-ROM or CD-RW device 80, a WORM device, a floppy disk device, a removable type ofhard disk device 90, a ZIP disk device, a JAZZ disk device, a DVD device, a removable flash memory device, or a hard card type ofhard disk device 90. However, thedatabase 74 containing verification data used by theverification software 70, described below, is preferably stored either within thedevice 10 being verified in a non-removable, secure device, such as theBIOS+ 64 shown in FIG. 1, or remotely on a server for networked devices. - With reference to FIG. 2, a flow diagram illustrating the steps for performing verification of the
device 10 of FIG. 1 is shown. Beginning atstep 200, identification numbers of thecomponents 50 are read and then verified. Each identification number is then searched in thedatabase 74 to determine whether each identification number is valid,step 202. The determination may be as simple as checking for whether the identification number exists in the database. If the identification number is not found in thedatabase 74,step 204, then a tilt condition message is generated in thedevice 10,step 206, which may end operation of thedevice 10. - Preferably, digital signatures of the digital contents of at least the data files54 and firmware of the
components 50 are also used to perform verification as explained in detail below. In the database record where the identification number was located in thedatabase component 50 when thedevice 10 was first assembled or before thedevice 10 was deployed, is stored. Theverification software 70 contains instructions that cause theprocessor 60 to read the signature from the database record,step 208. A digital signature analysis is performed,step 210. If the data file 54 or firmware of thecomponent 50 fails an authentication,step 212, then a tilt condition message is generated in thedevice 10,step 206, which may end operation of thedevice 10. - In the case where a
data file 54 comprises one of a plurality of operating system files 98, verification of thatfile 54, in effect, comprises verifying part of anoperating system 98. - The
database 70 may comprise a relational database, object database, or may be stored in XML format, or stored in a number of other formats that are commonly known. However, in the case where storage space is limited for the verification system, a flat file structure for thedatabase 70 may be more desirable, and require less software instructions to read and retrieve information from. Thedatabase 70 may also comprise an independent system stack of bindings from manufacturers of thecomponents 50, each identification number being verified using the binding from the manufacturer of therespective component 50 to verify thecomponent 50. Especially in the context ofsmaller devices 10 such as personal digital assistants (PDAs), such a system stack may comprise a subset of one or more global component databases containing bindings from manufacturers of thecomponents 50, each binding of the subset being associated with at least one of the identification numbers of one of thecomponents 50 in thedevice 10. Providing such a limited subset helps control the size of the verification system by controlling the size of thedatabase 70. Another example of a verification system in which it may be desirable to limit the size of the database is one in which the database is stored in a personal computer's (PC's) complementary metal oxide semiconductor memory (CMOS) 74, along with other configuration settings for the PC. Storing the database in theCMOS 74 may improve security wherein the PC may be configured such that only users with administrative passwords may change the content of the portion of theCMOS 74 containing thedatabase 70. -
Structural components 130, such as cabinets, may contain an electronic identification chip embedded within them, such as a Dallas chip or an IBUTTON device manufactured by Dallas Semiconductor of Dallas Tex. IBUTTONs devices allow a unique identifier, placed within a semiconductor or chip, to be placed on acomponent 50 that may or may not be electronic, such as a computer orgaming machine cabinet 130. The IBUTTON is, in effect, a computer chip enclosed in a 16 mm stainless steel can. It can be mounted, preferably permanently or semi-permanently, on or in thestructural component 130. - The searching or matching of each identification number may comprise matching each identification number based on the type of
component 50 that the identification number identifies. The identification number and the type of component are matched in the database in order to verify that the identification number is valid. Each database record in thedatabase 70 contains the type ofcomponent 50 that the identification number in that record is supposed to represent. The type ofcomponent 50 may be recognized by the verification software either by the location from which the identification number was read, or by performing a test of eachcomponent 50 to determine its type. For example, in someelectronic devices 10, theprocessor 60 may always be located at location 0 on the PCI bus or firmware hub of thedevice 10. Alternatively, by testing thecomponent 50, theverification software 70 may find registers, which may indicate that thecomponent 50 is aprocessor 60. Otherwise, the identification number itself may be formatted to indicate the type ofcomponent 50. - The reading of the identification numbers and verifying the
components 50 may be performed at the time of start-up of thedevice 10, or periodically during operation of thedevice 10. Operation of the device may be stopped if any one of the identification numbers are not matched in thedatabase 10 or if the digital contents of acomponents 50 are not authenticated with the corresponding digital signature stored in thedatabase 74. A tilt condition message is generated by theverification software 70 if any one of the identification numbers is not matched in thedatabase 74. - The signatures in the
database 74 are also referred to as bindings. When thecomponents 50 are installed before thedevice 10 is put into operation in the relevant field of use, at least with respect to thecomponents 50 that comprise data files 54 or contain firmware, a well-known hash function, the Secure Hash Function-1 (SHA-1), may be used for authentication. The SHA-1 computes a 160-bit hash value from the contents of the data file 54 or firmware. This 160-bit hash value, also called an abbreviated bit string, is then processed to create a signature of the game data using an equally well-known, one-way, private signature key technique, the Digital Signature Algorithm (DSA). The DSA uses a private key of a private key/public key pair, and randomly or pseudorandomly generated integers, to produce a 320-bit signature of the 160-bit hash value of the data file 54 or firmware contents of thecomponent 50. This signature is stored in thedatabase 74 in addition to the identification number. - When the
device 10 is in operation in the relevant field of use, to perform a verification of thedevice 10, the verification software executes a DSA verification of the data files 54 and firmware of thecomponents 50. Also stored in thedatabase 74 is the public key of the private key/public key pair. For each data file 54 and firmware of eachcomponent 54, as part of the DSA verification, theprocessor 60 andverification software 70 first computes the hash value of the digital contents of thecomponent 50 or data file 54 using the SHA-1 algorithm. Theverification software 70 contains instructions that cause theprocessor 60 to then processes or authenticate this computed hash value with the stored signature, using the DSA signature verification algorithm, which also takes, as input, the aforementioned public key stored in thedatabase 74. The verification part of the DSA produces a boolean result (yes or no) as to whether the inputs solve the algorithm. If the algorithm is not solved by the inputs, then an unexpected result is produced, thereby failing to verify theparticular component 50 or data file 54. A tilt message is generated which triggers a shut-down mechanism to prohibit the loading operation of thedevice 10 or to stop operation of thedevice 10 if verification is performed during operation. Otherwise, use of thedevice 10 is permitted. A detailed description of the DSA can be found in the U.S. government's Federal Information Processing Standards Publication (FIPS) 186-2. That publication describes each step of the DSA signature generation and verification. - Alternatively, the
verification software 70 may use the Rivest-Shamir-Adleman (RSA) algorithm to verify thecomponents 50. Using the RSA algorithm, a first abbreviated bit string or hash value is computed from each component's digital contents and encrypted into a digital signature. The digital signature is stored in thedatabase 74 along with the identification number for thecomponent 50. When the device is verified, thecomponent 50 is verified by computing a second abbreviated bit string computed from the component's digital contents. The signature is retrieved from thedatabase 74 by searching thedatabase 74 for the identification number. The signature is decrypted to recover the first abbreviated bit string. Thecomponent 50 is then verified by comparing the second abbreviated bit string with the first abbreviated bit string. If the first and second abbreviated bit strings do not match, then thecomponent 50 is not verified. A tilt message is generated which triggers a shut-down mechanism to prohibit the loading operation of thedevice 10 or to stop operation of thedevice 10 if verification is performed during operation. Otherwise, use of thedevice 10 is permitted. - Instead of creating a digital signature for, or signing, each data file54 individually, collections of data files 54 may be signed together in order speed up processing. The abbreviated bit strings, hash values, or signatures, also called digests, of data files 54 are collected into a catalog file, and the catalog is signed as described above. The
verification software 70 identifies each file as being a member of a particular catalog, which can be done by cross referencing the name of the data file or the identification number, in thedatabase 74. For verification, abbreviated bit strings are computed from each of thedigital files 54, and collected into a catalog, which is itself signed, and then verified using DSA or RSA verification techniques as described above. Thus, the catalog itself becomes a signeddata file 54 that is verified, just as if it was anindividual data file 54. - With reference to FIG. 3, a flow diagram illustrating the steps performed by the system of FIG. 1 for replacing data files54 that are unverified or contain errors is shown. In some cases, it may be desirable to nevertheless allow operation of a
device 10 even though adata file 54 failed verification. For example, that data file 54 may contain an error caused by a number of events, such as a bad sector on thehard disk 90, which in turn caused the failed verification of thatdata file 54. In that example, the failed verification is evidently not due to tampering of thedevice 10 as the system of the present invention is generally designed to prevent. Still, operation of thedevice 10 is not desirable unless and until the error in the data file 54 is corrected. When the data file 54 is stored inalterable media 90, correcting such an error may be as simple as replacing thefile 54. Along with the identification number, and encrypted signature or abbreviated bit string, a valid replacement data file 44 may also be stored in thedatabase 74. Starting withstep 300, theverification software 70 finds an invalid data file 54 as described above with reference to FIG. 2. Theverification software 70 may contain logic that examines the failed verification to determine whether the cause of the invalid data file 54 is simply an error in the data file 54, and not tampering,step 302. Such logic may comprise, for example, fuzzy logic, which uses historical data to determine if the circumstances surrounding the failed verification most likely indicate a simple error instead of tampering. A number of factors may be used by theverification software 70 to make such a determination. For example, determination may be based on the number of data files 54 or components that fail verification. Historical data in the fuzzy logic may show that having a certain percentage of failed verifications may indicate tampering of thedevice 10. This may indicate a deceptive replacement of thehard disk 90 in thedevice 10 for example. If the verification software so indicates that tampering of thedevice 10 was most likely to have occurred,step 304, then a tilt message is generated,step 306. Otherwise, a replacement data file 54 is pulled from thedatabase 74 to replace the data file 54 that failed the validation,step 308. - Alternatively to storing the replacement, or update, files in the
database 74, the update files may be located in the CDROM or CD-RW device 80 as indicated at 82. Storing the update files 82 on theCD device 80 is preferable if the data files 54 are large, while the database itself 74 remains stored securely in theBIOS+ 64. The update files 82 are organized in a large update file database for easy indexing by identification number. - With reference to FIG. 4, a block diagram illustrating the structure of a network that may be used with the device of FIG. 1 is shown. In one embodiment, the
database 74 is remote from thedevice 10, or a plurality ofdevices 10, wherein verification is performed over anetwork 400 connecting adatabase server 402 containing thedatabase 74 with thedevice 10. Thedatabase 74 is stored in apersistent storage media 490 inside or connected to thedatabase server 402. The device transmits the identification numbers for each of the components 50 (FIG. 1) to thedatabase server 402. Thedatabase server 402 then performs the step of matching using its own version of theverification software 70 described herein. For example, thedevice 10 may be a personal computer (PC), with verification being performed before a transaction is allowed on anetwork server 404. A prime example of such a system is one set up for performing banking transactions with thenetwork server 404 owned or operated by a bank. In such a system, a bank may only allow trusted transactions using an authorizedPC 10 whose bindings for all of thecomponents 50 and banking transaction software (92 in FIG. 1) have been recorded in thedatabase 74. The database may be either located on the bank'snetwork server 404, or theremote network server 402. Once all of the components have been verified, the bank'snetwork server 402 then allows transactions to take place using thePC 10. - In another example, the
device 10 comprises agaming machine 10, wherein the verification of thegaming machine 10 is performed before game play is allowed on the gaming machine. Thedatabase 74 may either be located in a secure location in thegaming machine 10, such as aROM device 77 enclosed in a lock box within thegaming machine 10, or remotely from thegaming machine 10 so that thegaming machine 10 connects to thenetwork server 402 containing thedatabase 74 over thenetwork 400. As with the bankingpersonal computer 10 described above, thecomponents 50 of thegaming machine 10 are verified at thenetwork server 402 after thegaming machine 10 transmits the identification numbers, hash values, etc., to thenetwork server 402. - Another aspect of the present invention is a method and system for recording event messages in a
gaming machine 10. Thedevice 10 may comprise agaming machine 10, which contains amonitor 108 for monitoring one or more system events being processed by thegaming machine 10. Themonitor 108 may comprise a set of executable instructions, or a software program, which may be located in a variety of places within thegaming machine 10 ready for loading intoRAM 76 for execution by the processor during operation of thegaming machine 10. For example, themonitor 108 may be stored on thehard disk 90,ROM 77 orBBRAM 62. Preferably, theoperating system 98 of thegaming machine 10 is event driven. In an event driven system ordevice 10,applications 92 andcomponents 50 respond to input from the user (mouse movement, keystrokes, menu choices, etc.) and messages fromother applications 92 andcomponents 50. This is in contrast to, for example, a batch operation that continuously processes the next item from a group of instructions. Themonitor 108 comprises an event management system, which comprises software or firmware that monitors theapplications 92,operating system 98 processes andother components 50 of the device. Alternatively, at least parts of themonitor 108 may be located on aremote server 402, workstation or other network devices. - With reference to FIG. 5, a flow diagram illustrating the steps preformed by the
monitor 108 andgaming machine 10 is shown. Themonitor 108, which may alternatively comprise both hardware andsoftware components 50 in thedevice 10. such as itsown processor 60 andevent management software 92, monitors routine and non-routine events or event messages generated in the gaming device,step 500. As an example, a coin insertion into thegaming machine 10 will trigger a corresponding routine coin-in event message that triggerscomponents 50 to operate and/or software instructions to execute. Similarly, an exception fault or divide by zero condition will trigger a non-routine or error event message to be generated. These event messages can be generally referred to as system events or event messages. - Either included within the
monitor 108, or separately but in close coordination with themonitor 108, is adetector 110 for detecting selected system events of the one or more system events so that they may be recorded,step 502. Thegaming machine 10, or theremote server 402 monitoring thegaming machine 10, stores the event message for the detected system event in alog file 104 on a persistent storage device such as thehard disk 90 or apersistent storage media 490 on theremote server 402. - In the step of detecting,
step 502, each monitored system event is of a certain type, which, for reference purposes, can be referred to as a system event type. Thedetector 110 selects the selected system event based on the system event type for the selected system event. The system event type may, for example, comprise a code in the event message that indicates a category of events that occur in thegaming machine 10 that the system event belongs to or from which the event message was generated. For example, the previously mentioned coin-in, exception fault and divide by zero system events are each so identified with the system event type. Instep 502, thedetector 110 selects the selected system event by comparing the system event type for each monitored system event to a list of system event types, and selecting one of the monitored system events for the selected system event if the system event type for the selected one monitored system event matches one of the system event types in the list. Each system event is monitored and as the detector selects a plurality of system events based on their types, the system event messages for each selected system event is stored in thelog file 104 on thehard disk 90. The list may be stored in an index orlookup file 112 on thehard disk 90. The lookup file may comprise adatabase file 112 which may be relational, object based or in XML format for example. - A buffer region of the
RAM 76 may be set aside for buffering a plurality of the monitored system events, wherein the step of storing,step 503, comprises storing one or more of the buffered system events in thelog file 104 each time one of the system event types for storing is detected instep 502 by thedetector 110. Preferably, the buffer inRAM 76 should be large enough so that at least the last 1000 system events may be stored in the buffer, and then written to thelog file 104 if a selected system event is detected and stored. The buffer inRAM 76 is thus operated as a first-in-first-out stack of system event messages. - Other digital contents of
memories components 50 in thegaming machine 10 may be stored upon detection of a selected system event. For example, it may be desirable to store the entire contents of a memory of acomponent 50, selected contents of a memory of acomponent 50, or selected or entire values for registers of aprocessor component 60 of thegaming machine 10. For example, if a selected system event is a memory protection exception error, then it may be desirable to store at least the contents of the protected memory inRAM 76 that was violated and memory allocation tables for the offending application(s) that caused the error. Even if the memory portion in which the protection exception error occurred comprises a safe RAM or battery-backedmemory device 62, it nevertheless still may be desirable to store the contents of thatmemory 62 in case other applications should further modify thememory 62. - With reference to FIG. 6, a flow diagram illustrating the steps for reading a file allocation structure or file allocation table99 of a persistent storage media is shown. As another aspect of the present invention, it is desirable to perform operations on data files 54 stored on the persistent storage media, such as verification operations, before or without the need for the
operating system 98 for anelectronic device 10 is loaded. Typically, theoperating system 98 must be loaded, and started or booted, in order to perform file access operations on persistent thestorage media 90. This is because the operating system usually exclusively contains the file access system used to read thefile allocation structure 99 stored on thestorage media 90. However, in somedevices 10, it would be desirable to validate data files 54 on thepersistent storage media 90 before booting theoperating system 99 for, among other reasons, security purposes. - In that regard, the system of the present invention has a
file allocation reader 76 stored in the BIOS orFWH 64. This makes accessing files stored in thepersistent storage media 90 possible in the absence of a runningoperating system 98. Theprocessor 60 may access thefile allocation reader 76 stored in the BIOS,step 600, to open thefile allocation structure 99 on thepersistent storage media 90 and to read it,step 602. Thefile allocation reader 76 is a computer program which comprises a set of executable instructions for processing the file allocation structure such as that used by theoperating system 98. For faster access, theprocessor 60 may move the contents of thefile allocation structure 99 into aRAM 76. Theprocessor 60 may then process thefile allocation structure 604 to provide access to files stored in the storage device. - An example of such an application that may benefit from this new functionality in the BIOS is the
verification software 70 described above for verifying software components or data files 54 on thepersistent storage media 90. In that case, operating system files 98 may be verified before loading or booting, or before anysoftware program 92 is run from thepersistent storage media 90. This makes theverification software 70 completely independent of data files 54 stored on thepersistent storage media 90 which are being verified. - As described above, verifying the data files54 may comprise verifying each
data 54 file by retrieving a first abbreviated bit string computed from the file from thedatabase 74, computing a second abbreviated bit string from the data file 54, and verifying the file by authenticating the second abbreviated bit string using the first abbreviated bit string. As described above, the database of signatures or abbreviated bit strings 74 may be stored in theBIOS 64 as well, wherein the verification software uses DSA or RSA to verify each data file 54 against the corresponding signature or abbreviated bit string stored in thedatabase 74. Thefile allocation reader 76 in the BIOS orFWH 64 may be configured to read a 32-bit based file allocation table 99, a 16-bit based file allocation table 99, a WINDOWS NTfile system structure 99, or any otherfile allocation structures 99 used by thepersistent storage media 90. - It will be apparent from the foregoing that, while particular forms of the invention have been illustrated and described, various modifications can be made without departing from the spirit and scope of the invention. Accordingly, it is not intended that the invention be limited, except as by the appended claims.
Claims (137)
Priority Applications (23)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US10/243,912 US20040054952A1 (en) | 2002-09-13 | 2002-09-13 | Device verification system and method |
PCT/US2003/026555 WO2004025396A2 (en) | 2002-09-13 | 2003-08-25 | Device verification system and method |
AU2003262844A AU2003262844A1 (en) | 2002-09-13 | 2003-08-25 | Device verification system and method |
EP03795624A EP1629338A4 (en) | 2002-09-13 | 2003-08-25 | Device verification system and method |
CA002498617A CA2498617A1 (en) | 2002-09-13 | 2003-08-25 | Device verification system and method |
NZ538798A NZ538798A (en) | 2002-09-13 | 2003-08-25 | Device verification system and method |
US10/836,849 US7730325B2 (en) | 2002-09-13 | 2004-04-30 | Verification system and method |
US10/837,209 US7907729B2 (en) | 2002-09-13 | 2004-04-30 | Rollback attack prevention system and method |
US11/065,757 US7749076B2 (en) | 2002-09-13 | 2005-02-24 | System and method for an alterable storage media in a gaming machine |
US11/225,770 US20060287098A1 (en) | 2001-09-28 | 2005-09-12 | System and method for gaming-content configuration and management system |
US11/464,584 US7783881B2 (en) | 2002-09-13 | 2006-08-15 | Gaming device verification system and method using a file allocation structure |
US11/464,594 US7836302B2 (en) | 2002-09-13 | 2006-08-15 | Device verification system and method |
US12/291,842 US9053610B2 (en) | 2002-09-13 | 2008-11-12 | Networked gaming system communication protocols and methods |
US12/291,843 US8986122B2 (en) | 2002-09-13 | 2008-11-12 | Networked gaming system communication protocols and methods |
US12/291,835 US8986121B2 (en) | 2002-09-13 | 2008-11-12 | Networked gaming system communication protocols and methods |
US12/760,490 US20100203962A1 (en) | 2002-09-13 | 2010-04-14 | Verification system and method |
US12/788,181 US8613662B2 (en) | 2002-09-13 | 2010-05-26 | Alterable storage media gaming machine |
US12/859,687 US8554682B2 (en) | 2002-09-13 | 2010-08-19 | Device verification system and method |
US13/019,148 US8165294B2 (en) | 2002-09-13 | 2011-02-01 | Rollback attack prevention system and method |
US13/022,500 US20110294575A1 (en) | 2001-09-28 | 2011-02-07 | Method for Monitoring and Controlling Gaming Devices |
US14/022,094 US9317994B2 (en) | 2002-09-13 | 2013-09-09 | Networked gaming system communication protocols and methods |
US14/065,366 US9466170B2 (en) | 2002-09-13 | 2013-10-28 | Networked gaming system communication protocols and methods |
US14/135,232 US20140113731A1 (en) | 2002-09-13 | 2013-12-19 | Alterable storage media gaming machine |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US10/243,912 US20040054952A1 (en) | 2002-09-13 | 2002-09-13 | Device verification system and method |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US09/967,283 Continuation-In-Part US7338372B2 (en) | 2001-09-28 | 2001-09-28 | Reconfigurable gaming machine |
Related Child Applications (6)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US10/836,849 Continuation-In-Part US7730325B2 (en) | 2002-09-13 | 2004-04-30 | Verification system and method |
US10/837,209 Continuation-In-Part US7907729B2 (en) | 2002-09-13 | 2004-04-30 | Rollback attack prevention system and method |
US10/943,771 Continuation-In-Part US7950999B2 (en) | 1999-12-30 | 2004-09-16 | User interface system and method for a gaming machine |
US11/065,757 Continuation-In-Part US7749076B2 (en) | 2001-09-28 | 2005-02-24 | System and method for an alterable storage media in a gaming machine |
US11/464,584 Division US7783881B2 (en) | 2002-09-13 | 2006-08-15 | Gaming device verification system and method using a file allocation structure |
US11/464,594 Division US7836302B2 (en) | 2002-09-13 | 2006-08-15 | Device verification system and method |
Publications (1)
Publication Number | Publication Date |
---|---|
US20040054952A1 true US20040054952A1 (en) | 2004-03-18 |
Family
ID=31991764
Family Applications (4)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US10/243,912 Abandoned US20040054952A1 (en) | 2001-09-28 | 2002-09-13 | Device verification system and method |
US11/464,584 Expired - Fee Related US7783881B2 (en) | 2002-09-13 | 2006-08-15 | Gaming device verification system and method using a file allocation structure |
US11/464,594 Expired - Fee Related US7836302B2 (en) | 2002-09-13 | 2006-08-15 | Device verification system and method |
US12/859,687 Expired - Fee Related US8554682B2 (en) | 2002-09-13 | 2010-08-19 | Device verification system and method |
Family Applications After (3)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US11/464,584 Expired - Fee Related US7783881B2 (en) | 2002-09-13 | 2006-08-15 | Gaming device verification system and method using a file allocation structure |
US11/464,594 Expired - Fee Related US7836302B2 (en) | 2002-09-13 | 2006-08-15 | Device verification system and method |
US12/859,687 Expired - Fee Related US8554682B2 (en) | 2002-09-13 | 2010-08-19 | Device verification system and method |
Country Status (6)
Country | Link |
---|---|
US (4) | US20040054952A1 (en) |
EP (1) | EP1629338A4 (en) |
AU (1) | AU2003262844A1 (en) |
CA (1) | CA2498617A1 (en) |
NZ (1) | NZ538798A (en) |
WO (1) | WO2004025396A2 (en) |
Cited By (48)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040198489A1 (en) * | 2000-06-23 | 2004-10-07 | Kaminkow Joseph E. | Gaming device having touch activated alternating or changing symbol |
US20050107149A1 (en) * | 2003-11-13 | 2005-05-19 | Jamal Benbrahim | Gaming apparatus with a removable recordable storage memory |
US20050278535A1 (en) * | 2004-06-12 | 2005-12-15 | Microsoft Corporation | Profile protection |
US20060288422A1 (en) * | 2005-06-21 | 2006-12-21 | Microsoft Corporation | Data structure for identifying hardware and software licenses to distribute with a complying device |
US20070016761A1 (en) * | 2005-06-30 | 2007-01-18 | International Business Machines Corporation | Method, apparatus, and computer program product for implementing enhanced system behavior control |
US20070099698A1 (en) * | 2005-10-31 | 2007-05-03 | Cole Joseph W | Method and system for localized authentication of gaming machine |
US20070202951A1 (en) * | 2002-11-14 | 2007-08-30 | Arena Unlimited, Inc. | Asset manipulation of computer games using a network |
EP1853364A2 (en) * | 2005-02-24 | 2007-11-14 | Bally Gaming Inc. | System and method for an alterable storage media in a gaming machine |
US20080033609A1 (en) * | 2006-08-04 | 2008-02-07 | Ramin Razavi | Automotive diagnostic and tuning system |
EP1881466A3 (en) * | 2006-07-13 | 2008-03-05 | Aristocrat Technologies Australia PTY Ltd | Gaming security system |
US20080076532A1 (en) * | 2006-09-27 | 2008-03-27 | Igt | Server based gaming system having system triggered loyalty award sequences |
US20080076531A1 (en) * | 2006-09-27 | 2008-03-27 | Igt | Server based gaming system having system triggered loyalty award sequences |
US20080086657A1 (en) * | 2006-10-06 | 2008-04-10 | Xuemin Chen | Method and system for disaster recovery in a secure reprogrammable system |
US20080113766A1 (en) * | 2006-11-10 | 2008-05-15 | Igt | Flexibly configurable button panels for gaming machines |
US20080113737A1 (en) * | 2006-11-10 | 2008-05-15 | Igt | Dynamic display systems for gaming machines |
US20080220880A1 (en) * | 2005-09-07 | 2008-09-11 | Bally Gaming, Inc. | Trusted Cabinet Identification System |
US20090131168A1 (en) * | 2006-11-10 | 2009-05-21 | Igt | Systems and methods for improving a button assembly |
US20090319693A1 (en) * | 2008-06-24 | 2009-12-24 | Samsung Electronics Co., Ltd. | Method and apparatus for interfacing host device and slave device |
US7695363B2 (en) | 2000-06-23 | 2010-04-13 | Igt | Gaming device having multiple display interfaces |
US7699699B2 (en) | 2000-06-23 | 2010-04-20 | Igt | Gaming device having multiple selectable display interfaces based on player's wagers |
US20100100875A1 (en) * | 2008-10-16 | 2010-04-22 | Airbus Operations | Method and device for processing configuration reports |
AU2007203244B2 (en) * | 2006-07-13 | 2010-08-12 | Aristocrat Technologies Australia Pty Limited | An electronic gaming machine |
US7780523B2 (en) | 2005-09-09 | 2010-08-24 | Igt | Server based gaming system having multiple progressive awards |
US7905778B2 (en) | 2005-09-09 | 2011-03-15 | Igt | Server based gaming system having multiple progressive awards |
US7963847B2 (en) | 2004-08-19 | 2011-06-21 | Igt | Gaming system having multiple gaming machines which provide bonus awards |
US7985133B2 (en) | 2007-07-30 | 2011-07-26 | Igt | Gaming system and method for providing an additional gaming currency |
US7993199B2 (en) | 2006-09-27 | 2011-08-09 | Igt | Server based gaming system having system triggered loyalty award sequences |
US8021230B2 (en) | 2004-08-19 | 2011-09-20 | Igt | Gaming system having multiple gaming machines which provide bonus awards |
US8128491B2 (en) | 2005-09-09 | 2012-03-06 | Igt | Server based gaming system having multiple progressive awards |
US8251791B2 (en) | 2004-08-19 | 2012-08-28 | Igt | Gaming system having multiple gaming machines which provide bonus awards |
US8512130B2 (en) | 2006-07-27 | 2013-08-20 | Igt | Gaming system with linked gaming machines that are configurable to have a same probability of winning a designated award |
US8627097B2 (en) | 2012-03-27 | 2014-01-07 | Igt | System and method enabling parallel processing of hash functions using authentication checkpoint hashes |
US8821273B2 (en) | 2010-09-20 | 2014-09-02 | Igt | Preventing a media display from hijacking a gaming machine |
CN104160376A (en) * | 2012-03-07 | 2014-11-19 | 微软公司 | Offline provisioning of virtual machines |
US8900053B2 (en) | 2007-08-10 | 2014-12-02 | Igt | Gaming system and method for providing different bonus awards based on different types of triggered events |
US20150059000A1 (en) * | 2013-08-26 | 2015-02-26 | Lenovo (Beijing) Co., Ltd. | Method and electronic device for protecting data |
US9039516B2 (en) | 2009-07-30 | 2015-05-26 | Igt | Concurrent play on multiple gaming machines |
US9142097B2 (en) | 2007-10-26 | 2015-09-22 | Igt | Gaming system and method for providing play of local first game and remote second game |
AU2013206811B2 (en) * | 2005-02-24 | 2015-11-26 | Bally Gaming, Inc. | System and method for an alterable storage media in a gaming machine |
CN105354512A (en) * | 2015-09-30 | 2016-02-24 | 联想(北京)有限公司 | File storage method and electronic device |
CN106484457A (en) * | 2015-08-25 | 2017-03-08 | 福特全球技术公司 | Multistage safe vehicle software updates |
EP3179400A1 (en) * | 2015-12-07 | 2017-06-14 | Ingenico Group | Method for loading a computing resource into an electronic device, electronic module and corresponding computer program |
US20180004550A1 (en) * | 2016-07-01 | 2018-01-04 | Intertrust Technologies Corporation | Device integration platform systems and methods |
US9875618B2 (en) | 2014-07-24 | 2018-01-23 | Igt | Gaming system and method employing multi-directional interaction between multiple concurrently played games |
US9972171B2 (en) | 2015-09-24 | 2018-05-15 | Igt | Gaming system and method for providing a triggering event based on a collection of units from different games |
CN111247507A (en) * | 2017-10-26 | 2020-06-05 | 惠普发展公司,有限责任合伙企业 | Asset handling from persistent storage |
US11146401B2 (en) * | 2016-08-10 | 2021-10-12 | Ford Global Technologies, Llc | Software authentication before software update |
US11148059B2 (en) | 2017-09-28 | 2021-10-19 | Ags Llc | Methods for generating and validating gaming machine subscription keys and securing subscription parameter data and jurisdiction files |
Families Citing this family (65)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10052497B2 (en) * | 2005-07-22 | 2018-08-21 | The Board Of Trustees Of The Leland Stanford Junior University | System for optical stimulation of target cells |
US8926959B2 (en) * | 2005-07-22 | 2015-01-06 | The Board Of Trustees Of The Leland Stanford Junior University | System for optical stimulation of target cells |
JP2009502140A (en) * | 2005-07-22 | 2009-01-29 | ザ ボード オブ トラスティーズ オブ ザ レランド スタンフォード ジュニア ユニバーシティー | Photoactivated cation channel and use thereof |
US9238150B2 (en) | 2005-07-22 | 2016-01-19 | The Board Of Trustees Of The Leland Stanford Junior University | Optical tissue interface method and apparatus for stimulating cells |
US9274099B2 (en) * | 2005-07-22 | 2016-03-01 | The Board Of Trustees Of The Leland Stanford Junior University | Screening test drugs to identify their effects on cell membrane voltage-gated ion channel |
US20070057453A1 (en) * | 2005-09-12 | 2007-03-15 | Bally Gaming, Inc. | System and method to handle playing cards, employing manual movable cover |
US20070057454A1 (en) * | 2005-09-12 | 2007-03-15 | Bally Gaming, Inc. | System and method to handle playing cards, employing manual movable cover |
JP4896595B2 (en) * | 2006-01-18 | 2012-03-14 | 株式会社Pfu | Image reading apparatus and program |
US7967682B2 (en) | 2006-04-12 | 2011-06-28 | Bally Gaming, Inc. | Wireless gaming environment |
US8100753B2 (en) * | 2006-05-23 | 2012-01-24 | Bally Gaming, Inc. | Systems, methods and articles to facilitate playing card games with selectable odds |
US8052519B2 (en) * | 2006-06-08 | 2011-11-08 | Bally Gaming, Inc. | Systems, methods and articles to facilitate lockout of selectable odds/advantage in playing card games |
US9101820B2 (en) | 2006-11-09 | 2015-08-11 | Bally Gaming, Inc. | System, method and apparatus to produce decks for and operate games played with playing cards |
US8784212B2 (en) | 2006-11-10 | 2014-07-22 | Bally Gaming, Inc. | Networked gaming environment employing different classes of gaming machines |
US20080171588A1 (en) * | 2006-11-10 | 2008-07-17 | Bally Gaming, Inc. | Download and configuration server-based system and method with structured data |
US8191121B2 (en) * | 2006-11-10 | 2012-05-29 | Bally Gaming, Inc. | Methods and systems for controlling access to resources in a gaming network |
US9275512B2 (en) | 2006-11-10 | 2016-03-01 | Bally Gaming, Inc. | Secure communications in gaming system |
US8195826B2 (en) | 2006-11-10 | 2012-06-05 | Bally Gaming, Inc. | UDP broadcast for user interface in a download and configuration gaming method |
US8631501B2 (en) * | 2006-11-10 | 2014-01-14 | Bally Gaming, Inc. | Reporting function in gaming system environment |
US9111078B2 (en) * | 2006-11-10 | 2015-08-18 | Bally Gaming, Inc. | Package manager service in gaming system |
US8920233B2 (en) * | 2006-11-10 | 2014-12-30 | Bally Gaming, Inc. | Assignment template and assignment bundle in a gaming configuration and download system |
US8478833B2 (en) | 2006-11-10 | 2013-07-02 | Bally Gaming, Inc. | UDP broadcast for user interface in a download and configuration gaming system |
US8131829B2 (en) * | 2006-11-13 | 2012-03-06 | Bally Gaming, Inc. | Gaming machine collection and management |
US8930461B2 (en) * | 2006-11-13 | 2015-01-06 | Bally Gaming, Inc. | Download and configuration management engine for gaming system |
US9082258B2 (en) * | 2006-11-13 | 2015-07-14 | Bally Gaming, Inc. | Method and system for providing download and configuration job progress tracking and display via host user interface |
US8347280B2 (en) * | 2006-11-13 | 2013-01-01 | Bally Gaming, Inc. | System and method for validating download or configuration assignment for an EGM or EGM collection |
US10035027B2 (en) * | 2007-10-31 | 2018-07-31 | The Board Of Trustees Of The Leland Stanford Junior University | Device and method for ultrasonic neuromodulation via stereotactic frame based technique |
US10434327B2 (en) | 2007-10-31 | 2019-10-08 | The Board Of Trustees Of The Leland Stanford Junior University | Implantable optical stimulators |
US9613487B2 (en) | 2007-11-02 | 2017-04-04 | Bally Gaming, Inc. | Game related systems, methods, and articles that combine virtual and physical elements |
US20090119221A1 (en) * | 2007-11-05 | 2009-05-07 | Timothy Martin Weston | System and Method for Cryptographically Authenticated Display Prompt Control for Multifunctional Payment Terminals |
US8201229B2 (en) * | 2007-11-12 | 2012-06-12 | Bally Gaming, Inc. | User authorization system and methods |
US8616958B2 (en) * | 2007-11-12 | 2013-12-31 | Bally Gaming, Inc. | Discovery method and system for dynamically locating networked gaming components and resources |
US20090275374A1 (en) * | 2008-04-30 | 2009-11-05 | Bally Gaming, Inc. | Tournament play in a gaming property |
US8721431B2 (en) | 2008-04-30 | 2014-05-13 | Bally Gaming, Inc. | Systems, methods, and devices for providing instances of a secondary game |
US20090275401A1 (en) * | 2008-04-30 | 2009-11-05 | Bally Gaming, Inc. | Method, system, apparatus, and article of manufacture for profile-driven configuration for electronic gaming machines (egms) |
US8856657B2 (en) * | 2008-04-30 | 2014-10-07 | Bally Gaming, Inc. | User interface for managing network download and configuration tasks |
US9005034B2 (en) | 2008-04-30 | 2015-04-14 | Bally Gaming, Inc. | Systems and methods for out-of-band gaming machine management |
US9483911B2 (en) | 2008-04-30 | 2016-11-01 | Bally Gaming, Inc. | Information distribution in gaming networks |
US8366542B2 (en) * | 2008-05-24 | 2013-02-05 | Bally Gaming, Inc. | Networked gaming system with enterprise accounting methods and apparatus |
US9443377B2 (en) | 2008-05-30 | 2016-09-13 | Bally Gaming, Inc. | Web pages for gaming devices |
CA2728402A1 (en) | 2008-06-17 | 2009-12-23 | The Board Of Trustees Of The Leland Stanford Junior University | Apparatus and methods for controlling cellular development |
EP3192562B1 (en) * | 2008-06-17 | 2020-03-04 | The Board of Trustees of the Leland Stanford Junior University | Devices for optical stimulation of target cells using an optical transmission element |
WO2010006049A1 (en) * | 2008-07-08 | 2010-01-14 | The Board Of Trustees Of The Leland Stanford Junior University | Materials and approaches for optical stimulation of the peripheral nervous system |
WO2010006187A2 (en) | 2008-07-11 | 2010-01-14 | Bally Gaming, Inc. | Integration gateway |
US11385758B2 (en) | 2008-10-09 | 2022-07-12 | Aristocrat Technologies Australia Pty Limited | Gaming system and gaming system processor module |
AU2009222627B2 (en) | 2008-10-09 | 2011-07-21 | Aristocrat Technologies Australia Pty Limited | Gaming system and gaming system processor module |
US11287939B2 (en) | 2008-10-09 | 2022-03-29 | Aristocrat Technologies Australia Pty Limited | Gaming system and gaming system processor module |
US8266213B2 (en) | 2008-11-14 | 2012-09-11 | Bally Gaming, Inc. | Apparatus, method, and system to provide a multiple processor architecture for server-based gaming |
NZ602416A (en) | 2008-11-14 | 2014-08-29 | Univ Leland Stanford Junior | Optically-based stimulation of target cells and modifications thereto |
US8347303B2 (en) | 2008-11-14 | 2013-01-01 | Bally Gaming, Inc. | Apparatus, method, and system to provide a multi-core processor for an electronic gaming machine (EGM) |
US8423790B2 (en) | 2008-11-18 | 2013-04-16 | Bally Gaming, Inc. | Module validation |
US20100162414A1 (en) * | 2008-12-23 | 2010-06-24 | General Instrument Corporation | Digital Rights Management for Differing Domain-Size Restrictions |
CN102318407B (en) * | 2009-02-16 | 2014-07-16 | 瑞典爱立信有限公司 | Controlling cell activation in a radio communication network |
US8192283B2 (en) | 2009-03-10 | 2012-06-05 | Bally Gaming, Inc. | Networked gaming system including a live floor view module |
US8843416B2 (en) * | 2009-09-11 | 2014-09-23 | NetESCO LLC | Determining energy consumption in a structure |
US9471045B2 (en) | 2009-09-11 | 2016-10-18 | NetESCO LLC | Controlling building systems |
US9122492B2 (en) * | 2010-10-25 | 2015-09-01 | Wms Gaming, Inc. | Bios used in gaming machine supporting pluralaties of modules by utilizing subroutines of the bios code |
CA2816990A1 (en) | 2010-11-05 | 2012-05-10 | The Board Of Trustees Of The Leland Stanford Junior University | Stabilized step function opsin proteins and methods of using the same |
WO2012061681A1 (en) | 2010-11-05 | 2012-05-10 | The Board Of Trustees Of The Leland Stanford Junior University. | Control and characterization of memory function |
JP6355335B2 (en) | 2010-11-05 | 2018-07-11 | ザ ボード オブ トラスティーズ オブ ザ レランド スタンフォード ジュニア ユニバーシティー | Optogenetic control of reward-related behavior |
US9058716B2 (en) | 2011-06-06 | 2015-06-16 | Bally Gaming, Inc. | Remote game play in a wireless gaming environment |
US8974305B2 (en) | 2012-01-18 | 2015-03-10 | Bally Gaming, Inc. | Network gaming architecture, gaming systems, and related methods |
US9120007B2 (en) | 2012-01-18 | 2015-09-01 | Bally Gaming, Inc. | Network gaming architecture, gaming systems, and related methods |
EP2909806B1 (en) * | 2012-10-19 | 2021-12-01 | McAfee, LLC | Personal safety and emergency services |
US11113401B2 (en) | 2019-03-21 | 2021-09-07 | Aristocrat Technologies Australia Pty Limited | Secure bootloader for electronic gaming machines and other computing devices |
US11120138B2 (en) | 2019-03-21 | 2021-09-14 | Aristocrat Technologies Australia Pty Limited | Secure bootloader for electronic gaming machines and other computing devices |
Citations (62)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4727544A (en) * | 1986-06-05 | 1988-02-23 | Bally Manufacturing Corporation | Memory integrity checking system for a gaming device |
US5155768A (en) * | 1990-03-16 | 1992-10-13 | Sega Enterprises, Ltd. | Security system for software |
US5332219A (en) * | 1992-10-08 | 1994-07-26 | Rio Properties, Inc. | Apparatus and method for playing an electronic poker game |
US5342047A (en) * | 1992-04-08 | 1994-08-30 | Bally Gaming International, Inc. | Touch screen video gaming machine |
US5421006A (en) * | 1992-05-07 | 1995-05-30 | Compaq Computer Corp. | Method and apparatus for assessing integrity of computer system software |
US5475839A (en) * | 1990-03-28 | 1995-12-12 | National Semiconductor Corporation | Method and structure for securing access to a computer system |
US5575717A (en) * | 1995-08-18 | 1996-11-19 | Merit Industries, Inc. | System for creating menu choices of video games on a display |
US5599231A (en) * | 1994-10-31 | 1997-02-04 | Nintendo Co., Ltd. | Security systems and methods for a videographics and authentication game/program fabricating device |
US5643086A (en) * | 1995-06-29 | 1997-07-01 | Silicon Gaming, Inc. | Electronic casino gaming apparatus with improved play capacity, authentication and security |
US5664999A (en) * | 1995-06-23 | 1997-09-09 | Sammy Industries, Co., Ltd. | Picture amusement apparatus |
US5725428A (en) * | 1995-03-09 | 1998-03-10 | Atronic Casino Technology Distribution Gmbh | Video slot machine |
US5768382A (en) * | 1995-11-22 | 1998-06-16 | Walker Asset Management Limited Partnership | Remote-auditing of computer generated outcomes and authenticated biling and access control system using cryptographic and other protocols |
US5770533A (en) * | 1994-05-02 | 1998-06-23 | Franchi; John Franco | Open architecture casino operating system |
US5769716A (en) * | 1996-09-30 | 1998-06-23 | International Game Technology | Symbol fall game method and apparatus |
US5935002A (en) * | 1995-03-10 | 1999-08-10 | Sal Falciglia, Sr. Falciglia Enterprises | Computer-based system and method for playing a bingo-like game |
US5946460A (en) * | 1996-09-13 | 1999-08-31 | International Business Machines Corporation | System setup verification for peripheral devices |
US5951397A (en) * | 1992-07-24 | 1999-09-14 | International Game Technology | Gaming machine and method using touch screen |
US6006328A (en) * | 1995-07-14 | 1999-12-21 | Christopher N. Drake | Computer software authentication, protection, and security system |
US6015346A (en) * | 1996-01-25 | 2000-01-18 | Aristocat Leisure Industires Pty. Ltd. | Indicia selection game |
US6039648A (en) * | 1997-03-04 | 2000-03-21 | Casino Data Systems | Automated tournament gaming system: apparatus and method |
US6083105A (en) * | 1998-08-13 | 2000-07-04 | Paul Ronin | Computerized roulette playing apparatus for a single player |
US6093100A (en) * | 1996-02-01 | 2000-07-25 | Ptt, Llc | Modified poker card/tournament game and interactive network computer system for implementing same |
US6099408A (en) * | 1996-12-31 | 2000-08-08 | Walker Digital, Llc | Method and apparatus for securing electronic games |
US6102798A (en) * | 1996-12-18 | 2000-08-15 | Aristocrat Technologies Australia Pty Ltd. | Slot machine game-find the prize |
US6104815A (en) * | 1997-01-10 | 2000-08-15 | Silicon Gaming, Inc. | Method and apparatus using geographical position and universal time determination means to provide authenticated, secure, on-line communication between remote gaming locations |
US6102394A (en) * | 1999-07-12 | 2000-08-15 | Wms Gaming, Inc. | Button panel system for a gaming device |
US6108420A (en) * | 1997-04-10 | 2000-08-22 | Channelware Inc. | Method and system for networked installation of uniquely customized, authenticable, and traceable software application |
US6138236A (en) * | 1996-07-01 | 2000-10-24 | Sun Microsystems, Inc. | Method and apparatus for firmware authentication |
US6135884A (en) * | 1997-08-08 | 2000-10-24 | International Game Technology | Gaming machine having secondary display for providing video content |
US6149522A (en) * | 1995-06-29 | 2000-11-21 | Silicon Gaming - Nevada | Method of authenticating game data sets in an electronic casino gaming system |
US6159097A (en) * | 1999-06-30 | 2000-12-12 | Wms Gaming Inc. | Gaming machine with variable probability of obtaining bonus game payouts |
US6301658B1 (en) * | 1998-09-09 | 2001-10-09 | Secure Computing Corporation | Method and system for authenticating digital certificates issued by an authentication hierarchy |
US6364769B1 (en) * | 1997-05-21 | 2002-04-02 | Casino Data Systems | Gaming device security system: apparatus and method |
US20020126846A1 (en) * | 2001-03-09 | 2002-09-12 | Multerer Boyd C. | Multiple user authentication for online console-based gaming |
US20020174062A1 (en) * | 2001-05-16 | 2002-11-21 | Sines Randy D. | Purchasing on the internet using verified order information and bank payment assurance |
US6490491B1 (en) * | 1998-10-29 | 2002-12-03 | Mannesmann Vdo Ag | Method and device for programming a controller, in particular in a motor vehicle |
US6488585B1 (en) * | 1998-10-14 | 2002-12-03 | International Game Technology | Gaming device identification method and apparatus |
US6530837B2 (en) * | 1999-04-21 | 2003-03-11 | Mindplay Llc | Method and apparatus for monitoring casinos and gaming |
US20030100369A1 (en) * | 2001-11-23 | 2003-05-29 | Cyberscan Technology, Inc. | Modular entertainment and gaming systems configured to consume and provide network services |
US6595856B1 (en) * | 2000-01-04 | 2003-07-22 | Sigma Game, Inc. | Electronic security technique for gaming software |
US6620047B1 (en) * | 1995-06-29 | 2003-09-16 | Igt | Electronic gaming apparatus having authentication data sets |
US20040054445A1 (en) * | 2000-05-09 | 2004-03-18 | Vasco Vollmer | Method for controlling devices in a communications network of an automobile |
US6722986B1 (en) * | 1998-11-26 | 2004-04-20 | Aristocrat Technologies Australia Pty Ltd. | Electronic casino gaming with authentication and improved security |
US20040193726A1 (en) * | 2001-11-23 | 2004-09-30 | Jean-Marie Gatto | Methods and systems for large scale controlled and secure data downloading |
US20040198496A1 (en) * | 2003-03-10 | 2004-10-07 | Jean-Marie Gatto | Dynamic configuration of a gaming system |
US20040254013A1 (en) * | 1999-10-06 | 2004-12-16 | Igt | Download procedures for peripheral devices |
US20050015252A1 (en) * | 2003-06-12 | 2005-01-20 | Toru Marumoto | Speech correction apparatus |
US6908391B2 (en) * | 2001-11-23 | 2005-06-21 | Cyberscan Technology, Inc. | Modular entertainment and gaming system configured for network boot, network application load and selective network computation farming |
US6916247B2 (en) * | 2001-11-23 | 2005-07-12 | Cyberscan Technology, Inc. | Modular entertainment and gaming systems |
US6935951B2 (en) * | 2001-09-04 | 2005-08-30 | Igt | Electronic signature capability in a gaming machine |
US6945870B2 (en) * | 2001-11-23 | 2005-09-20 | Cyberscan Technology, Inc. | Modular entertainment and gaming system configured for processing raw biometric data and multimedia response by a remote server |
US20050209007A1 (en) * | 2001-11-23 | 2005-09-22 | Cyberscan Technology, Inc. | Universal game server |
US20050223219A1 (en) * | 2003-03-10 | 2005-10-06 | Cyberscan Technology, Inc. | Dynamic configuration of a gaming system |
US20050282637A1 (en) * | 2003-03-10 | 2005-12-22 | Cyberscan Technology, Inc. | Universal peer-to-peer game download |
US7000249B2 (en) * | 2001-05-18 | 2006-02-14 | 02Micro | Pre-boot authentication system |
US7010682B2 (en) * | 2002-06-28 | 2006-03-07 | Motorola, Inc. | Method and system for vehicle authentication of a component |
US7043641B1 (en) * | 2000-03-08 | 2006-05-09 | Igt | Encryption in a secure computerized gaming system |
US20060100010A1 (en) * | 2002-07-05 | 2006-05-11 | Cyberscan Technology, Inc. | Secure game download |
USRE39369E1 (en) * | 1995-06-29 | 2006-10-31 | Igt | Electronic casino gaming system with improved play capacity, authentication and security |
US7162036B2 (en) * | 2001-08-06 | 2007-01-09 | Igt | Digital identification of unique game characteristics |
US7201662B2 (en) * | 2000-08-21 | 2007-04-10 | Igt | Method and apparatus for software authentication |
US7203841B2 (en) * | 2001-03-08 | 2007-04-10 | Igt | Encryption in a secure computerized gaming system |
Family Cites Families (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
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 |
US5022077A (en) * | 1989-08-25 | 1991-06-04 | International Business Machines Corp. | Apparatus and method for preventing unauthorized access to BIOS in a personal computer system |
US5032979A (en) * | 1990-06-22 | 1991-07-16 | International Business Machines Corporation | Distributed security auditing subsystem for an operating system |
US6185678B1 (en) * | 1997-10-02 | 2001-02-06 | Trustees Of The University Of Pennsylvania | Secure and reliable bootstrap architecture |
US6073240A (en) * | 1997-10-28 | 2000-06-06 | International Business Machines Corporation | Method and apparatus for realizing computer security |
US6338149B1 (en) * | 1998-07-31 | 2002-01-08 | Westinghouse Electric Company Llc | Change monitoring system for a computer system |
TW434478B (en) * | 1998-10-27 | 2001-05-16 | Inventec Corp | Method for testing the integrity of software pre-installed in a computer hard disk |
US7124190B1 (en) * | 1999-12-21 | 2006-10-17 | Xerox Corporation | Method for verifying chronological integrity of an electronic time stamp |
US6986051B2 (en) * | 2000-04-13 | 2006-01-10 | International Business Machines Corporation | Method and system for controlling and filtering files using a virus-free certificate |
US6693754B2 (en) | 2000-05-24 | 2004-02-17 | Seagate Technology Llc | Method and apparatus for a disc drive adaptive file system |
US7237123B2 (en) * | 2000-09-22 | 2007-06-26 | Ecd Systems, Inc. | Systems and methods for preventing unauthorized use of digital content |
US7296070B2 (en) * | 2000-12-22 | 2007-11-13 | Tier-3 Pty. Ltd. | Integrated monitoring system |
US20030009687A1 (en) * | 2001-07-05 | 2003-01-09 | Ferchau Joerg U. | Method and apparatus for validating integrity of software |
US7237121B2 (en) * | 2001-09-17 | 2007-06-26 | Texas Instruments Incorporated | Secure bootloader for securing digital devices |
WO2003023647A1 (en) * | 2001-09-10 | 2003-03-20 | Igt | Method for developing gaming programs compatible with a computerized gaming operating system and apparatus |
US8226473B2 (en) * | 2002-04-10 | 2012-07-24 | Wms Gaming Inc. | Gaming software authentication |
-
2002
- 2002-09-13 US US10/243,912 patent/US20040054952A1/en not_active Abandoned
-
2003
- 2003-08-25 AU AU2003262844A patent/AU2003262844A1/en not_active Abandoned
- 2003-08-25 EP EP03795624A patent/EP1629338A4/en not_active Ceased
- 2003-08-25 NZ NZ538798A patent/NZ538798A/en not_active IP Right Cessation
- 2003-08-25 WO PCT/US2003/026555 patent/WO2004025396A2/en active Search and Examination
- 2003-08-25 CA CA002498617A patent/CA2498617A1/en not_active Abandoned
-
2006
- 2006-08-15 US US11/464,584 patent/US7783881B2/en not_active Expired - Fee Related
- 2006-08-15 US US11/464,594 patent/US7836302B2/en not_active Expired - Fee Related
-
2010
- 2010-08-19 US US12/859,687 patent/US8554682B2/en not_active Expired - Fee Related
Patent Citations (72)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4727544A (en) * | 1986-06-05 | 1988-02-23 | Bally Manufacturing Corporation | Memory integrity checking system for a gaming device |
US5155768A (en) * | 1990-03-16 | 1992-10-13 | Sega Enterprises, Ltd. | Security system for software |
US5475839A (en) * | 1990-03-28 | 1995-12-12 | National Semiconductor Corporation | Method and structure for securing access to a computer system |
US5342047A (en) * | 1992-04-08 | 1994-08-30 | Bally Gaming International, Inc. | Touch screen video gaming machine |
US5421006A (en) * | 1992-05-07 | 1995-05-30 | Compaq Computer Corp. | Method and apparatus for assessing integrity of computer system software |
US5951397A (en) * | 1992-07-24 | 1999-09-14 | International Game Technology | Gaming machine and method using touch screen |
US5332219A (en) * | 1992-10-08 | 1994-07-26 | Rio Properties, Inc. | Apparatus and method for playing an electronic poker game |
US5770533A (en) * | 1994-05-02 | 1998-06-23 | Franchi; John Franco | Open architecture casino operating system |
US5599231A (en) * | 1994-10-31 | 1997-02-04 | Nintendo Co., Ltd. | Security systems and methods for a videographics and authentication game/program fabricating device |
US5725428A (en) * | 1995-03-09 | 1998-03-10 | Atronic Casino Technology Distribution Gmbh | Video slot machine |
US5935002A (en) * | 1995-03-10 | 1999-08-10 | Sal Falciglia, Sr. Falciglia Enterprises | Computer-based system and method for playing a bingo-like game |
US5664999A (en) * | 1995-06-23 | 1997-09-09 | Sammy Industries, Co., Ltd. | Picture amusement apparatus |
US6106396A (en) * | 1995-06-29 | 2000-08-22 | Silicon Gaming, Inc. | Electronic casino gaming system with improved play capacity, authentication and security |
USRE39400E1 (en) * | 1995-06-29 | 2006-11-14 | Igt | Electronic casino gaming system with improved play capacity, authentication and security |
USRE39368E1 (en) * | 1995-06-29 | 2006-10-31 | Igt | Electronic casino gaming system with improved play capacity, authentication and security |
USRE39369E1 (en) * | 1995-06-29 | 2006-10-31 | Igt | Electronic casino gaming system with improved play capacity, authentication and security |
US5643086A (en) * | 1995-06-29 | 1997-07-01 | Silicon Gaming, Inc. | Electronic casino gaming apparatus with improved play capacity, authentication and security |
USRE39370E1 (en) * | 1995-06-29 | 2006-10-31 | Igt | Electronic casino gaming system with improved play capacity, authentication and security |
US6149522A (en) * | 1995-06-29 | 2000-11-21 | Silicon Gaming - Nevada | Method of authenticating game data sets in an electronic casino gaming system |
US6620047B1 (en) * | 1995-06-29 | 2003-09-16 | Igt | Electronic gaming apparatus having authentication data sets |
USRE39401E1 (en) * | 1995-06-29 | 2006-11-14 | Igt | Electronic casino gaming system with improved play capacity, authentication and security |
US6006328A (en) * | 1995-07-14 | 1999-12-21 | Christopher N. Drake | Computer software authentication, protection, and security system |
US5575717A (en) * | 1995-08-18 | 1996-11-19 | Merit Industries, Inc. | System for creating menu choices of video games on a display |
US5768382A (en) * | 1995-11-22 | 1998-06-16 | Walker Asset Management Limited Partnership | Remote-auditing of computer generated outcomes and authenticated biling and access control system using cryptographic and other protocols |
US6015346A (en) * | 1996-01-25 | 2000-01-18 | Aristocat Leisure Industires Pty. Ltd. | Indicia selection game |
US6093100A (en) * | 1996-02-01 | 2000-07-25 | Ptt, Llc | Modified poker card/tournament game and interactive network computer system for implementing same |
US6138236A (en) * | 1996-07-01 | 2000-10-24 | Sun Microsystems, Inc. | Method and apparatus for firmware authentication |
US5946460A (en) * | 1996-09-13 | 1999-08-31 | International Business Machines Corporation | System setup verification for peripheral devices |
US5769716A (en) * | 1996-09-30 | 1998-06-23 | International Game Technology | Symbol fall game method and apparatus |
US6102798A (en) * | 1996-12-18 | 2000-08-15 | Aristocrat Technologies Australia Pty Ltd. | Slot machine game-find the prize |
US6099408A (en) * | 1996-12-31 | 2000-08-08 | Walker Digital, Llc | Method and apparatus for securing electronic games |
US6104815A (en) * | 1997-01-10 | 2000-08-15 | Silicon Gaming, Inc. | Method and apparatus using geographical position and universal time determination means to provide authenticated, secure, on-line communication between remote gaming locations |
US6039648A (en) * | 1997-03-04 | 2000-03-21 | Casino Data Systems | Automated tournament gaming system: apparatus and method |
US6108420A (en) * | 1997-04-10 | 2000-08-22 | Channelware Inc. | Method and system for networked installation of uniquely customized, authenticable, and traceable software application |
US6364769B1 (en) * | 1997-05-21 | 2002-04-02 | Casino Data Systems | Gaming device security system: apparatus and method |
US6135884A (en) * | 1997-08-08 | 2000-10-24 | International Game Technology | Gaming machine having secondary display for providing video content |
US6083105A (en) * | 1998-08-13 | 2000-07-04 | Paul Ronin | Computerized roulette playing apparatus for a single player |
US6301658B1 (en) * | 1998-09-09 | 2001-10-09 | Secure Computing Corporation | Method and system for authenticating digital certificates issued by an authentication hierarchy |
US6488585B1 (en) * | 1998-10-14 | 2002-12-03 | International Game Technology | Gaming device identification method and apparatus |
US6490491B1 (en) * | 1998-10-29 | 2002-12-03 | Mannesmann Vdo Ag | Method and device for programming a controller, in particular in a motor vehicle |
US6722986B1 (en) * | 1998-11-26 | 2004-04-20 | Aristocrat Technologies Australia Pty Ltd. | Electronic casino gaming with authentication and improved security |
US6530837B2 (en) * | 1999-04-21 | 2003-03-11 | Mindplay Llc | Method and apparatus for monitoring casinos and gaming |
US6159097A (en) * | 1999-06-30 | 2000-12-12 | Wms Gaming Inc. | Gaming machine with variable probability of obtaining bonus game payouts |
US6102394A (en) * | 1999-07-12 | 2000-08-15 | Wms Gaming, Inc. | Button panel system for a gaming device |
US20040254013A1 (en) * | 1999-10-06 | 2004-12-16 | Igt | Download procedures for peripheral devices |
US6595856B1 (en) * | 2000-01-04 | 2003-07-22 | Sigma Game, Inc. | Electronic security technique for gaming software |
US7043641B1 (en) * | 2000-03-08 | 2006-05-09 | Igt | Encryption in a secure computerized gaming system |
US20040054445A1 (en) * | 2000-05-09 | 2004-03-18 | Vasco Vollmer | Method for controlling devices in a communications network of an automobile |
US7201662B2 (en) * | 2000-08-21 | 2007-04-10 | Igt | Method and apparatus for software authentication |
US7203841B2 (en) * | 2001-03-08 | 2007-04-10 | Igt | Encryption in a secure computerized gaming system |
US20020126846A1 (en) * | 2001-03-09 | 2002-09-12 | Multerer Boyd C. | Multiple user authentication for online console-based gaming |
US7218739B2 (en) * | 2001-03-09 | 2007-05-15 | Microsoft Corporation | Multiple user authentication for online console-based gaming |
US20020174062A1 (en) * | 2001-05-16 | 2002-11-21 | Sines Randy D. | Purchasing on the internet using verified order information and bank payment assurance |
US7000249B2 (en) * | 2001-05-18 | 2006-02-14 | 02Micro | Pre-boot authentication system |
US7162036B2 (en) * | 2001-08-06 | 2007-01-09 | Igt | Digital identification of unique game characteristics |
US6935951B2 (en) * | 2001-09-04 | 2005-08-30 | Igt | Electronic signature capability in a gaming machine |
US6908391B2 (en) * | 2001-11-23 | 2005-06-21 | Cyberscan Technology, Inc. | Modular entertainment and gaming system configured for network boot, network application load and selective network computation farming |
US6945870B2 (en) * | 2001-11-23 | 2005-09-20 | Cyberscan Technology, Inc. | Modular entertainment and gaming system configured for processing raw biometric data and multimedia response by a remote server |
US20030100369A1 (en) * | 2001-11-23 | 2003-05-29 | Cyberscan Technology, Inc. | Modular entertainment and gaming systems configured to consume and provide network services |
US20040193726A1 (en) * | 2001-11-23 | 2004-09-30 | Jean-Marie Gatto | Methods and systems for large scale controlled and secure data downloading |
US6916247B2 (en) * | 2001-11-23 | 2005-07-12 | Cyberscan Technology, Inc. | Modular entertainment and gaming systems |
US20050233811A1 (en) * | 2001-11-23 | 2005-10-20 | Cyberscan Technology, Inc. | Modular entertainment and gaming system configured to capture raw biometric data and responsive to directives from a remote server |
US20050209007A1 (en) * | 2001-11-23 | 2005-09-22 | Cyberscan Technology, Inc. | Universal game server |
US7010682B2 (en) * | 2002-06-28 | 2006-03-07 | Motorola, Inc. | Method and system for vehicle authentication of a component |
US20060100010A1 (en) * | 2002-07-05 | 2006-05-11 | Cyberscan Technology, Inc. | Secure game download |
US20050172336A1 (en) * | 2003-03-10 | 2005-08-04 | Cyberscan Technology, Inc. | Dynamic configuration of a gaming system |
US20040198496A1 (en) * | 2003-03-10 | 2004-10-07 | Jean-Marie Gatto | Dynamic configuration of a gaming system |
US20050223219A1 (en) * | 2003-03-10 | 2005-10-06 | Cyberscan Technology, Inc. | Dynamic configuration of a gaming system |
US20050282637A1 (en) * | 2003-03-10 | 2005-12-22 | Cyberscan Technology, Inc. | Universal peer-to-peer game download |
US20050015252A1 (en) * | 2003-06-12 | 2005-01-20 | Toru Marumoto | Speech correction apparatus |
US20050209006A1 (en) * | 2003-09-04 | 2005-09-22 | Cyberscan Technology, Inc. | Universal game server |
US20050221898A1 (en) * | 2003-09-04 | 2005-10-06 | Cyberscan Technology, Inc. | Universal game server |
Cited By (92)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040198489A1 (en) * | 2000-06-23 | 2004-10-07 | Kaminkow Joseph E. | Gaming device having touch activated alternating or changing symbol |
US7695363B2 (en) | 2000-06-23 | 2010-04-13 | Igt | Gaming device having multiple display interfaces |
US8221218B2 (en) | 2000-06-23 | 2012-07-17 | Igt | Gaming device having multiple selectable display interfaces based on player's wagers |
US7699699B2 (en) | 2000-06-23 | 2010-04-20 | Igt | Gaming device having multiple selectable display interfaces based on player's wagers |
US20070202951A1 (en) * | 2002-11-14 | 2007-08-30 | Arena Unlimited, Inc. | Asset manipulation of computer games using a network |
US20050107149A1 (en) * | 2003-11-13 | 2005-05-19 | Jamal Benbrahim | Gaming apparatus with a removable recordable storage memory |
US7891008B2 (en) * | 2004-06-12 | 2011-02-15 | Microsoft Corporation | Profile protection |
US20050278535A1 (en) * | 2004-06-12 | 2005-12-15 | Microsoft Corporation | Profile protection |
US8814648B2 (en) | 2004-08-19 | 2014-08-26 | Igt | Gaming system having multiple gaming machines which provide bonus awards |
US8021230B2 (en) | 2004-08-19 | 2011-09-20 | Igt | Gaming system having multiple gaming machines which provide bonus awards |
US9600968B2 (en) | 2004-08-19 | 2017-03-21 | Igt | Gaming system having multiple gaming machines which provide bonus awards |
US7963847B2 (en) | 2004-08-19 | 2011-06-21 | Igt | Gaming system having multiple gaming machines which provide bonus awards |
US8251791B2 (en) | 2004-08-19 | 2012-08-28 | Igt | Gaming system having multiple gaming machines which provide bonus awards |
EP1853364A2 (en) * | 2005-02-24 | 2007-11-14 | Bally Gaming Inc. | System and method for an alterable storage media in a gaming machine |
AU2005327927B2 (en) * | 2005-02-24 | 2011-10-27 | Bally Gaming, Inc. | System and method for an alterable storage media in a gaming machine |
AU2013206811B2 (en) * | 2005-02-24 | 2015-11-26 | Bally Gaming, Inc. | System and method for an alterable storage media in a gaming machine |
EP1853364A4 (en) * | 2005-02-24 | 2009-01-14 | Bally Gaming Inc | System and method for an alterable storage media in a gaming machine |
WO2007002279A3 (en) * | 2005-06-21 | 2009-04-16 | Microsoft Corp | Data structure for identifying hardware and software licenses to distribute with a complying device |
WO2007002279A2 (en) * | 2005-06-21 | 2007-01-04 | Microsoft Corporation | Data structure for identifying hardware and software licenses to distribute with a complying device |
US20060288422A1 (en) * | 2005-06-21 | 2006-12-21 | Microsoft Corporation | Data structure for identifying hardware and software licenses to distribute with a complying device |
US20070016761A1 (en) * | 2005-06-30 | 2007-01-18 | International Business Machines Corporation | Method, apparatus, and computer program product for implementing enhanced system behavior control |
US20080220880A1 (en) * | 2005-09-07 | 2008-09-11 | Bally Gaming, Inc. | Trusted Cabinet Identification System |
US8128491B2 (en) | 2005-09-09 | 2012-03-06 | Igt | Server based gaming system having multiple progressive awards |
US7780523B2 (en) | 2005-09-09 | 2010-08-24 | Igt | Server based gaming system having multiple progressive awards |
US7905778B2 (en) | 2005-09-09 | 2011-03-15 | Igt | Server based gaming system having multiple progressive awards |
US7841939B2 (en) | 2005-09-09 | 2010-11-30 | Igt | Server based gaming system having multiple progressive awards |
US8137188B2 (en) | 2005-09-09 | 2012-03-20 | Igt | Server based gaming system having multiple progressive awards |
US20070099698A1 (en) * | 2005-10-31 | 2007-05-03 | Cole Joseph W | Method and system for localized authentication of gaming machine |
AU2007203244B2 (en) * | 2006-07-13 | 2010-08-12 | Aristocrat Technologies Australia Pty Limited | An electronic gaming machine |
US20080141017A1 (en) * | 2006-07-13 | 2008-06-12 | Mccoull James Ross | Gaming machine having a secure boot chain and method of use |
US7827397B2 (en) | 2006-07-13 | 2010-11-02 | Aristocrat Technologies Australia Pty, Ltd. | Gaming machine having a secure boot chain and method of use |
AU2010214748B2 (en) * | 2006-07-13 | 2012-01-19 | Aristocrat Technologies Australia Pty Limited | An electronic gaming machine |
EP1881466A3 (en) * | 2006-07-13 | 2008-03-05 | Aristocrat Technologies Australia PTY Ltd | Gaming security system |
US9898891B2 (en) | 2006-07-27 | 2018-02-20 | Igt | Gaming system with linked gaming machines that are configurable to have a same probability of winning a designated award |
US9269228B2 (en) | 2006-07-27 | 2016-02-23 | Igt | Gaming system with linked gaming machines that are configurable to have a same probability of winning a designated award |
US8512130B2 (en) | 2006-07-27 | 2013-08-20 | Igt | Gaming system with linked gaming machines that are configurable to have a same probability of winning a designated award |
US20080033609A1 (en) * | 2006-08-04 | 2008-02-07 | Ramin Razavi | Automotive diagnostic and tuning system |
US8210930B2 (en) | 2006-09-27 | 2012-07-03 | Igt | Server based gaming system having system triggered loyalty award sequences |
US8221226B2 (en) | 2006-09-27 | 2012-07-17 | Igt | Server based gaming system having system triggered loyalty award sequences |
US7993199B2 (en) | 2006-09-27 | 2011-08-09 | Igt | Server based gaming system having system triggered loyalty award sequences |
US20080076532A1 (en) * | 2006-09-27 | 2008-03-27 | Igt | Server based gaming system having system triggered loyalty award sequences |
US8616959B2 (en) | 2006-09-27 | 2013-12-31 | Igt | Server based gaming system having system triggered loyalty award sequences |
US7862430B2 (en) | 2006-09-27 | 2011-01-04 | Igt | Server based gaming system having system triggered loyalty award sequences |
US20080076576A1 (en) * | 2006-09-27 | 2008-03-27 | Igt | Server based gaming system having system triggered loyalty award sequences |
US8012009B2 (en) | 2006-09-27 | 2011-09-06 | Igt | Server based gaming system having system triggered loyalty award sequences |
US8206212B2 (en) | 2006-09-27 | 2012-06-26 | Igt | Server based gaming system having system triggered loyalty award sequences |
US7674180B2 (en) | 2006-09-27 | 2010-03-09 | Igt | Server based gaming system having system triggered loyalty award sequences |
US20080076531A1 (en) * | 2006-09-27 | 2008-03-27 | Igt | Server based gaming system having system triggered loyalty award sequences |
US8500542B2 (en) | 2006-09-27 | 2013-08-06 | Igt | Server based gaming system having system triggered loyalty award sequences |
US8262469B2 (en) | 2006-09-27 | 2012-09-11 | Igt | Server based gaming system having system triggered loyalty award sequences |
US20080086657A1 (en) * | 2006-10-06 | 2008-04-10 | Xuemin Chen | Method and system for disaster recovery in a secure reprogrammable system |
US8452987B2 (en) * | 2006-10-06 | 2013-05-28 | Broadcom Corporation | Method and system for disaster recovery in a secure reprogrammable system |
US20090131168A1 (en) * | 2006-11-10 | 2009-05-21 | Igt | Systems and methods for improving a button assembly |
US8858342B2 (en) | 2006-11-10 | 2014-10-14 | Igt | Flexibly configurable button panels for gaming machines |
US8337314B2 (en) | 2006-11-10 | 2012-12-25 | Igt | Systems and methods for improving a button assembly |
US8360892B2 (en) | 2006-11-10 | 2013-01-29 | Igt | Flexibly configurable button panels for gaming machines |
US8684846B2 (en) | 2006-11-10 | 2014-04-01 | Igt | Dynamic display systems for gaming machines |
US20080113737A1 (en) * | 2006-11-10 | 2008-05-15 | Igt | Dynamic display systems for gaming machines |
US8070609B2 (en) | 2006-11-10 | 2011-12-06 | Igt | Flexibly configurable button panels for gaming machines |
US20080113766A1 (en) * | 2006-11-10 | 2008-05-15 | Igt | Flexibly configurable button panels for gaming machines |
US9569930B2 (en) | 2007-07-30 | 2017-02-14 | Igt | Gaming system and method for providing an additional gaming currency |
US7985133B2 (en) | 2007-07-30 | 2011-07-26 | Igt | Gaming system and method for providing an additional gaming currency |
US9396606B2 (en) | 2007-07-30 | 2016-07-19 | Igt | Gaming system and method for providing an additional gaming currency |
US8216062B2 (en) | 2007-07-30 | 2012-07-10 | Igt | Gaming system and method for providing an additional gaming currency |
US11062561B2 (en) | 2007-07-30 | 2021-07-13 | Igt | Gaming system and method for providing an additional gaming currency |
US10867477B2 (en) | 2007-08-10 | 2020-12-15 | Igt | Gaming system and method for providing different bonus awards based on different types of triggered events |
US9978213B2 (en) | 2007-08-10 | 2018-05-22 | Igt | Gaming system and method for providing different bonus awards based on different types of triggered events |
US8900053B2 (en) | 2007-08-10 | 2014-12-02 | Igt | Gaming system and method for providing different bonus awards based on different types of triggered events |
US9269223B2 (en) | 2007-10-26 | 2016-02-23 | Igt | Gaming system and method for providing play of local first game and remote second game |
US9142097B2 (en) | 2007-10-26 | 2015-09-22 | Igt | Gaming system and method for providing play of local first game and remote second game |
US20090319693A1 (en) * | 2008-06-24 | 2009-12-24 | Samsung Electronics Co., Ltd. | Method and apparatus for interfacing host device and slave device |
FR2937443A1 (en) * | 2008-10-16 | 2010-04-23 | Airbus France | METHOD AND DEVICE FOR PROCESSING CONFIGURATION REPORTS. |
EP2177992A3 (en) * | 2008-10-16 | 2012-09-19 | Airbus Operations | Method and device for processing configuration reports |
US20100100875A1 (en) * | 2008-10-16 | 2010-04-22 | Airbus Operations | Method and device for processing configuration reports |
US9039516B2 (en) | 2009-07-30 | 2015-05-26 | Igt | Concurrent play on multiple gaming machines |
US8821273B2 (en) | 2010-09-20 | 2014-09-02 | Igt | Preventing a media display from hijacking a gaming machine |
CN104160376A (en) * | 2012-03-07 | 2014-11-19 | 微软公司 | Offline provisioning of virtual machines |
US8966278B2 (en) | 2012-03-27 | 2015-02-24 | Igt | System and method enabling parallel processing of hash functions using authentication checkpoint hashes |
US8627097B2 (en) | 2012-03-27 | 2014-01-07 | Igt | System and method enabling parallel processing of hash functions using authentication checkpoint hashes |
US9280666B2 (en) * | 2013-08-26 | 2016-03-08 | Beijing Lenovo Software Ltd. | Method and electronic device for protecting data |
CN104424442A (en) * | 2013-08-26 | 2015-03-18 | 联想(北京)有限公司 | Method for protecting data and electronic device |
US20150059000A1 (en) * | 2013-08-26 | 2015-02-26 | Lenovo (Beijing) Co., Ltd. | Method and electronic device for protecting data |
US9875618B2 (en) | 2014-07-24 | 2018-01-23 | Igt | Gaming system and method employing multi-directional interaction between multiple concurrently played games |
CN106484457A (en) * | 2015-08-25 | 2017-03-08 | 福特全球技术公司 | Multistage safe vehicle software updates |
US9916151B2 (en) * | 2015-08-25 | 2018-03-13 | Ford Global Technologies, Llc | Multiple-stage secure vehicle software updating |
US9972171B2 (en) | 2015-09-24 | 2018-05-15 | Igt | Gaming system and method for providing a triggering event based on a collection of units from different games |
CN105354512A (en) * | 2015-09-30 | 2016-02-24 | 联想(北京)有限公司 | File storage method and electronic device |
EP3179400A1 (en) * | 2015-12-07 | 2017-06-14 | Ingenico Group | Method for loading a computing resource into an electronic device, electronic module and corresponding computer program |
US20180004550A1 (en) * | 2016-07-01 | 2018-01-04 | Intertrust Technologies Corporation | Device integration platform systems and methods |
US11146401B2 (en) * | 2016-08-10 | 2021-10-12 | Ford Global Technologies, Llc | Software authentication before software update |
US11148059B2 (en) | 2017-09-28 | 2021-10-19 | Ags Llc | Methods for generating and validating gaming machine subscription keys and securing subscription parameter data and jurisdiction files |
CN111247507A (en) * | 2017-10-26 | 2020-06-05 | 惠普发展公司,有限责任合伙企业 | Asset handling from persistent storage |
Also Published As
Publication number | Publication date |
---|---|
AU2003262844A1 (en) | 2004-04-30 |
CA2498617A1 (en) | 2004-03-25 |
US7783881B2 (en) | 2010-08-24 |
US7836302B2 (en) | 2010-11-16 |
US20060288200A1 (en) | 2006-12-21 |
WO2004025396A2 (en) | 2004-03-25 |
EP1629338A2 (en) | 2006-03-01 |
US20110021270A1 (en) | 2011-01-27 |
NZ538798A (en) | 2010-03-26 |
WO2004025396A3 (en) | 2006-05-04 |
EP1629338A4 (en) | 2009-06-03 |
US20070006329A1 (en) | 2007-01-04 |
US8554682B2 (en) | 2013-10-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7783881B2 (en) | Gaming device verification system and method using a file allocation structure | |
US8613662B2 (en) | Alterable storage media gaming machine | |
AU2008201804B2 (en) | Improved authentication system for gaming machines | |
US7201662B2 (en) | Method and apparatus for software authentication | |
US9281946B2 (en) | Authentication system for gaming machines | |
US20100062844A1 (en) | Authentication and validation systems for gaming devices | |
AU2001285125A1 (en) | Method and apparatus for software authentication | |
EP1334419B1 (en) | System and method for verifying the integrity of stored information within an electronic device | |
US6892305B1 (en) | Method and system for booting up a computer system in a secure fashion | |
AU2012200213B2 (en) | System and method for an alterable storage media in a gaming machine | |
AU2013206811B2 (en) | System and method for an alterable storage media in a gaming machine |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AS | Assignment |
Owner name: BALLY GAMING, INC., NEVADA Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:NETWORKS ASSOCIATES, INC. D/B/A NETWORK ASSOCIATES, INC.;CARMAN, DAVID;REEL/FRAME:013856/0319;SIGNING DATES FROM 20030205 TO 20030227 |
|
AS | Assignment |
Owner name: BALLY GAMING, INC., NEVADA Free format text: ASSIGNMENT AND LICENSE AGREEMENT;ASSIGNORS:MORROW, JAMES W.;MCALLISTER, LAWRENCE;DUBNER, ROBERT;AND OTHERS;REEL/FRAME:014412/0639;SIGNING DATES FROM 20021029 TO 20030227 Owner name: NETWORKS ASSOCIATES, INC. D/B/A NETWORK ASSOCIATES Free format text: TO CORRECT RECEIVING PARTY(IES) NAME PREVIOUSLY RECORDED AT REEL 013856/FRAME 0319.;ASSIGNOR:CARMAN, DAVID;REEL/FRAME:014387/0287 Effective date: 20030205 |
|
AS | Assignment |
Owner name: BANK OF AMERICA, N.A., AS ADMINISTRATIVE AGENT, CA Free format text: SECURITY AGREEMENT;ASSIGNOR:BALLY GAMING, INC. (D/B/A BALLY GAMING AND SYSTEMS), A NEVADA CORPORATION;REEL/FRAME:015127/0332 Effective date: 20040301 |
|
STCB | Information on status: application discontinuation |
Free format text: ABANDONED -- FAILURE TO RESPOND TO AN OFFICE ACTION |
|
AS | Assignment |
Owner name: BALLY GAMING, INC. (D/B/A BALLY GAMING AND SYSTEMS Free format text: TERMINATION AND RELEASE OF SECURITY INTEREST (RELEASES RF 015127/0332);ASSIGNOR:BANK OF AMERICA, N.A.;REEL/FRAME:034674/0493 Effective date: 20141218 |
|
AS | Assignment |
Owner name: SG GAMING, INC., NEVADA Free format text: CHANGE OF NAME;ASSIGNOR:BALLY GAMING, INC.;REEL/FRAME:051641/0653 Effective date: 20200103 |