A gaming machine is described in which all interested parties to a game
program to run on the gaming machine, will digitally sign each piece of
approved program prior to installation. These signatures are stored with
the program on a mass storage device inside the gaming machine. When the
machine needs to load a piece of program, or upon an external command
after a significant event such as a jackpot payout, it will execute the
SHA-1 program code in the EPROM on the program being loaded, and then
perform a DSA verification operation using the SHA-1 output as one of the
parameters. The DSA verification operation will be repeated for every
digital signature stored with the program, and all must be valid, so that
it is impossible to execute program code that has not been approved by the
manufacturer, the jurisdictional authority and optionally the casino
and/or other parties.