`
`
`
`
`
`
`
`US 6,962,530 132
`(10) Patent N0.:
`(12) Umted States Patent
`
`
`
`
`
`
`
`(45) Date of Patent:
`Nov. 8, 2005
`Jackson
`
`
`
`U3006962530B2
`
`
`
`(54) AUTHENTICATION IN A SECURE
`
`
`
`COMPUTERIZED GAMING SYSTEM
`
`
`
`
`
`(75)
`
`
`
`.
`.
`
`(73) ASSlgnee'
`.
`( * ) Notice:
`
`
`
`
`
`
`
`
`Inventor: Mark D. Jackson, Fort Collins, CO
`
`(US)
`
`
`
`IGT’ Reno’ NV (Us)
`.
`.
`.
`.
`Subjectto any disclaimer, the term of this
`
`
`
`
`
`
`
`
`
`
`patent is extended or adjusted under 35
`
`
`
`
`U.S.C. 154(b) by 441 days.
`
`
`
`(65)
`
`
`
`
`
`(21) APPI-N0~1 10/134 663
`,
`(22) Filed:
`Apr. 25, 2002
`
`
`
`
`
`Prior Publication Data
`
`
`
`US 2003/0203756 A1 Oct. 30, 2003
`
`
`
`
`
`
`
`
`
`
`(51)
`Int. Cl.7 .................................................. G06F 5/00
`(52) US. Cl.
`.............................. 463/29; 463/20; 463/16
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`(58) Field of Search .............................. 463/29, 20, 16,
`463/40, 41, 42, 44, 380/9, 23, 30, 28, 49,
`
`
`
`
`
`
`
`
`
`50, 59
`
`
`
`
`(56)
`
`
`
`
`
`References Cited
`U.S. PATENT DOCUMENTS
`
`
`2/1978 Lucero et al.
`
`
`
`6/1985 Curran 0t al.
`
`
`
`
`
`
`
`4/1986 K029 6t al~ ~~~~~~~~~~~~~~~~~ 278/138
`
`
`2/1988 Bummer
`
`
`
`3112:15511:1:1’
`13133:
`
`
`7/1994 Pease et a1
`
`
`
`2/1996 Goudard et a].
`
`
`4/1996 Reibel a a1.
`
`
`
`2/1997 Dolan et all.
`
`
`
`5/1997 Kaliski, Jr.
`................. 380/286
`
`
`
`
`7/1997 Alcorn et 211.
`
`
`
`
`“1998 0.195011
`
`
`(69/133: Egalc‘lki?’ Jr‘
`0 me
`
`
`10/1998 Adams
`
`
`12/1998 Adams
`
`
`1/1999 Boylan et a1.
`
`
`
`
`
`
`
`
`
`4,072,930 A
`
`4,525,599 A
`
`
`4,582,324 A
`
`42727544 A
`
`2222’322 2
`
`5,326,104 A
`
`5,489,095 A
`
`5,507,489 A
`
`5,604,801 A
`
`5,633,929 A *
`
`5,643,086 A
`
`
`5707,2536 A
`
`2:33:12 2
`2 ,
`, , ,
`
`5,823,874 A
`
`5,848,932 A
`
`5,863,041 A
`
`
`
`
`
`
`2/1999 Yfantis
`5,871,400 A
`
`
`
`3/1999 Mengual
`5.879234 A
`
`
`9/1999 Green
`5,954,583 A
`
`
`
`
`
`
`
`10(1999 Pascal et al'
`59717851 A
`
`
`
`
`5,987,138 A * 11/1999 Gilbert et al.
`6,071,190 A
`6/2000 Weiss et al.
`
`
`
`
`6,106,396 A
`8/2000 Alcorn et al.
`
`
`
`6,115,601 A *
`9/2000 Ferreira ...................... 455/406
`
`
`
`
`6,149,522 A * 112000 Al
`l.
`................. 463 29
`t
`
`
`
`
`
`6,203,427 B1
`42001 W313; :t :1.
`/
`
`
`
`
`
`6,264,557 B1
`7/2001 Schncicr ct a1.
`
`
`
`
`
`6,298,441 B1 * 10/2001 Handelman et al.
`........ 713/185
`
`
`
`
`
`
`6,301,660 B1 * 10/2001 Benson .............
`713/165
`
`
`
`
`
`
`
`
`
`
`
`
`
`2002/0186145 A1 * 12/2002 Chainer et al.
`340/870.16
`2003/0195033 A1 * 10/2003 Gazdic et al.
`................ 463/20
`
`
`
`
`
`
`FOREIGN PATENT DOCUMENTS
`
`
`37 00 86] A1
`7/1988
`
`
`
`
`40 14 477 A1
`7/1991
`
`
`
`2072395 A
`9/1981
`
`
`2202984 A
`9/1981
`
`
`2201821 A
`9/1988
`
`
`
`
`
`
`................ 380/30
`
`
`
`DF.
`DE
`GB
`GB
`GB
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`_
`_
`
`
`
`Clted by examlner
`Primary Examiner—Jason Skaarup
`
`
`
`
`
`
`
`
`
`
`(74) Attorney, Agent, or Firm—Marshall, Gerstein & Borun
`LLP
`
`
`
`An architecture and method for a gaming-specific platform]
`
`
`
`
`
`
`
`are disclosed that features secure storage and verification of
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`game code and other data, provides the ability to securelv
`
`
`
`
`
`
`exchange data With a computerized wagering gaming
`
`
`
`
`
`
`system, and do so in a manner that is straightforward and
`
`
`
`
`
`
`
`
`easy to manage. Some embodiments provide the ability to
`
`
`
`
`
`
`
`identify game program code as certified or approved, such as
`by the Nevada Gaming Regulations Commission or other
`
`
`
`
`
`
`
`regulatory agency. The disclosed embodiments provides
`
`
`
`
`
`
`these and other functions by encrypting a random number,
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`storing the encrypted random number, and hashing the
`
`
`
`
`
`
`
`
`
`random number and a casino game data set to provide a first
`.
`.
`.
`.
`.
`
`
`
`
`
`
`
`
`bit string, and storing the first bit string.
`
`*
`
`(57)
`
`ABSTRACT
`
`19 Claims, 6 Drawing Sheets
`
`
`
`
`
`
`
`
`100
`
`
`
`
`
`Page 1 of 20
`
`GOOGLE EXHIBIT 1026
`
`Page 1 of 20
`
`GOOGLE EXHIBIT 1026
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`Page 2 of 20
`
`
`
`
`US. Patent
`
`
`
`
`Nov. 8, 2005
`
`
`
`
`Sheet 2 0f 6
`
`
`
`US 6,962,530 B2
`
`
`
`
`
`Page 3 of 20
`
`Page 3 of 20
`
`
`
`
`US. Patent
`
`
`
`
`Nov. 8, 2005
`
`
`
`
`Sheet 3 0f 6
`
`
`
`US 6,962,530 B2
`
`
`
`
`
`
`
`Figure 3. Simple Graph
`
`
`
`Page 4 of 20
`
`Page 4 of 20
`
`
`
`
`US. Patent
`
`
`
`
`Nov. 8, 2005
`
`
`
`
`Sheet 4 0f 6
`
`
`
`US 6,962,530 B2
`
`
`
`
`
`
`
`
`Figure 4. Random Hash Value
`
`
`
`Page 5 of 20
`
`Page 5 of 20
`
`
`
`
`US. Patent
`
`
`
`
`Nov. 8, 2005
`
`
`
`
`Sheet 5 0f 6
`
`
`
`US 6,962,530 B2
`
`
`
`FIGURE 5
`
`
`
`Page 6 of 20
`
`Page 6 of 20
`
`
`
`
`US. Patent
`
`
`
`
`Nov. 8, 2005
`
`
`
`
`Sheet 6 0f 6
`
`
`
`US 6,962,530 B2
`
`
`
`Magnet
`
`u“In-nuunutnvuu.......
`
`llllllllll‘
`.....un...nu;nn..
`
`noun“
`
`u.n.........
`
`.n......nuu.cn.
`
`nun-nIo.n..-....
`
`u-I-uuu-u...
`
`cum-"nun“...
`
`nun...”-
`
`nunuuunnu-v-u-
`
`.uu‘ono-n
`
`u...
`
`
`
`
`
`
`unynulnnuu
`
`IOIIIIIIIU
`
`nun-nu...-
`unnonununll-n
`
`unenunuu
`
`noun-n
`
`IIIIIHHIIHIOOI
`
`unnuuuu.
`
`u..-r-....uo
`
`...|.n.unu¢n.nuu
`
`nun-“unnum-noun-nun...“-
`
`“Hun“..u-u
`oliolniovlbrcnllll-
`
`-.n-u-u-u-u”nu-uuuuu-uu‘
`
`Inns-“uu-nv-u
`
`”unnunnuuuu-nn
`
`Ilnllllldllllllllll
`
`u.------u-
`
`n
`
`cur...-
`
`
`
`”nu..."y...........-........4....u.
`
`sung-nun
`
`null”.
`
`.llllllll
`
`nu.-.nn
`
`unu-.-u-w
`
`.ouq.--uu‘-
`
`on-puu-nuuuun:nun».
`
`
`
`
`
`
`
`I
`0
`
`In
`
`IIIVOUIhIIlIIOIII‘I
`
`
`
`no...nnnuu-.o.....
`
`nun-un-
`nun-nun...”-
`
`ICIUIIIIIIIII
`
`.unn-n-n-
`
`u”nu-“us.”u..u.n......
`
`”nu-nun...“-
`
`.nu...u.........
`
`au-o-u.‘.‘u‘.
`
`-A.¢.¢...‘.‘-
`
`nun-autumn
`lulu-Illlllll
`
`'-
`
`unu-I'l-n-unc-n-uuuo
`It!onu-n-vnunu
`
`.unun..-.-
`van-”Incl...”
`
`.
`
`Illlllll
`
`unulnonunuu¢l
`
`- o ...
`
`.u...‘.‘-.-‘.
`
`. nu-
`
`”lulu-nun -.u|u~¢u.-‘-
`
`nun...
`
`nun-“nu
`
`nun-unn-
`
` a
`.o
`
`
`tnnun-u...-
`
`IOIO
`
`
`
`
`
`Figure 6 Cave Diagram
`
`
`
`Page 7 of 20
`
`Page 7 of 20
`
`
`
`1
`
`AUTHENTICATION IN A SECURE
`
`
`COMPUTERIZED GAMING SYSTEM
`
`
`
`
`
`
`US 6,962,530 B2
`
`2
`
`apparatus to play new games such as draw poker and Keno
`
`
`
`
`
`
`
`
`
`broke the ground for the realization that there were many
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`untapped formats for gaming apparatus. Now casinos may
`have hundreds of different types of gaming apparatus with
`
`
`
`
`
`
`
`an equal number of significant differences in play. The
`
`
`
`
`
`
`
`
`apparatus may vary from traditional three reel slot machines
`
`
`
`
`
`
`
`
`
`with a single payout line, Video simulations of three reel
`
`
`
`
`
`
`
`
`
`video slot machines, to five reel, five column simulated slot
`
`
`
`
`
`
`
`
`
`machines with a choice of twenty or more distinct pay lines,
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`including randomly placed lines, scatter pays, or single
`image payouts. In addition to the variation in formats for the
`
`
`
`
`
`
`
`
`play of games, bonus plays, bonus awards, and progressive
`
`
`
`
`
`
`
`
`jackpots have been introduced with great success. The
`
`
`
`
`
`
`
`
`bonuses may be associated with the play of games that are
`
`
`
`
`
`
`
`
`
`quite distinct from the play of the original game, such as the
`
`
`
`
`
`
`
`
`
`video display of a horse race with bets on the individual
`
`
`
`
`
`
`
`
`
`horses randomly assigned to players that qualify for a bonus,
`
`
`
`
`
`
`
`
`the spinning of a random wheel with fixed amounts of a
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`bonus payout on the wheel (or simulation thereof), or
`attempting to select a random card that is of higher value
`
`
`
`
`
`
`
`
`than a card exposed on behalf of a virtual dealer.
`
`
`
`
`
`
`Examples of such gaming apparatus with a distinct bonus
`
`
`
`
`
`
`
`feature includes US. Pat. Nos. 5,823,874; 5,848,932; 5,863,
`
`
`
`
`
`
`
`
`041; UK. Patent Nos. 2 201 821 A; 2 202 984 A; and 2 072
`
`
`
`
`
`
`
`
`395A; and German Patent DE 40 14 477 A1. Each of these
`
`
`
`
`
`
`
`
`
`patents differ in fairly subtle ways as to the manner in which
`
`
`
`
`
`
`
`
`the bonus round is played. British patent 2 201 821 A and DE
`
`
`
`
`
`
`
`37 00 861 A1 describe a gaming apparatus in which after a
`
`
`
`
`
`
`witming outcome is first achieved in a reel-type gaming
`
`
`
`
`
`
`segment, a second segment is engaged to determine the
`
`
`
`
`
`
`amount of money or extra games awarded. The second
`
`
`
`
`
`
`
`segment gaming play involves a spinning wheel with awards
`
`
`
`
`
`
`
`
`listed thereon (e.g., the number of coins or number of extra
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`plays) and a spinning arrow that will point to segments of the
`wheel with the values of the awards thereon. A player will
`
`
`
`
`
`
`
`
`
`press a stop button and the arrow will point to one of the
`
`
`
`
`
`
`
`
`
`
`values. The specification indicates both that there is a level
`
`
`
`
`
`
`
`
`of skill possibly involved in the stopping of the wheel and
`
`
`
`
`
`
`
`
`
`the arrow(s), and also that an associated computer operates
`
`
`
`
`
`
`
`
`the random selection of the rotatable numbers and deter—
`
`
`
`
`
`
`
`
`
`mines the results in the additional winning game, which
`
`
`
`
`
`
`
`
`
`indicates some level of random selection in the second
`
`
`
`
`
`
`
`
`
`gaming segment. US. Pat. Nos. 5,823,874 and 5,848,932
`
`
`
`
`
`
`
`
`describe a gaming device comprising: a first, standard gam-
`
`
`
`
`
`
`
`ing unit for displaying a randomly selected combination of
`
`
`
`
`
`
`
`indicia, said displayed indicia selected from the group
`
`
`
`
`
`
`
`
`consisting of reels, indicia of reels, indicia of playing cards,
`
`
`
`
`
`
`
`and combinations thereof; means for generating at least one
`
`
`
`
`
`
`
`signal corresponding to at least one select display of indicia
`
`
`
`
`
`
`
`by said first, standard gaming unit; means for providing at
`
`
`
`
`
`
`
`
`least one discernible indicia of a mechanical bonus indicator,
`
`
`
`
`
`
`
`said discernible indicia indicating at least one of a plurality
`
`
`
`
`
`
`
`of possible bonuses, wherein said providing means is opera—
`
`
`
`
`
`
`
`
`tively connected to said first, standard gaming unit and
`
`
`
`
`
`
`
`
`becomes actuatable in response to said signal. In effect, the
`
`
`
`
`
`
`
`
`second gaming event simulates a mechanical bonus indica-
`
`
`
`
`
`
`
`tor such as a roulette wheel or wheel with a pointing
`
`
`
`
`
`
`
`
`element.
`
`Avideo terminal is another form of gaming device. Video
`
`
`
`
`
`
`
`
`terminals operate in the same manner as conventional slot or
`
`
`
`
`
`
`
`Video machines except that a redemption ticket is issued
`
`
`
`
`
`
`
`
`rather than an immediate payout being dispensed.
`
`
`
`
`
`
`The vast array of electronic video gaming apparatus that
`
`
`
`
`
`
`
`
`is commercially available is not standardized within the
`
`
`
`
`
`
`
`
`industry or necessarily even within the commercial line of
`
`
`
`
`
`
`
`
`apparatus available from a single manufacturer. One of the
`
`
`
`
`
`
`
`reasons for this lack of uniformity or standardization is the
`
`
`
`
`
`
`
`fact that the operating systems that have been used to date
`
`
`
`
`
`
`
`
`
`
`in the industry are primitive. As a result, the programmer
`
`
`
`
`
`
`
`
`must often create code for each and every function per-
`
`
`
`
`
`
`
`
`
`
`
`BACKGROUND OF THE ART
`
`
`
`
`
`1 . Technical Field
`
`
`
`
`
`
`
`
`
`
`Computerized wagering game systems, and more specifi—
`cally to the use of authentication techniques using zero
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`knowledge proofs (also referred to here as ZKP) are dis-
`closed as a basis for ensuring security in a computerized
`
`
`
`
`
`
`
`
`
`wagering game system.
`2. Background of the Related Art
`
`
`
`
`
`Games of chance have been enjoyed by people for thou-
`
`
`
`
`
`
`
`
`sands of years and have enjoyed increased and widespread
`
`
`
`
`
`
`
`
`popularity in recent
`times. As with most
`forms of
`
`
`
`
`
`
`
`
`
`entertainment, players enjoy playing a wide variety of
`
`
`
`
`
`
`
`games and new games. Playing new games adds to the
`
`
`
`
`
`
`
`
`
`excitement of“gaming.”As is well known in the art and used
`
`
`
`
`
`
`
`
`herein, the term “gaming” and “gaming devices” are used to
`
`
`
`
`
`
`
`
`
`indicate that some form of wagering is involved, and that
`
`
`
`
`
`
`
`
`players must make wagers of value, whether actual currency
`
`
`
`
`
`
`
`
`or some equivalent of value, e.g., token or credit.
`
`
`
`
`
`
`
`One popular game of chance is the slot machine.
`
`
`
`
`
`
`
`Conventionally, a slot machine is configured for a player to
`
`
`
`
`
`
`wager something of value, e.g., currency, house token,
`
`
`
`
`
`
`
`
`established credit or other representation of currency or
`
`
`
`
`
`
`
`
`credit. After the wager has been made, the player activates
`
`
`
`
`
`
`
`
`
`
`the slot machine to cause a random event to occur. The
`
`
`
`
`
`
`
`
`player wagers that particular random events will occur that
`
`
`
`
`
`
`
`
`
`will return value to the player. A standard device causes a
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`plurality of reels to spin and ultimately stop, displaying a
`random combination of some form of indicia, for example,
`
`
`
`
`
`
`
`numbers or symbols. If this display contains one of a
`
`
`
`
`
`
`
`
`preselected plurality of winning combinations, the machine
`
`
`
`
`
`
`releases money into a payout chute or increments a credit
`
`
`
`
`
`
`
`meter by the amount won by the player. For example, if a
`
`
`
`
`
`
`
`
`player initially wagered two coins of a specific denomina-
`
`
`
`
`
`
`
`tion and that player achieved a payout, that player may
`
`
`
`
`
`
`
`
`
`receive the same number or multiples of the wager amount
`
`
`
`
`
`
`
`
`in coins of the same denomination as wagered.
`
`
`
`
`
`
`There are many different formats for generating the
`
`
`
`
`
`
`
`
`random display of events that can occur
`to determine
`
`
`
`
`
`
`
`
`
`payouts in wagering devices. The standard or original format
`
`
`
`
`
`
`
`was the use of three reels with symbols distributed over the
`
`
`
`
`
`
`
`
`
`face of the reel. When the three reels were spun, they would
`
`
`
`
`
`
`
`
`
`
`eventually each stop in turn, displaying a combination of
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`three symbols (e.g., with three reels and the use of a single
`payout line as a row in the middle of the area where the
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`symbols are displayed.) By appropriately distributing and
`varying the symbols on each of the reels,
`the random
`
`
`
`
`
`
`
`
`
`
`occurrence of predetermined winning combinations can be
`
`
`
`
`
`
`
`
`
`provided in mathematically predetermined probabilities. By
`clearly providing for specific probabilities for each of the
`
`
`
`
`
`
`
`
`preselected winning outcomes, precise odds that would
`
`
`
`
`
`
`
`control the amount of the payout for any particular combi-
`
`
`
`
`
`
`
`
`
`nation and the percentage return on wagers for the house
`
`
`
`
`
`
`
`
`
`
`could be readily controlled.
`
`
`
`Other formats of gaming apparatus that have developed in
`
`
`
`
`
`
`
`a progression from the pure slot machine with three reels
`
`
`
`
`
`
`
`
`
`
`have dramatically increased with the development of video
`
`
`
`
`
`
`
`gaming apparatus. Rather than have only mechanical ele-
`
`
`
`
`
`
`
`
`ments such as wheels or reels that turn and stop to randomly
`
`
`
`
`
`
`
`
`
`display symbols, video gaming apparatus and the rapidly
`
`
`
`
`
`
`
`
`increasing sophistication in hardware and software have
`
`
`
`
`
`
`
`enabled an explosion of new and exciting gaming apparatus.
`
`
`
`
`
`
`
`The earlier video apparatus merely imitated or simulated the
`
`
`
`
`
`
`
`
`mechanical slot games in the belief that players would want
`
`
`
`
`
`
`
`
`
`to play only the same games. Early video games therefore
`
`
`
`
`
`
`
`
`
`
`were simulated slot machines. The use of video gaming
`
`
`
`
`
`
`
`
`
`
`10
`
`15
`
`
`
`20
`
`
`
`30
`
`35
`
`
`
`40
`
`
`
`45
`
`
`
`
`
`
`
`60
`
`
`
`65
`
`
`
`Page 8 of 20
`
`Page 8 of 20
`
`
`
`
`
`US 6,962,530 B2
`
`10
`
`15
`
`20
`
`30
`
`35
`
`40
`
`3
`
`formed by each individual apparatus, To date, no manufac-
`
`
`
`
`
`
`turer prior to the assignee of the present invention is known
`
`
`
`
`
`
`
`
`to have been successful in creating a universal operating
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`system for converting existing equipment (that
`includes
`features such as reusable modules of code) at least in part
`
`
`
`
`
`
`
`because of the limitations in utility and compatibility of the
`
`
`
`
`
`
`
`operating systems in use. When new games are created, new
`
`
`
`
`
`
`
`
`hardware and software is typically created from the ground
`
`
`
`
`
`
`
`
`up.
`
`At least one attempt has been made to create a universal
`
`
`
`
`
`
`
`
`
`gaming engine that segregates the code associated with
`
`
`
`
`
`
`
`
`random number generation and algorithms applied to the
`
`
`
`
`
`
`
`random number string from the balance of the code. Carlson
`
`
`
`
`
`
`
`
`U.S. Pat. No. 5,707,286 describes such a device. This
`
`
`
`
`
`
`
`
`patentee recognized that modular code would be beneficial,
`
`
`
`
`
`
`
`but only contemplated making the RNG and transfer algo-
`
`
`
`
`
`
`
`rithms modular.
`
`
`The lack of a standard operating system has contributed to
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`maintaining an artificially high price for the systems in the
`market. The use of unique and non-standardized hardware
`
`
`
`
`
`
`
`
`interfaces in the various manufactured video gaming sys-
`
`
`
`
`
`
`
`tems is a contributing factor. The different hardware, the
`
`
`
`
`
`
`
`different access codes, the different pin couplings, the dif-
`
`
`
`
`
`
`
`
`
`ferent harnesses for coupling of pins, the different functions
`
`
`
`
`
`
`
`
`provided from the various pins, and the other various and
`
`
`
`
`
`
`
`
`
`
`different configurations within the systems has prevented
`
`
`
`
`
`
`
`any standard from developing within the technical field. This
`
`
`
`
`
`
`
`
`
`is advantageous to the apparatus manufacturer, because the
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`games for each system are provided exclusively by a single
`manufacturer, and the entire systems can be readily
`
`
`
`
`
`
`
`
`obsoleted, so that
`the market will have to purchase a
`
`
`
`
`
`
`
`
`
`complete unit rather than merely replacement software and
`
`
`
`
`
`
`
`
`hardware. Also, competitors cannot easily provide a single
`
`
`
`
`
`
`
`game that can be played on different hardware. A solution to
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`this problem is presented in our co—pending application for
`Video Gaming Apparatus for Wagering with Universal
`
`
`
`
`
`
`
`Computerized Controller and I/O Interface for Unique
`
`
`
`
`
`
`
`Architecture, assigned Ser. No. 09/405,921, and filed Sep.
`
`
`
`
`
`
`
`
`the disclosure that
`is incorporated herein by
`24, 1999,
`
`
`
`
`
`
`
`
`
`reference.
`
`The invention of computerized gaming systems that
`
`
`
`
`
`
`
`include a common or universal video wagering game con-
`
`
`
`
`
`
`
`troller that can be installed in a broad range of video gaming
`
`
`
`
`
`
`
`
`apparatus without substantial modification to the game con-
`
`
`
`
`
`
`
`troller has made possible the standardization of many com-
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`ponents and of corresponding gaming software within gam—
`ing systems. Such systems desirably will have functions and
`
`
`
`
`
`
`
`
`
`45
`features that are specifically tailored to the unique demands
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`of supporting a variety of games and gaming apparatus
`types, and will do so in a manner that is efficient, secure, and
`
`
`
`
`
`
`
`
`cost-effective.
`
`In addition to making communication between a universal
`
`
`
`
`
`
`operating system and non-standard machine devices such as
`
`
`
`
`
`
`
`coin hoppers, monitors, bill validators and the like possible,
`
`
`
`
`
`
`
`
`
`it would be desirable to provide security features that enable
`
`
`
`
`
`
`
`
`the operating system to verify that game code and other data
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`has not changed during operation.
`Aleorn et al. US. Pat. No. 5,643,086 describes a gaming
`
`
`
`
`
`
`
`
`system that is capable of authenticating an application or
`
`
`
`
`
`
`
`game program stored on a mass media device such as a
`
`
`
`
`
`
`
`
`CD-ROM, RAM, ROM or other device using hashing and
`
`
`
`
`
`
`
`
`encryption techniques. The mass storage device may be
`
`
`
`
`
`
`
`located in the gaming machine, or may be external to the
`
`
`
`
`
`
`
`gaming machine. This verification technique therefore will
`
`
`
`
`
`
`
`not detect any changes that occur in the code that
`is
`
`
`
`
`
`
`
`
`
`
`
`executing because it tests the code residing in mass storage
`
`
`
`
`
`
`
`
`prior to loading into RAM. The authenticating system relies
`
`
`
`
`
`
`
`on the use of a digital signature and suggests hashing of the
`
`
`
`
`
`
`
`
`entire data set before the encryption and decryption process.
`
`
`
`
`
`
`
`
`
`See also,Alcorn et al. US. Pat. No. 6,106,396 and Alcorn et
`
`
`
`
`
`
`
`
`
`al. US. Pat. No. 6,149,522.
`
`
`
`
`
`
`4
`
`US. patent application Ser. No. 09/949,021, filed Sep. 7,
`
`
`
`
`
`
`
`
`2001, and titled “ENCRYPTION INASECURE COMPUT-
`
`
`
`
`
`
`ERIZED GAMING SYSTEM” discloses an encryption/
`
`
`
`
`
`
`
`
`
`
`
`
`authentication system wherein a computerized game con-
`troller having a processor, memory, and nonvolatile storage
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`and operable to control the computerized wagering game;
`and game data stored in the nonvolatile storage, wherein the
`
`
`
`
`
`
`
`
`
`game data stored in nonvolatile storage is verified during
`
`
`
`
`
`
`
`
`
`
`
`
`
`operation. Additionally, disclosed is a gaming system com-
`
`
`
`
`
`
`prising: a nonvolatile memory; an encrypted control file
`stored in the nonvolatile memory, the encrypted control file
`
`
`
`
`
`
`
`including a set of program filenames giving order
`
`
`
`
`
`
`
`information, a message authentication code unique to each
`
`
`
`
`
`
`program file, and a message authentication code key;
`a
`
`
`
`
`
`
`
`gaming controller, wherein the gaming controller operates to
`
`
`
`
`
`
`
`decrypt the encrypted control file and authenticate the gam—
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`ing program files during operation of the gaming system;
`and gaming system devices in communication with the
`
`
`
`
`
`
`
`
`gaming controller via a gaming system interface.
`
`
`
`
`
`
`That system may further comprise a message authentica-
`
`
`
`
`
`
`
`tion code process stored in memory, wherein the game
`
`
`
`
`
`
`
`
`
`controller authenticates the set of program files by applying
`
`
`
`
`
`
`
`the message authentication process using the set of program
`
`
`
`
`
`
`
`
`files and the message authentication code key to provide a
`
`
`
`
`
`
`
`
`set of complementary message authentication codes, and
`
`
`
`
`
`
`
`comparing the message authentication codes from the con-
`
`
`
`
`
`
`
`
`trol file to the complementary message authentication codes.
`
`
`
`
`
`
`
`Additionally, the system may have the message authentica-
`
`
`
`
`
`
`
`
`tion process stored in read only memory. Also disclosed is
`
`
`
`
`
`
`
`
`
`
`
`
`
`a computer-readable medium having computer-executable
`instructions for performing a method of preparing a game
`
`
`
`
`
`
`data set capable of authentication comprising: providing a
`
`
`
`
`
`
`game data set; determining a message authentication code
`
`
`
`
`
`
`
`unique to the game data set; and storing the game data set
`
`
`
`
`
`
`
`
`
`
`
`and the message authentication code; and a computer-
`
`
`
`
`
`
`
`readable medium having computer-executable instructions
`
`
`
`
`
`for performing a method of authenticating a game used in a
`
`
`
`
`
`
`
`
`
`
`
`
`gaming system comprising: receiving an encrypted control
`file; decrypting the encrypted control
`file to provide a
`
`
`
`
`
`
`
`
`control file,
`the control file including a set of program
`
`
`
`
`
`
`
`
`
`filenames giving ordering information, a set of message
`
`
`
`
`
`
`
`authentication codes including a message authentication
`
`
`
`
`
`code unique to each program file, and a message authenti-
`
`
`
`
`
`
`
`
`cation code key; and rising the original control file to verify
`
`
`
`
`
`
`
`
`
`
`authentication of the game.
`
`
`
`What is still desired is alternative architecture and meth-
`
`
`
`
`
`
`
`ods of providing a gaming-specific platform that features
`
`
`
`
`
`
`secure storage and verification of game code and other data,
`
`
`
`
`
`
`
`
`
`provides the ability to securely change game code on
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`computerized wagering gaming system, and has the ability
`to verify that the code has not changed during operation of
`
`
`
`
`
`
`
`
`
`
`the gaming machine.
`
`
`
`is further
`it
`In the field of gaming apparatus security,
`
`
`
`
`
`
`
`
`desired that
`the game program code be identifiable as
`
`
`
`
`
`
`
`
`certified or approved, such as by the various gaming regu—
`
`
`
`
`
`
`lation commissions such as the Nevada Gaming Regulations
`
`
`
`
`
`
`Commission, New Jersey Gaming Regulations Commission
`
`
`
`
`
`or other regulatory agency.
`
`
`
`
`SUMMARY OF THE DISCLOSURE
`
`
`
`An architecture and method for a wagering game-specific
`
`
`
`
`
`
`platform are disclosed that features secure storage and
`
`
`
`
`
`
`
`
`verification of game code and other data, provides the ability
`
`
`
`
`
`
`
`
`
`to securely exchange data with a computerized wagering
`
`
`
`
`
`
`
`gaming system and/or network system, and do so in a
`
`
`
`
`
`
`
`
`manner that is straightforward and easy to manage. Some
`
`
`
`
`
`
`
`embodiments provide the ability to identify game program
`
`
`
`
`
`
`
`code as certified or approved by state Gaming Regulations
`
`
`
`
`
`
`Commission or other regulatory agencies. The disclosed
`
`
`
`
`
`
`embodiments provides these and other functions by use of
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`60
`
`65
`
`Page 9 of 20
`
`Page 9 of 20
`
`
`
`5
`
`encryption, modulo arithmetic, hash functions as well as
`
`
`
`
`
`
`
`
`
`
`
`
`
`other cryptographic methods. Together these cryptographic
`building block are used to create a method that provides
`
`
`
`
`
`
`
`
`identification when applied interactively and authenticity to
`
`
`
`
`
`
`
`
`
`
`
`
`
`a game data set when applied non-interactively.
`
`
`
`
`
`
`In mathematic systems, an interactive proof is informally
`
`
`
`
`
`
`
`recognized as a protocol between two parties in which one
`party, called the ‘prover,’ tries to prove a certain fact to the
`
`
`
`
`
`
`
`
`
`other party, called the ‘verifier.’ An interactive proof usually
`
`
`
`
`
`
`
`
`
`takes the form of a challenge-response protocol, in which the
`
`
`
`
`
`
`prover and the verifier exchange messages and the verifier
`
`
`
`
`
`
`
`
`
`outputs either ‘accept’ or ‘reject’ at the end of the protocol.
`
`
`
`
`
`
`
`
`
`
`Apart from their theoretical interest, interactive proofs have
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`found some applications in cryptography and computer
`security such as identification and authentication. In these
`
`
`
`
`
`
`
`situations, the fact to be proved is usually but not always
`
`
`
`
`
`
`
`
`
`related to the prover’s identity, such as the prover’s private
`
`
`
`
`
`
`
`
`
`key.
`It is useful for interactive proofs to have the following
`
`
`
`
`
`
`
`
`
`
`
`
`
`properties, especially in cryptographic applications:
`Completeness. The verifier always accepts the proof if the
`
`
`
`
`
`
`
`
`fact is true and both the prover and the verifier follow
`
`
`
`
`
`
`
`
`
`
`
`
`the protocol.
`Soundness. The verifier always rejects the proof if the fact
`
`
`
`
`
`
`
`
`is false, as long as the verifier follows the protocol.
`
`
`
`
`
`
`
`
`Zero knowledge. The verifier learns nothing about the fact
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`being proved (except that it is correct) from the prover
`that he could not already learn without the prover, even
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`if the verifier does not follow the protocol (as long as
`
`
`
`
`
`
`
`the prover does).
`In an interactive zero-knowledge
`proof, the verifier cannot even later prove the fact to
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`anyone else.
`(Not all
`interactive proofs have this
`
`property.)
`A typical round or building block in a zero-knowledge proof
`
`
`
`
`
`
`
`consists of a ‘commitment’ message from the prover, fol-
`
`
`
`
`
`
`
`lowed by a challenge from the verifier, and then a response
`
`
`
`
`
`
`
`
`to the challenge from the prover. The protocol may be
`
`
`
`
`
`
`
`
`
`repeated for many rounds. Based on the prover’s responses
`
`
`
`
`
`
`
`
`in all the rounds, the verifier decides whether to accept or
`
`
`
`
`
`
`
`
`
`reject the proof.
`
`
`
`In the preferred embodiment, a method of authenticating
`
`
`
`
`
`
`a game data set stored in a gaming apparatus is provided. By
`
`
`
`
`
`
`
`
`applying an interactive proof method in combination with a
`
`
`
`
`
`
`one-way hash of both the game data set and the commitment
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`message(s) from the prover,
`the game data set can be
`authenticated as originating from the prover. This is done by
`
`
`
`
`
`
`
`interpreting the hash value as a set of random challenges to
`
`
`
`
`
`
`
`the prover that are used to complete the interactive proofs
`
`
`
`
`
`
`
`
`
`without requiring a verifier to be present, This is referred to
`
`
`
`
`
`
`as a noninteractive zero knowledge proof. It contains all the
`
`
`
`
`
`
`
`
`elements of an interactive proof with the addition of a hash
`
`
`
`
`
`
`
`value interpreted in this fashion. Each challenge/response
`
`
`
`
`
`
`
`pair is recorded and stored along with the game data set to
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`provide a digital “stamp of authenticity”.
`BRIEF DESCRIPTION OF THE FIGURES
`
`
`
`
`FIG. 1 shows a computerized wagering game apparatus
`
`
`
`
`
`
`such as may be used to practice some embodiments of the
`
`
`
`
`
`
`
`present invention.
`
`
`FIG. 2 shows a diagram of a networked computer con-
`
`
`
`
`
`
`nected to certain components comprising a portion of a
`
`
`
`
`
`
`computerized wagering game apparatus, consistent with
`
`
`
`
`
`
`some embodiments of the present invention.
`
`
`
`
`
`FIG. 3 shows a graph used in the explanation of one of the
`
`
`
`
`
`
`
`
`examples.
`FIG. 4 shows a pinnacle diagram for assisting in the
`
`
`
`
`
`
`
`
`
`
`
`
`description of zero knowledge proof process.
`FIG. 5 shows a cave diagram for describing zero knowl-
`
`
`
`
`
`
`
`
`
`
`edge proof theory.
`
`
`
`US 6,962,530 B2
`6
`
`DETAILED DESCRIPTION OF THE
`
`
`
`PRESENTLY PREFERRED EMBODIMENTS
`
`
`
`The following description paraphrases below Bruce
`
`
`
`
`
`
`Schneier describes zero knowledge proofs in “Applied
`
`
`
`
`
`
`
`Cryptography,” Second Edition. John Wiley & Sons, Inc.
`
`
`
`
`
`
`
`1996. ISBN 0-471-12845-7. The function of zero knowledge
`
`
`
`
`
`
`
`proofs is typically discussed in terms of responsive events,
`
`
`
`
`
`
`and a cave diagram such as that shown in FIG. 5 is a useful
`
`
`
`
`
`
`
`
`tool for the discussion. Assume that the door between the
`
`
`
`
`
`
`
`
`
`
`two points labeled C and D can only be unlocked by using
`
`
`
`
`
`
`a secret key or pass-phrase. It must be assumed that someone
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`(the prover) knows the secret to unlock the door, and that
`
`
`
`
`
`
`
`
`
`they can convince an observer (the verified) that they know
`this secret without having to actually reveal the secret to the
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`observed by using a zero knowledge proof. (The term zero
`knowledge comes from the fact that no knowledge of the
`
`
`
`
`
`
`
`
`
`secret is given away by doing the proof, thus the single
`
`
`
`
`
`
`
`
`
`
`
`
`
`iterations can go on forever in theory.)
`A single zero knowledge proof can proceed in the fol-
`
`
`
`
`
`
`
`
`
`lowing manner: the observer and the person with the secret
`
`
`
`
`
`
`
`
`
`
`to opening the door start at point A in the diagram. The
`
`
`
`
`
`
`
`
`
`
`person with the secret goes into the cave to point C or point
`
`
`
`
`
`
`
`
`
`
`D in the diagram. After the person with the secret is in place,
`
`
`
`
`
`
`
`
`
`
`they call for the observer to move to point B in the diagram.
`
`
`
`
`
`
`
`
`
`The observer then chooses either 1 or 0 at random. It has
`
`
`
`
`
`
`
`been pre-arranged that if the observer chooses a 0 then the
`
`
`
`
`
`
`
`
`person with the secret will come out on the left hand side of
`
`
`
`
`
`
`
`
`
`
`the diagram, while if the observer chooses a 1 the person will
`
`
`
`
`
`
`
`
`
`come out on the right hand side of the diagram. The observer
`
`
`
`
`
`
`
`chooses the number at random after the person with the
`
`
`
`
`