JP2001062128A - Verification method of game machine, game machine, and verification device - Google Patents
Verification method of game machine, game machine, and verification deviceInfo
- Publication number
- JP2001062128A JP2001062128A JP23915199A JP23915199A JP2001062128A JP 2001062128 A JP2001062128 A JP 2001062128A JP 23915199 A JP23915199 A JP 23915199A JP 23915199 A JP23915199 A JP 23915199A JP 2001062128 A JP2001062128 A JP 2001062128A
- Authority
- JP
- Japan
- Prior art keywords
- verification
- key
- encryption
- data
- decryption
- 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.)
- Pending
Links
- 238000012795 verification Methods 0.000 title claims abstract description 954
- 238000000034 method Methods 0.000 title claims description 73
- 230000005540 biological transmission Effects 0.000 claims description 75
- 230000015572 biosynthetic process Effects 0.000 claims description 26
- 238000003786 synthesis reaction Methods 0.000 claims description 26
- 239000002131 composite material Substances 0.000 claims description 19
- 230000002194 synthesizing effect Effects 0.000 claims description 15
- 238000013524 data verification Methods 0.000 claims 1
- 230000006870 function Effects 0.000 description 62
- 238000000354 decomposition reaction Methods 0.000 description 4
- 238000007789 sealing Methods 0.000 description 2
- 239000013256 coordination polymer Substances 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000003278 mimic effect Effects 0.000 description 1
- 239000000203 mixture Substances 0.000 description 1
- 238000007634 remodeling Methods 0.000 description 1
Landscapes
- Pinball Game Machines (AREA)
Abstract
Description
【0001】[0001]
【発明の属する技術分野】本発明は、遊技機、特にパチ
ンコ遊技機あるいはスロットマシンにおいて、制御プロ
グラム及びCPUが真正であることの検証を行う方法、
並びにその方法に使用される遊技機及び検証装置に関す
るものである。BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a method for verifying that a control program and a CPU are authentic in a gaming machine, particularly a pachinko gaming machine or a slot machine.
And a game machine and a verification device used in the method.
【0002】[0002]
【従来の技術】従来から、パチンコ遊技機あるいはスロ
ットマシン等の遊技機においては、制御プログラムが書
き込まれたROMを取り替えることにより、遊技者が有
利な条件となるようにする不正が行われることがある。
パチンコ遊技機やスロットマシンでこのような不正がし
ばしば行われるのは、獲得した遊技球又はメダルが景品
と交換可能であるとともに、場合によっては、当該景品
を換金することができるなどの直接利益が大きいためで
ある。2. Description of the Related Art Conventionally, in a gaming machine such as a pachinko gaming machine or a slot machine, by replacing a ROM in which a control program is written, an illegal operation may be performed so that the player has an advantageous condition. is there.
Such fraud often occurs in pachinko machines and slot machines, because the obtained gaming balls or medals can be exchanged for prizes, and in some cases, direct benefits such as being able to exchange the prizes are possible. Because it is big.
【0003】また更に、このようなパチンコ遊技機ある
いはスロットマシンは、所定の使用期間を経過後、いわ
ゆる中古市場に出回ることがある。このような遊技機は
容易に入手可能であり、また、入手した遊技機からその
制御プログラムを解読することは、プログラミングの知
識を有する者にとっては容易なことである。したがっ
て、解読した制御プログラムを不正なプログラムへ書き
換えることもまた、このような者にとっては容易なこと
であるため、かかる不正の横行を許すこととなってい
た。Further, such a pachinko game machine or a slot machine may appear on a so-called second-hand market after a predetermined period of use. Such a gaming machine is easily available, and it is easy for a person having programming knowledge to decode the control program from the obtained gaming machine. Therefore, it is also easy for such a person to rewrite the decrypted control program with an unauthorized program, so that such unauthorized access is permitted.
【0004】このような不正を防止するために、従来、
さまざまな対策がとられていた。たとえば、基板ケース
を証紙により封印する方法がある。この方法では、その
中のROMを取り替えるためには証紙を剥がしたり破い
たりしなければならない。したがって、証紙をチェック
することで、不正なROMを発見可能にしようとするも
のである。[0004] In order to prevent such misconduct, conventionally,
Various measures were taken. For example, there is a method of sealing a board case with a stamp. In this method, the stamp must be peeled or torn in order to replace the ROM therein. Therefore, an attempt is made to detect an unauthorized ROM by checking the certificate stamp.
【0005】また、遊技機に搭載されているROMから
制御プログラムを読み出し、これを真正な制御プログラ
ムと照合することによって不正を発見する手段もある。
更に、不正なROMが装着されている場合、CPUが動
作を停止するか、あるいは遊技を実行しないようにす
る、いわゆるセキュリティ機能付きCPUを遊技機に採
用することもある。There is also a means for reading out a control program from a ROM mounted on a game machine and comparing it with a genuine control program to find an illegality.
Further, when an unauthorized ROM is mounted, a so-called CPU with a security function that stops the operation of the CPU or prevents the CPU from executing the game may be employed in the gaming machine.
【0006】[0006]
【発明が解決しようとする課題】上記の各手段の採用に
もかかわらず、不正の横行は依然として止んではいな
い。たとえば、証紙による基板ケースの封印に対して
は、証紙を丁寧に剥離するだけでROMの取り替えが自
由に行われる。[0006] Despite the employment of the above-mentioned means, the spread of fraud has not stopped. For example, when sealing the board case with a stamp, the ROM can be freely replaced simply by carefully peeling off the stamp.
【0007】また、制御プログラムの照合検査に対して
は、真正な制御プログラムに加えて、不正な制御プログ
ラムが書き込まれた不正ROMを、真正ROMと取り替
える不正が行われている。この不正ROMは、外部から
の照合のための読み出しに対しては、真正な制御プログ
ラムが出力されるが、遊技の際には不正な制御プログラ
ムが実行されるように形成されている。したがって、照
合検査には合格するものの、実際には不正なプログラム
が実行されているという事態も生じていた。[0007] In addition, in the verification of the control program, in addition to the genuine control program, an illicit ROM in which an illegitimate control program is written is replaced with a genuine ROM. This unauthorized ROM is formed so that a genuine control program is output for external reading for collation, but an unauthorized control program is executed during a game. Therefore, there has been a case where an illegal program is actually executed although the verification test is passed.
【0008】更に、セキュリティ機能付きCPUに対し
ては、ROMのみならずCPUをも取り替えるような不
正がなされている。一方、従来の不正対策は、証紙のよ
うな物理的封印を除けば、いずれもROMに対する不正
を想定したものである。しかしながら、不正の方法とし
ては、従来主流であったROMに書き込まれた制御プロ
グラムの改ざんの他に、CPUの改造も考えられる。す
なわち、ROMに書き込まれた制御プログラムはそのま
まにしておいて、たとえば、真正な制御プログラムでは
「はずれ」と判断される場合に、CPUがこれを「当た
り」と判断して出力するものである。このような不正
は、ROMに対する不正対策のみでは当然防止できるも
のではない。In addition, a CPU with a security function has been fraudulently replaced not only with the ROM but also with the CPU. On the other hand, the conventional countermeasures against fraud are all assumed to be fraudulent to the ROM except for a physical seal such as a stamp. However, as a fraudulent method, in addition to falsification of a control program written in a ROM which has conventionally been mainstream, remodeling of a CPU can be considered. That is, the control program written in the ROM is left as it is, and for example, when it is determined that the genuine control program is "losing", the CPU determines that this is a "hit" and outputs it. Such fraud cannot be naturally prevented only by countermeasures against ROM.
【0009】上記の問題点のうち、本発明は、ROMに
書き込まれた制御プログラムの照合及びCPUの照合の
観点において、不正の防止を目的とするものである。す
なわち、請求項1から3までに記載した発明は、照合の
際のROMからの読み出しは、必ず暗号化を経て行うこ
とで、CPUの解析及び擬態によるCPUの偽造を困難
なものとするとともに、制御プログラムの真偽を検証す
ることで、CPUの真偽をも検証することをも目的とす
る。[0009] Among the above problems, the present invention aims at preventing fraud in collating a control program written in a ROM and collating a CPU. That is, according to the first to third aspects of the present invention, reading from the ROM at the time of collation is always performed through encryption, thereby making it difficult to forge the CPU by analyzing and mimicking the CPU. Another object is to verify the authenticity of the CPU by verifying the authenticity of the control program.
【0010】また、請求項4から6までに記載した発明
は、暗号化のための暗号鍵自体を真正制御プログラムと
合成して暗号化することで、CPUの解析及び擬態によ
るCPUの偽造をより困難にするとともに、制御プログ
ラムの真偽を検証することでCPUの真偽も検証するこ
とを目的とする。加えて、請求項7から9までに記載し
た発明は、暗号化のための暗号鍵自体を真正制御プログ
ラムと合成して暗号化することで、CPUの解析及び擬
態によるCPUの偽造をより困難にするとともに、CP
Uの真偽を直接的に検証することを目的とする。According to the invention described in claims 4 to 6, the encryption key itself for encryption is synthesized with the authenticity control program and encrypted, so that the forgery of the CPU due to the analysis and the imitation of the CPU is further improved. It is another object of the present invention to verify the authenticity of the CPU by verifying the authenticity of the control program. In addition, the inventions according to claims 7 to 9 combine the encryption key itself for encryption with the genuine control program and encrypt it, thereby making it more difficult to analyze the CPU and forge the CPU by mimicry. Along with the CP
The purpose is to directly verify the authenticity of U.
【0011】更に、請求項10から12までに記載した
発明は、暗号化の際に、乱数を生成し、これと真正制御
プログラムとの合成を経て暗号化することで、CPUの
解析及び擬態によるCPUの偽造を困難なものとし、制
御プログラムの真偽を検証することでCPUの真偽も検
証することを目的とする。Further, according to the present invention, a random number is generated at the time of encryption, and the generated random number is combined with a genuine control program and encrypted. An object of the present invention is to make forgery of a CPU difficult and verify the authenticity of a CPU by verifying the authenticity of a control program.
【0012】[0012]
【課題を解決するための手段】(請求項1)上記の課題
に鑑み、本発明のうち、請求項1記載の発明に係る遊技
機の検証方法は、検証装置50内で、検証用暗号鍵と検証
用復号鍵との対を生成する検証用鍵生成段階と、上記検
証用暗号鍵を、同検証装置50から遊技機10に送信する鍵
送信段階と、同遊技機10内のCPU20により、同遊技機
10のROM30に記録されている制御プログラムを、上記
検証装置50から受信した上記検証用暗号鍵によって暗号
化された検証用暗号データとする検証用暗号化段階と、
上記検証用暗号データを、同遊技機10から前記検証装置
50に送信する暗号送信段階と、同検証装置50内で、上記
遊技機10から受信した上記検証用暗号データを、前記検
証用復号鍵を用いて検証用復号データとする検証用復号
化段階と、上記検証用復号データを、所定の照合用デー
タと照合する照合段階とを含むことを特徴とする。SUMMARY OF THE INVENTION In view of the above-mentioned problems, a game machine verification method according to a first aspect of the present invention includes a verification encryption key in a verification device. A verification key generation step of generating a pair of a verification decryption key and a verification encryption key, a key transmission step of transmitting the verification encryption key from the verification device 50 to the gaming machine 10, and a CPU 20 in the gaming machine 10, The same gaming machine
A verification encryption step of converting the control program recorded in the ROM 30 of 10 into verification encryption data encrypted by the verification encryption key received from the verification device 50;
The encryption data for verification is transmitted from the gaming machine 10 to the verification device.
A cryptographic transmission step of transmitting to the verification device 50, and the verification encryption data received from the gaming machine 10 in the verification device 50, a verification decryption step of using the verification decryption key as the verification decryption data. And collating the decrypted data for verification with predetermined collation data.
【0013】「遊技機」とは、ROM30に書き込まれた
制御プログラムに従ってCPU20がその遊技を制御する
装置をいい、具体的には、パチンコ遊技機や、スロット
マシン等をいう。「検証装置」とは、制御プログラム及
びCPU20のうちの一方又は両方が真正であるか否かを
検証するための装置をいう。具体的には、上記ROM30
から制御プログラムを読み出す装置をいう。The "gaming machine" refers to a device in which the CPU 20 controls the game in accordance with a control program written in the ROM 30, and specifically refers to a pachinko gaming machine, a slot machine, and the like. The “verification device” is a device for verifying whether one or both of the control program and the CPU 20 are genuine. Specifically, the ROM 30
A device that reads a control program from a device.
【0014】本請求項に係る遊技機の検証方法は、以下
のように実行される。まず、検証用鍵生成段階におい
て、検証装置50内で検証用暗号鍵と検証用復号鍵との対
が生成される。「検証用暗号鍵」と「検証用復号鍵」と
は、非対称暗号系又は対称暗号系のいずれで用いられる
ものであっても、また、非対称暗号系と対象暗号系とを
組み合わせた暗号系で用いられるものでもよい。The game machine verification method according to the present invention is executed as follows. First, in the verification key generation stage, a pair of a verification encryption key and a verification decryption key is generated in the verification device 50. The “verification encryption key” and “verification decryption key” may be used in either an asymmetric encryption system or a symmetric encryption system, or may be an encryption system combining an asymmetric encryption system and a target encryption system. What is used may be used.
【0015】非対称暗号系としては、RSA暗号方式、
エルガマル方式、楕円曲線暗号方式等、様々な方式が採
用可能である。いずれの方式においても、平文を暗号鍵
を用いた演算によって暗号化するとともに、この暗号文
を復号鍵を用いた演算によって復号化することで、平文
が得られることとなっている。ここで、暗号鍵と復号鍵
とが異なっていることが、「非対称」とされる所以であ
る。また、暗号鍵は、通常公開されるものであるが、こ
の暗号鍵から復号鍵を求めることは、通常極めて困難と
なっている。As the asymmetric cryptosystem, RSA cryptosystem,
Various schemes such as an El Gamal scheme and an elliptic curve cryptosystem can be adopted. In any of the methods, plaintext is obtained by encrypting a plaintext by an operation using an encryption key and decrypting the ciphertext by an operation using a decryption key. Here, the difference between the encryption key and the decryption key is the reason why the key is regarded as “asymmetric”. Further, the encryption key is usually made public, but it is usually extremely difficult to obtain a decryption key from the encryption key.
【0016】一方、対象暗号系においては、上記「検証
用暗号鍵」及び「検証用復号鍵」は同一のものとなる。
次に、鍵送信段階において、上記検証用暗号鍵が、遊技
機10に送信される。なお、検証用復号鍵は、後の復号化
の際まで検証装置50内に保存される。そして、検証用暗
号化段階において、遊技機10内のCPU20により検証装
置50から送信された検証用暗号鍵を用いて、制御プログ
ラムが暗号化される。具体的には、制御プログラムを所
定の規則に従って数値化した後に、同数値を上記検証用
暗号鍵を用いて演算することにより、検証用暗号データ
が得られる。On the other hand, in the target encryption system, the above “verification encryption key” and “verification decryption key” are the same.
Next, in the key transmission stage, the verification encryption key is transmitted to the gaming machine 10. Note that the verification decryption key is stored in the verification device 50 until later decryption. Then, in the verification encryption stage, the control program is encrypted by the CPU 20 in the gaming machine 10 using the verification encryption key transmitted from the verification device 50. Specifically, after the control program is digitized according to a predetermined rule, the same numerical value is calculated using the verification encryption key to obtain verification encryption data.
【0017】次に、暗号送信段階において、上記検証用
暗号データが、検証装置50に送信される。すなわち、上
記制御プログラムの検証装置50による読み出しは、必ず
検証用暗号データによって行われることとなっている。
そして、検証用復号化段階において、先に検証用暗号鍵
との対として生成された検証用復号鍵を用いて、読み出
された検証用暗号データが復号化される。具体的には、
検証用暗号データを上記検証用復号鍵を用いて演算する
ことにより、検証用復号データが得られる。Next, in the encryption transmission stage, the above-mentioned encryption data for verification is transmitted to the verification device 50. That is, the reading of the control program by the verification device 50 is always performed by the verification encryption data.
Then, in the decryption step for verification, the read encryption data for verification is decrypted using the decryption key for verification generated previously as a pair with the encryption key for verification. In particular,
The verification decryption data is obtained by calculating the verification encryption data using the verification decryption key.
【0018】次に、照合段階において、この検証用復号
データは、検証すべき制御プログラムを表す照合用デー
タと照合される。ここで、遊技機10のROM30に書き込
まれた制御プログラムが真正で、かつ、CPU20が真正
である場合に限って、検証用復号データは、照合用デー
タと一致するはずである。また、検証用復号データが照
合用データと一致しない場合は、当該制御プログラム又
はCPU20が真正でないこととなる。Next, in the collation stage, the decryption data for verification is collated with collation data representing a control program to be verified. Here, the decryption data for verification should match the data for verification only when the control program written in the ROM 30 of the gaming machine 10 is genuine and the CPU 20 is genuine. If the decryption data for verification does not match the data for verification, the control program or the CPU 20 is not authentic.
【0019】すなわち、制御プログラムの読み出しは、
ROM30に書き込まれた状態のままでは行われず、必ず
暗号化されてから行われ、この検証用暗号化段階の内容
が非公開である場合、この検証用暗号化段階の内容を知
らない第三者が、検証用複合データが照合用データと一
致するような真正でない制御プログラムと真正でないC
PU20とを作成することが不可能だからである。That is, the reading of the control program is as follows:
It is not performed as it is written in the ROM 30, but is always performed after encryption. If the contents of the verification encryption stage are private, a third party who does not know the contents of the verification encryption stage Is a non-authentic control program and a non-authentic C such that the verification composite data matches the verification data.
This is because it is impossible to create PU20.
【0020】また、読み出しの過程における送受信の間
に、不正を行おうとする者が、検証用暗号データ及び検
証用暗号鍵を入手することは可能であるが、これらから
検証用復号鍵を知ることは、非対称暗号系の場合、通常
極めて困難である。したがって、これらから制御プログ
ラムへの復号化は事実上不可能であるため、真正な制御
プログラムの解読を極めて困難なものとすることが可能
である。It is possible for a person who intends to perform fraud during transmission / reception in the reading process to obtain the verification encryption data and the verification encryption key. Is usually very difficult for asymmetric cryptosystems. Accordingly, since it is virtually impossible to decode them into a control program, it is possible to make it extremely difficult to decode a genuine control program.
【0021】更に、検証用暗号化段階によって正しく暗
号化された制御プログラムのみが、検証装置50によって
正しく復号化されるため、検証装置50によって制御プロ
グラムを検証することで、CPU20の真偽を検証するこ
とも可能となる。 (請求項2)また、本発明のうち、請求項2記載の発明
は、遊技の制御を行うCPU20と、遊技の制御プログラ
ムが記録されているROM30と、下記の検証装置50から
送信された検証用暗号鍵を受信する鍵受信手段40と、上
記ROM30に記録されている制御プログラムを、上記検
証用暗号鍵によって暗号化された検証用暗号データとす
る検証用暗号化手段25と、上記検証用暗号データを、下
記の検証装置50へ送信する暗号送信手段45とを有する遊
技機10であって、検証用暗号鍵と検証用復号鍵との対を
生成する検証用鍵生成手段60と、上記検証用暗号鍵を前
記遊技機10の鍵受信手段40へ送信する鍵送信手段70と、
前記暗号送信手段45から送信された検証用暗号データを
受信する暗号受信手段75と、上記検証用暗号データを、
前記検証用復号鍵を用いて検証用復号データとする検証
用復号化手段80と、上記検証用復号データを、所定の照
合用データと照合する照合手段90とを有する検証装置50
を用いて、前記ROM30に記録されている制御プログラ
ムの真偽が検証可能であることを特徴とする。Further, since only the control program correctly encrypted in the verification encryption stage is correctly decrypted by the verification device 50, the control program is verified by the verification device 50 to verify the authenticity of the CPU 20. It is also possible to do. (Claim 2) Of the present invention, the invention according to claim 2 is characterized in that a CPU 20 for controlling a game, a ROM 30 in which a game control program is recorded, and a verification transmitted from a verification device 50 described below. A key receiving unit 40 for receiving an encryption key for verification, a verification encryption unit 25 for converting a control program recorded in the ROM 30 into encryption data for verification encrypted by the encryption key for verification, A gaming machine 10 having encryption transmitting means 45 for transmitting encrypted data to a verification device 50 described below, wherein the verification key generation means 60 generates a pair of a verification encryption key and a verification decryption key; Key transmitting means 70 for transmitting the verification encryption key to the key receiving means 40 of the gaming machine 10,
An encryption receiving unit 75 that receives the verification encryption data transmitted from the encryption transmission unit 45, and the verification encryption data,
A verification device 50 comprising: a verification decryption unit 80 that uses the verification decryption key to generate verification decryption data; and a verification unit 90 that verifies the verification decryption data with predetermined verification data.
, The authenticity of the control program recorded in the ROM 30 can be verified.
【0022】すなわち、本請求項記載の遊技機10は、請
求項1記載の遊技機の検証方法によって検証可能となっ
ている。「CPU」は、下記のROM30に書き込まれた
制御プログラムに従って、遊技機10の制御を司る。「R
OM」には、制御プログラムが書き込まれている。この
制御プログラムは、あらかじめ所定の方法で暗号化され
ていてもよい。That is, the gaming machine 10 according to the present invention can be verified by the gaming machine verification method according to the first aspect. The “CPU” controls the gaming machine 10 according to a control program written in the ROM 30 described below. "R
The control program is written in “OM”. This control program may be encrypted in advance by a predetermined method.
【0023】「鍵受信手段」とは、請求項1記載の遊技
機の検証方法における鍵送信段階において、後述の請求
項3記載の検証装置50の検証用鍵生成手段60により生成
され、送信された検証用暗号鍵の受信に係る手段であ
る。具体的には、たとえば、入力ポート等の入力手段を
いう。「検証用暗号化手段」とは、請求項1記載の遊技
機の検証方法における検証用暗号化段階において、平文
である制御プログラムを、上記鍵受信手段40が受信した
検証用暗号鍵を用いて、検証用暗号データとする手段を
いう。この検証用暗号化手段25は、CPU20が実行する
ソフトウェアとして実現されてもよいが、CPU20上で
ハードウェアとして構成されていることがより望まし
い。The "key receiving means" is generated and transmitted by the verification key generation means 60 of the verification device 50 described later in the key transmission step in the game machine verification method of the first aspect. Associated with the received verification encryption key. Specifically, it refers to input means such as an input port. The “encryption means for verification” means that, in the encryption step for verification in the game machine verification method according to claim 1, the control program which is a plain text is transmitted using the verification encryption key received by the key receiving means 40. Means for making encrypted data for verification. The verification encryption unit 25 may be realized as software executed by the CPU 20, but is more preferably configured as hardware on the CPU 20.
【0024】「暗号送信手段」とは、請求項1記載の遊
技機の検証方法における暗号送信段階において、上記検
証用暗号データを請求項3記載の検証装置50へ送信する
ための、出力ポート等の出力手段をいう。上記により、
本請求項記載の遊技機10は、制御プログラムの読み出し
の際に、同制御プログラムを暗号化して出力するため、
第三者が同制御プログラムの解読をすることは極めて困
難となっている。また、制御プログラムを解析するため
には、検証用暗号化手段25を解析する必要があるため、
請求項3記載の検証装置50を用いないと、制御プログラ
ムの解析は極めて困難である。The "encryption transmission means" means an output port or the like for transmitting the verification encryption data to the verification device 50 in the encryption transmission step in the game machine verification method according to the first aspect. Means output means. By the above,
The gaming machine 10 according to the present invention, when reading out the control program, to encrypt and output the control program,
It is extremely difficult for a third party to decipher the control program. In addition, in order to analyze the control program, it is necessary to analyze the verification encryption unit 25.
Without the verification device 50, it is extremely difficult to analyze a control program.
【0025】(請求項3)更に、本発明のうち、請求項
3記載の発明は、検証用暗号鍵と検証用復号鍵との対を
生成する検証用鍵生成手段60と、上記検証用暗号鍵を下
記の遊技機10へ送信する鍵送信手段70と、下記の遊技機
10から送信された検証用暗号データを受信する暗号受信
手段75と、上記検証用暗号データを、前記検証用復号鍵
を用いて検証用復号データとする検証用復号化手段80
と、上記検証用復号データを、所定の照合用データと照
合する照合手段90とを有する検証装置50であって、遊技
の制御を行うCPU20と、遊技の制御プログラムが記録
されているROM30と、前記鍵送信手段70から送信され
た検証用暗号鍵を受信する鍵受信手段40と、上記ROM
30に記録されている制御プログラムを、上記検証用暗号
鍵によって暗号化された検証用暗号データとする検証用
暗号化手段25と、上記検証用暗号データを、前記暗号受
信手段75へ送信する暗号送信手段45とを有する遊技機10
における、上記ROM30に記録されている制御プログラ
ムの真偽を検証可能なことを特徴とする。(Claim 3) In the present invention, the invention according to claim 3 further comprises a verification key generating means 60 for generating a pair of a verification encryption key and a verification decryption key; Key transmitting means 70 for transmitting a key to the following gaming machine 10;
An encryption receiving unit 75 that receives the encrypted cryptographic data transmitted from 10; and a decryption unit for verification 80 that converts the encrypted cryptographic data for verification into decryption data for verification using the decryption key for verification.
A verification device 50 having verification means 90 for verifying the decryption data for verification with predetermined verification data, a CPU 20 for controlling a game, a ROM 30 on which a game control program is recorded, Key receiving means 40 for receiving the verification encryption key transmitted from the key transmitting means 70;
A verification encryption unit 25 that converts the control program recorded in the verification program 30 into verification cryptographic data encrypted by the verification cryptographic key, and a cryptography that transmits the verification cryptographic data to the cryptographic reception unit 75. Gaming machine 10 having transmission means 45
Wherein the authenticity of the control program recorded in the ROM 30 can be verified.
【0026】すなわち、本請求項記載の検証装置50は、
請求項1記載の遊技機の検証方法で用いる検証装置50と
なっている。「検証用鍵生成手段」とは、請求項1記載
の遊技機の検証方法における検証用鍵生成段階におい
て、検証用暗号鍵と検証用復号鍵との対を生成する手段
をいう。That is, the verification device 50 according to the present invention
A verification device 50 used in the game machine verification method according to claim 1 is provided. The "verification key generation means" refers to means for generating a pair of a verification encryption key and a verification decryption key in the verification key generation step in the game machine verification method according to the first aspect.
【0027】検証用暗号鍵と検証用復号鍵とは、非対称
暗号系又は対称暗号系のいずれで用いられるものでも、
また、非対称暗号系と対象暗号系とを組み合わせた暗号
系で用いられるものでもよい。ここで、これらの鍵が非
対称暗号系で用いられるものである場合には、非対称暗
号系における鍵生成のルールに従って生成される。この
ルールは、どの暗号系を採用するかによって異なるが、
いずれの暗号系においても、暗号鍵によって暗号化され
た平文は、復号鍵によって復号化されてもとの平文に戻
るという特徴を有する。また、非対称暗号系において生
成された暗号鍵及び復号鍵は、どちらか一方のみからも
う一方を求めることは通常極めて困難であるという特徴
も有する。The verification encryption key and the verification decryption key may be used in either an asymmetric encryption system or a symmetric encryption system.
Further, an encryption system that is used in a combination of an asymmetric encryption system and a target encryption system may be used. Here, when these keys are used in the asymmetric encryption system, they are generated in accordance with the key generation rules in the asymmetric encryption system. This rule depends on which encryption system is used,
In any of the encryption systems, the plaintext encrypted with the encryption key has the characteristic of being restored to the original plaintext after being decrypted with the decryption key. In addition, it is usually very difficult to obtain the other from only one of the encryption key and the decryption key generated in the asymmetric encryption system.
【0028】また、対称暗号系を採用する場合には、上
記検証用暗号鍵及び検証用復号鍵は、同一のものとな
る。「鍵送信手段」とは、請求項1記載の遊技機の検証
方法における鍵送信段階において、上記検証用暗号鍵
を、請求項2記載の遊技機10へ送信するための、出力ポ
ート等の出力手段をいう。When the symmetric encryption system is adopted, the above-mentioned verification encryption key and verification decryption key are the same. The "key transmitting means" means an output port or the like for transmitting the verification encryption key to the gaming machine 10 in the key transmitting step in the gaming machine verification method according to claim 1. Means.
【0029】「暗号受信手段」とは、請求項1記載の遊
技機の検証方法における暗号送信段階において、請求項
2記載の遊技機10の検証用暗号化手段25により暗号化さ
れ、送信された検証用暗号データを受信するための、入
力ポート等の入力手段をいう。「検証用復号化手段」と
は、請求項1記載の遊技機の検証方法における検証用復
号化段階において、暗号文である上記検証用暗号データ
を、検証用鍵生成手段60が生成した検証用復号鍵を用い
て、検証用復号データとする手段をいう。The "encryption receiving means" is encrypted and transmitted by the verification encrypting means 25 of the gaming machine 10 in the encryption transmitting step in the gaming machine verification method of the first aspect. Input means, such as an input port, for receiving verification encryption data. The "verifying decryption means" means the verification key data generated by the verification key generation means 60 in the verification decryption step of the gaming machine verification method according to claim 1. Means for using decryption keys to generate decryption data for verification.
【0030】「照合手段」とは、請求項1記載の遊技機
の検証方法における照合段階において、上記検証用復号
データを、所定の照合用データと比較照合する手段をい
う。この照合用データは、本来遊技機10のROM30に書
き込まれているべき制御プログラムを表すデータとなっ
ている。上記により、本請求項記載の検証装置50には、
制御プログラムの読み込みの際に、暗号化された同制御
プログラムが入力されるため、第三者が同制御プログラ
ムの解読をすることは極めて困難となっている。また、
制御プログラムを解析するためには、検証用暗号化手段
25を解析する必要があるため、本請求項に係る検証装置
50を用いないと、請求項2に係る遊技機10の制御プログ
ラムの解析は極めて困難である。The "collating means" refers to means for comparing and collating the decrypted verification data with predetermined collation data in the collation step in the gaming machine verification method according to the first aspect. This collation data is data representing a control program that should be originally written in the ROM 30 of the gaming machine 10. By the above, the verification device 50 according to the present claim,
Since the encrypted control program is input when the control program is read, it is extremely difficult for a third party to decrypt the control program. Also,
In order to analyze the control program, verification encryption means
Since it is necessary to analyze 25, the verification device according to the present claim
Without 50, it is extremely difficult to analyze the control program for the gaming machine 10 according to the second aspect.
【0031】(請求項4)本発明のうち、請求項4記載
の発明に係る遊技機の検証方法は、検証装置50内で、検
証用暗号鍵と検証用復号鍵との対を生成する検証用鍵生
成段階と、上記検証用暗号鍵を、同検証装置50から遊技
機10に送信する鍵送信段階と、同遊技機10内のCPU20
により、同遊技機10のROM30に記録されている制御プ
ログラムと同検証用暗号鍵とを合成して合成データとす
るとともに、同合成データを、上記検証装置50から受信
した上記検証用暗号鍵によって暗号化された検証用暗号
データとする検証用暗号化段階と、上記検証用暗号デー
タを、同遊技機10から前記検証装置50に送信する暗号送
信段階と、同検証装置50内で、上記遊技機10から受信し
た上記検証用暗号データを、前記検証用復号鍵を用いて
検証用復号データとするとともに、同検証用復号データ
をプログラム部分と鍵部分とに分解する検証用復号化段
階と、上記プログラム部分を、所定の照合用データと照
合する照合段階とを含むことを特徴とする。(Claim 4) In the present invention, the game machine verification method according to the invention described in claim 4 is a verification method for generating a pair of a verification encryption key and a verification decryption key in the verification device 50. Key generating step, a key transmitting step of transmitting the verification encryption key from the verification device 50 to the gaming machine 10, and a CPU 20 in the gaming machine 10.
Thereby, the control program recorded in the ROM 30 of the gaming machine 10 and the verification encryption key are combined to form synthesized data, and the synthesized data is generated by the verification encryption key received from the verification device 50. A verification encrypting step for making encrypted verification encryption data; an encryption transmission step for transmitting the verification encryption data from the gaming machine 10 to the verification device 50; The verification encryption data received from the device 10 is used as the verification decryption data using the verification decryption key, and the verification decryption step of decomposing the verification decryption data into a program part and a key part. A collating step of collating the program portion with predetermined collation data.
【0032】「遊技機」とは、ROM30に書き込まれた
制御プログラムに従ってCPU20がその遊技を制御する
装置をいい、具体的には、パチンコ遊技機や、スロット
マシン等をいう。「検証装置」とは、制御プログラム及
びCPU20のうちの一方又は両方が真正であるか否かを
検証するための装置をいう。具体的には、上記ROM30
から制御プログラムを読み出す装置をいう。The "game machine" refers to a device in which the CPU 20 controls the game in accordance with a control program written in the ROM 30, and specifically refers to a pachinko game machine, a slot machine, and the like. The “verification device” is a device for verifying whether one or both of the control program and the CPU 20 are genuine. Specifically, the ROM 30
A device that reads a control program from a device.
【0033】本請求項に係る遊技機の検証方法は、以下
のように実行される。まず、検証用鍵生成段階におい
て、検証装置50内で検証用暗号鍵と検証用復号鍵との対
が生成される。「検証用暗号鍵」と「検証用復号鍵」と
は、非対称暗号系又は対称暗号系のいずれで用いられる
ものであっても、また、非対称暗号系と対象暗号系とを
組み合わせた暗号系で用いられるものでもよい。The game machine verification method according to the present invention is executed as follows. First, in the verification key generation stage, a pair of a verification encryption key and a verification decryption key is generated in the verification device 50. The “verification encryption key” and “verification decryption key” may be used in either an asymmetric encryption system or a symmetric encryption system, or may be an encryption system combining an asymmetric encryption system and a target encryption system. What is used may be used.
【0034】非対称暗号系としては、RSA暗号方式、
エルガマル方式、楕円曲線暗号方式等、様々な方式が採
用可能である。いずれの方式においても、平文を暗号鍵
を用いた演算によって暗号化するとともに、この暗号文
を復号鍵を用いた演算によって復号化することで、平文
が得られることとなっている。ここで、暗号鍵と復号鍵
とが異なっていることが、「非対称」とされる所以であ
る。また、暗号鍵は、通常公開されるものであるが、こ
の暗号鍵から復号鍵を求めることは、通常極めて困難と
なっている。As the asymmetric cryptosystem, RSA cryptosystem,
Various schemes such as an El Gamal scheme and an elliptic curve cryptosystem can be adopted. In any of the methods, plaintext is obtained by encrypting a plaintext by an operation using an encryption key and decrypting the ciphertext by an operation using a decryption key. Here, the difference between the encryption key and the decryption key is the reason why the key is regarded as “asymmetric”. Further, the encryption key is usually made public, but it is usually extremely difficult to obtain a decryption key from the encryption key.
【0035】一方、対称暗号系においては、上記「検証
用暗号鍵」及び「検証用復号鍵」は同一のものとなる。
次に、鍵送信段階において、上記検証用暗号鍵が、遊技
機10に送信される。なお、検証用復号鍵は、後の復号化
の際まで検証装置50内に保存される。そして、検証用暗
号化段階において、遊技機10内のCPU20により検証装
置50から送信された検証用暗号鍵を用いて、制御プログ
ラムが暗号化される。具体的には、制御プログラムを所
定の規則に従って数値化した後に、同数値は、上記検証
用暗号鍵との所定の演算により、合成データとされる。
次いで、この合成データを上記検証用暗号鍵を用いて演
算することにより、検証用暗号データが得られる。On the other hand, in the symmetric encryption system, the above “verification encryption key” and “verification decryption key” are the same.
Next, in the key transmission stage, the verification encryption key is transmitted to the gaming machine 10. Note that the verification decryption key is stored in the verification device 50 until later decryption. Then, in the verification encryption stage, the control program is encrypted by the CPU 20 in the gaming machine 10 using the verification encryption key transmitted from the verification device 50. Specifically, after the control program is digitized according to a predetermined rule, the numerical value is converted into synthetic data by a predetermined operation with the verification encryption key.
Next, the composite data is operated using the verification encryption key to obtain the verification encryption data.
【0036】次に、暗号送信段階において、上記検証用
暗号データが、検証装置50に送信される。すなわち、上
記制御プログラムの検証装置50による読み出しは、必ず
検証用暗号データによって行われることとなっている。
そして、検証用復号化段階において、先に検証用暗号鍵
との対として生成された検証用復号鍵を用いて、読み出
された検証用暗号データが復号化される。具体的には、
検証用暗号データを上記検証用復号鍵を用いて演算する
ことにより、検証用復号データが得られる。次いで、こ
の検証用復号データは、上記合成データを得る際の演算
の逆演算により、プログラム部分と鍵部分とに分解され
る。Next, in the encryption transmission stage, the above-mentioned encryption data for verification is transmitted to the verification device 50. That is, the reading of the control program by the verification device 50 is always performed by the verification encryption data.
Then, in the decryption step for verification, the read encryption data for verification is decrypted using the decryption key for verification generated previously as a pair with the encryption key for verification. In particular,
The verification decryption data is obtained by calculating the verification encryption data using the verification decryption key. Next, the decryption data for verification is decomposed into a program portion and a key portion by an inverse operation of the operation for obtaining the composite data.
【0037】次に、照合段階において、上記プログラム
部分は、検証すべき制御プログラムを表す照合用データ
と照合される。ここで、遊技機10のROM30に書き込ま
れた制御プログラムが真正で、かつ、CPU20が真正で
ある場合に限って、当該プログラム部分は、照合用デー
タと一致するはずである。すなわち、制御プログラムの
読み出しは、ROM30に書き込まれた状態のままでは行
われず、必ず暗号化されてから行われ、この検証用暗号
化段階の内容が非公開である場合、この検証用暗号化段
階の内容を知らない第三者が、上記プログラム部分が照
合用データと一致するような真正でない制御プログラム
と真正でないCPU20とを作成することが不可能だから
である。Next, in the collation stage, the program portion is collated with collation data representing a control program to be verified. Here, only when the control program written in the ROM 30 of the gaming machine 10 is genuine and the CPU 20 is genuine, the program portion should match the collation data. That is, the reading of the control program is not performed as it is in the state written in the ROM 30, but is always performed after encryption. If the contents of the encryption step for verification are not disclosed, the encryption step for verification is performed. This is because it is impossible for a third party who does not know the contents of the above to create a non-authentic control program and a non-authentic CPU 20 such that the above program portion matches the collation data.
【0038】また、読み出しの過程における送受信の間
に、不正を行おうとする者が、検証用暗号データ及び検
証用暗号鍵を入手することは可能であるが、これらから
検証用復号鍵を知ることは、非対称暗号系の場合、通常
極めて困難である。したがって、これらから制御プログ
ラムへの復号化は事実上不可能であるため、真正な制御
プログラムの解読を極めて困難なものとすることが可能
である。It is possible for a person who intends to perform fraud during transmission / reception in the reading process to obtain the verification encryption data and the verification encryption key. Is usually very difficult for asymmetric cryptosystems. Accordingly, since it is virtually impossible to decode them into a control program, it is possible to make it extremely difficult to decode a genuine control program.
【0039】更に、検証用暗号化段階によって正しく暗
号化された制御プログラムのみが、検証装置50によって
正しく復号化されるため、検証装置50によって制御プロ
グラムを検証することで、CPU20の真偽を検証するこ
とも可能となる。 (請求項5)また、本発明のうち、請求項5記載の発明
は、遊技の制御を行うCPU20と、遊技の制御プログラ
ムが記録されているROM30と、下記の検証装置50から
送信された検証用暗号鍵を受信する鍵受信手段40と、上
記ROM30に記録されている制御プログラムと上記検証
用暗号鍵とを合成した合成データとするとともに、同合
成データを、同検証用暗号鍵によって暗号化された検証
用暗号データとする検証用暗号化手段25と、上記検証用
暗号データを、下記の検証装置50へ送信する暗号送信手
段45とを有する遊技機10であって、検証用暗号鍵と検証
用復号鍵との対を生成する検証用鍵生成手段60と、上記
検証用暗号鍵を前記遊技機10の鍵受信手段40へ送信する
鍵送信手段70と、前記暗号送信手段45から送信された検
証用暗号データを受信する暗号受信手段75と、上記検証
用暗号データを、前記検証用復号鍵を用いて検証用復号
データとするとともに、同検証用復号データをプログラ
ム部分と鍵部分とに分解する検証用復号化手段80と、上
記プログラム部分を、所定の照合用データと照合する照
合手段90とを有する検証装置50を用いて、前記ROM30
に記録されている制御プログラムの真偽が検証可能であ
ることを特徴とする。Further, since only the control program correctly encrypted by the verification encryption stage is correctly decrypted by the verification device 50, the verification program is verified by the verification device 50 to verify the authenticity of the CPU 20. It is also possible to do. (Claim 5) Of the present invention, the invention according to claim 5 is characterized in that a CPU 20 for controlling a game, a ROM 30 in which a game control program is recorded, and a verification transmitted from a verification device 50 described below. Key receiving means 40 for receiving a cryptographic key for use, and synthetic data obtained by synthesizing the control program recorded in the ROM 30 with the cryptographic key for verification, and encrypting the composite data with the cryptographic key for verification. A gaming machine 10 having a verification encryption unit 25 for performing verification cryptographic data, and a cryptographic transmission unit 45 for transmitting the verification cryptographic data to a verification device 50 described below. Verification key generation means 60 for generating a pair with a verification decryption key, key transmission means 70 for transmitting the verification encryption key to the key reception means 40 of the gaming machine 10, and transmission from the encryption transmission means 45. Password for receiving encrypted verification data Signal receiving means 75 and the decryption data for verification 80 for converting the encrypted data for verification into decrypted data for verification using the decryption key for verification, and decomposing the decrypted data for verification into a program portion and a key portion. And a verification device 50 having verification means 90 for verifying the program portion against predetermined verification data.
The authenticity of the control program recorded in the program can be verified.
【0040】すなわち、本請求項記載の遊技機10は、請
求項4記載の遊技機の検証方法によって検証可能となっ
ている。「CPU」は、下記のROM30に書き込まれた
制御プログラムに従って、遊技機10の制御を司る。「R
OM」には、制御プログラムが書き込まれている。この
制御プログラムは、あらかじめ所定の方法で暗号化され
ていてもよい。That is, the gaming machine 10 according to the present invention can be verified by the gaming machine verification method according to the fourth aspect. The “CPU” controls the gaming machine 10 according to a control program written in the ROM 30 described below. "R
The control program is written in “OM”. This control program may be encrypted in advance by a predetermined method.
【0041】「鍵受信手段」とは、請求項4記載の遊技
機の検証方法における鍵送信段階において、後述の請求
項6記載の検証装置50の検証用鍵生成手段60により生成
され、送信された検証用暗号鍵の受信に係る手段であ
る。具体的には、入力ポート等の入力手段をいう。「検
証用暗号化手段」とは、請求項4記載の遊技機の検証方
法における検証用暗号化段階において、平文である制御
プログラムを、一旦上記鍵受信手段40が受信した検証用
暗号鍵と合成してから、同検証用暗号鍵を用いて検証用
暗号データとする手段をいう。この検証用暗号化手段25
は、CPU20が実行するソフトウェアとして実現されて
もよいが、CPU20上でハードウェアとして構成されて
いることがより望ましい。The "key receiving means" is generated and transmitted by the verification key generation means 60 of the verification device 50 described later in the key transmission step in the game machine verification method according to claim 4. Associated with the received verification encryption key. Specifically, it refers to input means such as an input port. The “encryption means for verification” means that the control program, which is a plaintext, is combined with the encryption key for verification once received by the key receiving means 40 in the encryption step for verification in the game machine verification method according to claim 4. After that, it refers to means for converting the data into verification encryption data using the verification encryption key. This verification encryption means 25
May be realized as software executed by the CPU 20, but is more preferably configured as hardware on the CPU 20.
【0042】「暗号送信手段」とは、請求項4記載の遊
技機の検証方法における暗号送信段階において、上記検
証用暗号データを請求項6記載の検証装置50へ送信する
ための、出力ポート等の出力手段をいう。上記により、
本請求項記載の遊技機10は、制御プログラムの読み出し
の際に、同制御プログラムを暗号化して出力するため、
第三者が同制御プログラムの解読をすることは極めて困
難となっている。また、制御プログラムを解析するため
には、検証用暗号化手段25を解析する必要があるため、
請求項6記載の検証装置50を用いないと、制御プログラ
ムの解析は極めて困難である。The "encryption transmission means" means an output port or the like for transmitting the verification encryption data to the verification device 50 in the encryption transmission step in the game machine verification method according to the present invention. Means output means. By the above,
The gaming machine 10 according to the present invention, when reading out the control program, to encrypt and output the control program,
It is extremely difficult for a third party to decipher the control program. In addition, in order to analyze the control program, it is necessary to analyze the verification encryption unit 25.
Without the verification device 50, it is extremely difficult to analyze the control program.
【0043】(請求項6)更に、本発明のうち、請求項
6記載の発明は、検証用暗号鍵と検証用復号鍵との対を
生成する検証用鍵生成手段60と、上記検証用暗号鍵を下
記の遊技機10へ送信する鍵送信手段70と、下記の遊技機
10から送信された検証用暗号データを受信する暗号受信
手段75と、上記検証用暗号データを、前記検証用復号鍵
を用いて検証用復号データとするとともに、同検証用復
号データをプログラム部分と鍵部分とに分解する検証用
復号化手段80と、上記プログラム部分を、所定の照合用
データと照合する照合手段90とを有する検証装置50であ
って、遊技の制御を行うCPU20と、遊技の制御プログ
ラムが記録されているROM30と、前記鍵送信手段70か
ら送信された検証用暗号鍵を受信する鍵受信手段40と、
上記ROM30に記録されている制御プログラムと上記検
証用暗号鍵とを合成した合成データとするとともに、同
合成データを、同検証用暗号鍵によって暗号化された検
証用暗号データとする検証用暗号化手段25と、上記検証
用暗号データを、前記暗号受信手段75へ送信する暗号送
信手段45とを有する遊技機10における、上記ROM30に
記録されている制御プログラムの真偽を検証可能なこと
を特徴とする。(Claim 6) In the present invention, the invention according to claim 6 further comprises a verification key generating means 60 for generating a pair of a verification encryption key and a verification decryption key; Key transmitting means 70 for transmitting a key to the following gaming machine 10;
The cryptographic receiving means 75 for receiving the cryptographic data for verification transmitted from 10, and the cryptographic data for verification, as the decrypted data for verification using the decryption key for verification, and the decrypted data for verification as a program part. A verification device 50 having a decryption means for verification 80 for decomposing into a key part, and a collation means 90 for collating the program part with predetermined collation data, wherein a CPU 20 for controlling a game; ROM 30 in which a control program is recorded, and key receiving means 40 for receiving the verification encryption key transmitted from the key transmitting means 70,
Verification encryption, in which the control data recorded in the ROM 30 and the verification encryption key are combined to generate composite data, and the composite data is used as the verification encryption data encrypted with the verification encryption key. In the gaming machine 10 having the means 25 and the encryption transmitting means 45 for transmitting the verification encryption data to the encryption receiving means 75, the authenticity of the control program recorded in the ROM 30 can be verified. And
【0044】すなわち、本請求項記載の検証装置50は、
請求項4記載の遊技機の検証方法で用いる検証装置50と
なっている。「検証用鍵生成手段」とは、請求項4記載
の遊技機の検証方法における検証用鍵生成段階におい
て、検証用暗号鍵と検証用復号鍵との対を生成する手段
をいう。That is, the verification device 50 according to the present invention
A verification device 50 used in the game machine verification method according to claim 4 is provided. The “verification key generation means” refers to means for generating a pair of a verification encryption key and a verification decryption key in the verification key generation step in the game machine verification method according to claim 4.
【0045】検証用暗号鍵と検証用復号鍵とは、非対称
暗号系又は対称暗号系のいずれで用いられるものでも、
また、非対称暗号系と対象暗号系とを組み合わせた暗号
系で用いられるものでもよい。ここで、これらの鍵が非
対称暗号系で用いられるものである場合には、非対称暗
号系における鍵生成のルールに従って生成される。この
ルールは、どの暗号系を採用するかによって異なるが、
いずれの暗号系においても、暗号鍵によって暗号化され
た平文は、復号鍵によって復号化されてもとの平文に戻
るという特徴を有する。また、非対称暗号系において生
成された暗号鍵及び復号鍵は、どちらか一方のみからも
う一方を求めることは通常極めて困難であるという特徴
も有する。The verification encryption key and the verification decryption key may be used in either an asymmetric encryption system or a symmetric encryption system.
Further, an encryption system that is used in a combination of an asymmetric encryption system and a target encryption system may be used. Here, when these keys are used in the asymmetric encryption system, they are generated in accordance with the key generation rules in the asymmetric encryption system. This rule depends on which encryption system is used,
In any of the encryption systems, the plaintext encrypted with the encryption key has the characteristic of being restored to the original plaintext after being decrypted with the decryption key. In addition, it is usually very difficult to obtain the other from only one of the encryption key and the decryption key generated in the asymmetric encryption system.
【0046】また、対称暗号系を採用する場合には、上
記検証用暗号鍵及び検証用復号鍵は、同一のものとな
る。「鍵送信手段」とは、請求項4記載の遊技機の検証
方法における鍵送信段階において、上記検証用暗号鍵
を、請求項5記載の遊技機10へ送信するための、出力ポ
ート等の出力手段をいう。When a symmetric encryption system is adopted, the above-mentioned verification encryption key and verification decryption key are the same. The "key transmitting means" means an output port or the like for transmitting the verification encryption key to the gaming machine 10 in the key transmitting step in the gaming machine verification method according to claim 4. Means.
【0047】「暗号受信手段」とは、請求項4記載の遊
技機の検証方法における暗号送信段階において、請求項
5記載の遊技機10の検証用暗号化手段25により暗号化さ
れ、送信された検証用暗号データを受信するための、入
力ポート等の入力手段をいう。「検証用復号化手段」と
は、請求項4記載の遊技機の検証方法における検証用復
号化段階において、暗号文である上記検証用暗号データ
を、検証用鍵生成手段60が生成した検証用復号鍵を用い
て、検証用復号データとしてから、所定の演算により同
検証用復号データをプログラム部分と鍵部分とに分ける
手段をいう。[0047] The "encryption receiving means" is encrypted and transmitted by the verification encrypting means 25 of the gaming machine 10 in the encryption transmitting step in the gaming machine verification method according to claim 4. Input means, such as an input port, for receiving verification encryption data. The "verifying decryption means" refers to the verification decryption data generated by the verification key generation means 60 in the verification decryption step of the gaming machine verification method according to claim 4. A means for dividing the decryption data for verification into a program portion and a key portion by a predetermined operation after using the decryption key as the decryption data for verification.
【0048】「照合手段」とは、請求項4記載の遊技機
の検証方法における照合段階において、上記プログラム
部分を、所定の照合用データと比較照合する手段をい
う。この照合用データは、本来遊技機10のROM30に書
き込まれているべき制御プログラムを表すデータとなっ
ている。上記により、本請求項記載の検証装置50には、
制御プログラムの読み込みの際に、暗号化された同制御
プログラムが入力されるため、第三者が同制御プログラ
ムの解読をすることは極めて困難となっている。また、
制御プログラムを解析するためには、検証用暗号化手段
25を解析する必要があるため、本請求項に係る検証装置
50を用いないと、請求項5に係る遊技機10の制御プログ
ラムの解析は極めて困難である。The "collating means" refers to means for comparing and collating the program portion with predetermined collation data in the collation stage in the gaming machine verification method according to the fourth aspect. This collation data is data representing a control program that should be originally written in the ROM 30 of the gaming machine 10. By the above, the verification device 50 according to the present claim,
Since the encrypted control program is input when the control program is read, it is extremely difficult for a third party to decrypt the control program. Also,
In order to analyze the control program, verification encryption means
Since it is necessary to analyze 25, the verification device according to the present claim
Without 50, it is extremely difficult to analyze the control program for the gaming machine 10 according to the fifth aspect.
【0049】(請求項7)本発明のうち、請求項7記載
の発明に係る遊技機の検証方法は、検証装置50内で、検
証用暗号鍵と検証用復号鍵との対を生成する検証用鍵生
成段階と、上記検証用暗号鍵を、同検証装置50から遊技
機10に送信する鍵送信段階と、同遊技機10内のCPU20
により、同遊技機10のROM30に記録されている制御プ
ログラムと同検証用暗号鍵とを合成して合成データとす
るとともに、同合成データを、上記検証装置50から受信
した上記検証用暗号鍵によって暗号化された検証用暗号
データとする検証用暗号化段階と、上記検証用暗号デー
タを、同遊技機10から前記検証装置50に送信する暗号送
信段階と、同検証装置50内で、上記遊技機10から受信し
た上記検証用暗号データを、前記検証用復号鍵を用いて
検証用復号データとするとともに、同検証用復号データ
をプログラム部分と鍵部分とに分解する検証用復号化段
階と、上記鍵部分を、検証用暗号鍵と照合する照合段階
とを含むことを特徴とする。(Claim 7) A game machine verification method according to a seventh aspect of the present invention is a verification method for generating a pair of a verification encryption key and a verification decryption key in a verification device 50. Key generating step, a key transmitting step of transmitting the verification encryption key from the verification device 50 to the gaming machine 10, and a CPU 20 in the gaming machine 10.
Thereby, the control program recorded in the ROM 30 of the gaming machine 10 and the verification encryption key are combined to form synthesized data, and the synthesized data is generated by the verification encryption key received from the verification device 50. A verification encrypting step for making encrypted verification encryption data; an encryption transmission step for transmitting the verification encryption data from the gaming machine 10 to the verification device 50; The verification encryption data received from the device 10 is used as the verification decryption data using the verification decryption key, and the verification decryption step of decomposing the verification decryption data into a program part and a key part. A collating step of collating the key portion with a verification encryption key.
【0050】「遊技機」とは、ROM30に書き込まれた
制御プログラムに従ってCPU20がその遊技を制御する
装置をいい、具体的には、パチンコ遊技機や、スロット
マシン等をいう。「検証装置」とは、上記CPU20が真
正であるか否かを検証するための装置をいう。The "gaming machine" refers to a device in which the CPU 20 controls the game in accordance with a control program written in the ROM 30, and specifically refers to a pachinko gaming machine, a slot machine, and the like. The “verification device” is a device for verifying whether or not the CPU 20 is authentic.
【0051】本請求項に係る遊技機の検証方法は、以下
のように実行される。まず、検証用鍵生成段階におい
て、検証装置50内で検証用暗号鍵と検証用復号鍵との対
が生成される。「検証用暗号鍵」と「検証用復号鍵」と
は、非対称暗号系又は対称暗号系のいずれで用いられる
ものであっても、また、非対称暗号系と対象暗号系とを
組み合わせた暗号系で用いられるものでもよい。The game machine verification method according to the present invention is executed as follows. First, in the verification key generation stage, a pair of a verification encryption key and a verification decryption key is generated in the verification device 50. The “verification encryption key” and “verification decryption key” may be used in either an asymmetric encryption system or a symmetric encryption system, or may be an encryption system combining an asymmetric encryption system and a target encryption system. What is used may be used.
【0052】非対称暗号系としては、RSA暗号方式、
エルガマル方式、楕円曲線暗号方式等、様々な方式が採
用可能である。いずれの方式においても、平文を暗号鍵
を用いた演算によって暗号化するとともに、この暗号文
を復号鍵を用いた演算によって復号化することで、平文
が得られることとなっている。ここで、暗号鍵と復号鍵
とが異なっていることが、「非対称」とされる所以であ
る。また、暗号鍵は、通常公開されるものであるが、こ
の暗号鍵から復号鍵を求めることは、通常極めて困難と
なっている。As the asymmetric cryptosystem, RSA cryptosystem,
Various schemes such as an El Gamal scheme and an elliptic curve cryptosystem can be adopted. In any of the methods, plaintext is obtained by encrypting a plaintext by an operation using an encryption key and decrypting the ciphertext by an operation using a decryption key. Here, the difference between the encryption key and the decryption key is the reason why the key is regarded as “asymmetric”. Further, the encryption key is usually made public, but it is usually extremely difficult to obtain a decryption key from the encryption key.
【0053】一方、対称暗号系においては、上記「検証
用暗号鍵」及び「検証用復号鍵」は同一のものとなる。
次に、鍵送信段階において、上記検証用暗号鍵が、遊技
機10に送信される。なお、検証用復号鍵は、後の復号化
の際まで検証装置50内に保存される。そして、検証用暗
号化段階において、遊技機10内のCPU20により検証装
置50から送信された検証用暗号鍵を用いて、制御プログ
ラムが暗号化される。具体的には、制御プログラムを所
定の規則に従って数値化した後に、同数値は、上記検証
用暗号鍵との所定の演算により、合成データとされる。
次いで、この合成データを上記検証用暗号鍵を用いて演
算することにより、検証用暗号データが得られる。On the other hand, in the symmetric encryption system, the above “verification encryption key” and “verification decryption key” are the same.
Next, in the key transmission stage, the verification encryption key is transmitted to the gaming machine 10. Note that the verification decryption key is stored in the verification device 50 until later decryption. Then, in the verification encryption stage, the control program is encrypted by the CPU 20 in the gaming machine 10 using the verification encryption key transmitted from the verification device 50. Specifically, after the control program is digitized according to a predetermined rule, the numerical value is converted into synthetic data by a predetermined operation with the verification encryption key.
Next, the composite data is operated using the verification encryption key to obtain the verification encryption data.
【0054】次に、暗号送信段階において、上記検証用
暗号データが、検証装置50に送信される。すなわち、上
記制御プログラムの検証装置50による読み出しは、必ず
検証用暗号データによって行われることとなっている。
そして、検証用復号化段階において、先に検証用暗号鍵
との対として生成された検証用復号鍵を用いて、読み出
された検証用暗号データが復号化される。具体的には、
検証用暗号データを上記検証用復号鍵を用いて演算する
ことにより、検証用復号データが得られる。次いで、こ
の検証用復号データは、上記合成データを得る際の演算
の逆演算により、プログラム部分と鍵部分とに分解され
る。Next, in the encryption transmission stage, the encryption data for verification is transmitted to the verification device 50. That is, the reading of the control program by the verification device 50 is always performed by the verification encryption data.
Then, in the decryption step for verification, the read encryption data for verification is decrypted using the decryption key for verification generated previously as a pair with the encryption key for verification. In particular,
The verification decryption data is obtained by calculating the verification encryption data using the verification decryption key. Next, the decryption data for verification is decomposed into a program portion and a key portion by an inverse operation of the operation for obtaining the composite data.
【0055】次に、照合段階において、上記鍵部分は、
先に生成された検証用暗号鍵と照合される。ここで、遊
技機10のCPU20が真正のものであれば、当該鍵部分
は、検証用暗号鍵と一致するはずである。また、当該鍵
部分が検証用暗号鍵と一致しない場合は、当該CPU20
は真正でないこととなる。すなわち、制御プログラムの
読み出しは、ROM30に書き込まれた状態のままでは行
われず、必ず暗号化されてから行われ、この検証用暗号
化段階の内容が非公開である場合、この検証用暗号化段
階の内容を知らない第三者が、上記鍵部分が検証用暗号
鍵と一致するような真正でないCPU20を作成すること
が不可能だからである。Next, in the collation stage, the key portion is:
It is checked against the previously generated verification encryption key. Here, if the CPU 20 of the gaming machine 10 is genuine, the key portion should match the verification encryption key. If the key portion does not match the verification encryption key, the CPU 20
Is not authentic. That is, the reading of the control program is not performed as it is in the state written in the ROM 30, but is always performed after encryption. If the contents of the encryption step for verification are not disclosed, the encryption step for verification is performed. This is because it is impossible for a third party who does not know the contents of the above to create the CPU 20 which is not genuine such that the key portion matches the verification encryption key.
【0056】また、読み出しの過程における送受信の間
に、不正を行おうとする者が、検証用暗号データ及び検
証用暗号鍵を入手することは可能であるが、これらから
検証用復号鍵を知ることは、非対称暗号系の場合、通常
極めて困難である。したがって、これらから制御プログ
ラムへの復号化は事実上不可能であるため、真正な制御
プログラムの解読を極めて困難なものとすることが可能
である。It is possible for a person who intends to cheat during transmission / reception in the reading process to obtain the verification encryption data and the verification encryption key. Is usually very difficult for asymmetric cryptosystems. Accordingly, since it is virtually impossible to decode them into a control program, it is possible to make it extremely difficult to decode a genuine control program.
【0057】加えて、検証用復号化段階で検証用暗号鍵
が正しく復号化されるということは、同検証用復号鍵
は、正規の検証用暗号化段階を経て暗号化されているこ
とを意味するため、検証用暗号鍵を照合することによ
り、CPU20が真正であるかどうかを知ることも可能と
なっている。 (請求項8)また、本発明のうち、請求項8記載の発明
は、遊技の制御を行うCPU20と、遊技の制御プログラ
ムが記録されているROM30と、下記の検証装置50から
送信された検証用暗号鍵を受信する鍵受信手段40と、上
記ROM30に記録されている制御プログラムと上記検証
用暗号鍵とを合成した合成データとするとともに、同合
成データを、同検証用暗号鍵によって暗号化された検証
用暗号データとする検証用暗号化手段25と、上記検証用
暗号データを、下記の検証装置50へ送信する暗号送信手
段45とを有する遊技機10であって、検証用暗号鍵と検証
用復号鍵との対を生成する検証用鍵生成手段60と、上記
検証用暗号鍵を前記遊技機10の鍵受信手段40へ送信する
鍵送信手段70と、前記暗号送信手段45から送信された検
証用暗号データを受信する暗号受信手段75と、上記検証
用暗号データを、前記検証用復号鍵を用いて検証用復号
データとするとともに、同検証用復号データをプログラ
ム部分と鍵部分とに分解する検証用復号化手段80と、上
記鍵部分を、検証用暗号鍵と照合する照合手段90とを有
する検証装置50を用いて、前記CPU20の真偽が検証可
能であることを特徴とする。In addition, the fact that the verification encryption key is correctly decrypted in the verification decryption step means that the verification decryption key has been encrypted through the normal verification encryption step. Therefore, it is possible to know whether or not the CPU 20 is authentic by checking the verification encryption key. (Claim 8) Of the present invention, the invention according to claim 8 is characterized in that a CPU 20 for controlling a game, a ROM 30 in which a game control program is recorded, and a verification transmitted from a verification device 50 described below. Key receiving means 40 for receiving a cryptographic key for use, and synthetic data obtained by synthesizing the control program recorded in the ROM 30 with the cryptographic key for verification, and encrypting the composite data with the cryptographic key for verification. A gaming machine 10 having a verification encryption unit 25 for performing verification cryptographic data, and a cryptographic transmission unit 45 for transmitting the verification cryptographic data to a verification device 50 described below. Verification key generation means 60 for generating a pair with a verification decryption key, key transmission means 70 for transmitting the verification encryption key to the key reception means 40 of the gaming machine 10, and transmission from the encryption transmission means 45. Password for receiving encrypted verification data Signal receiving means 75 and the decryption data for verification 80 for converting the encrypted data for verification into decrypted data for verification using the decryption key for verification, and decomposing the decrypted data for verification into a program portion and a key portion. The authenticity of the CPU 20 can be verified using a verification device 50 having verification means 90 for verifying the key portion with a verification encryption key.
【0058】すなわち、本請求項記載の遊技機10は、請
求項7記載の遊技機の検証方法によって検証可能となっ
ている。「CPU」は、下記のROM30に書き込まれた
制御プログラムに従って、遊技機10の制御を司る。「R
OM」には、制御プログラムが書き込まれている。この
制御プログラムは、あらかじめ所定の方法で暗号化され
ていてもよい。That is, the gaming machine 10 according to the present invention can be verified by the gaming machine verification method according to the seventh aspect. The “CPU” controls the gaming machine 10 according to a control program written in the ROM 30 described below. "R
The control program is written in “OM”. This control program may be encrypted in advance by a predetermined method.
【0059】「鍵受信手段」とは、請求項7記載の遊技
機の検証方法における鍵送信段階において、後述の請求
項9記載の検証装置50の検証用鍵生成手段60により生成
され、送信された検証用暗号鍵の受信に係る手段であ
る。具体的には、入力ポート等の入力手段をいう。「検
証用暗号化手段」とは、請求項7記載の遊技機の検証方
法における検証用暗号化段階において、平文である制御
プログラムを、一旦上記鍵受信手段40が受信した検証用
暗号鍵と合成してから、同検証用暗号鍵を用いて検証用
暗号データとする手段をいう。この検証用暗号化手段25
は、CPU20が実行するソフトウェアとして実現されて
もよいが、CPU20上でハードウェアとして構成されて
いることがより望ましい。The "key receiving means" is generated and transmitted by the verification key generation means 60 of the verification device 50 described later in the key transmission step in the game machine verification method according to claim 7. Associated with the received verification encryption key. Specifically, it refers to input means such as an input port. The "verifying encryption means" means that the control program, which is a plaintext, is combined with the verification encryption key once received by the key receiving means 40 in the verifying encryption step in the gaming machine verification method according to claim 7. After that, it refers to means for converting the data into verification encryption data using the verification encryption key. This verification encryption means 25
May be realized as software executed by the CPU 20, but is more preferably configured as hardware on the CPU 20.
【0060】「暗号送信手段」とは、請求項7記載の遊
技機の検証方法における暗号送信段階において、上記検
証用暗号データを請求項9記載の検証装置50へ送信する
ための、出力ポート等の出力手段をいう。上記により、
本請求項記載の遊技機10は、制御プログラムの読み出し
の際に、同制御プログラムを暗号化して出力するため、
第三者が同制御プログラムの解読をすることは極めて困
難となっている。また、制御プログラムを解析するため
には、検証用暗号化手段25を解析する必要があるため、
請求項9記載の検証装置50を用いないと、制御プログラ
ムの解析は極めて困難である。The "encryption transmitting means" means an output port or the like for transmitting the verification cryptographic data to the verification device 50 in the cryptographic transmission step in the game machine verification method according to the present invention. Means output means. By the above,
The gaming machine 10 according to the present invention, when reading out the control program, to encrypt and output the control program,
It is extremely difficult for a third party to decipher the control program. In addition, in order to analyze the control program, it is necessary to analyze the verification encryption unit 25.
Without the verification device 50, it is extremely difficult to analyze the control program.
【0061】(請求項9)更に、本発明のうち、請求項
9記載の発明は、検証用暗号鍵と検証用復号鍵との対を
生成する検証用鍵生成手段60と、上記検証用暗号鍵を下
記の遊技機10へ送信する鍵送信手段70と、下記の遊技機
10から送信された検証用暗号データを受信する暗号受信
手段75と、上記検証用暗号データを、前記検証用復号鍵
を用いて検証用復号データとするとともに、同検証用復
号データをプログラム部分と鍵部分とに分解する検証用
復号化手段80と、上記鍵部分を、検証用暗号鍵と照合す
る照合手段90とを有する検証装置50であって、遊技の制
御を行うCPU20と、遊技の制御プログラムが記録され
ているROM30と、前記鍵送信手段70から送信された検
証用暗号鍵を受信する鍵受信手段40と、上記ROM30に
記録されている制御プログラムと上記検証用暗号鍵とを
合成した合成データとするとともに、同合成データを、
同検証用暗号鍵によって暗号化された検証用暗号データ
とする検証用暗号化手段25と、上記検証用暗号データ
を、前記暗号受信手段75へ送信する暗号送信手段45とを
有する遊技機10における、上記CPU20の真偽を検証可
能なことを特徴とする。(Claim 9) In the present invention, the invention according to claim 9 includes a verification key generating means 60 for generating a pair of a verification encryption key and a verification decryption key; Key transmitting means 70 for transmitting a key to the following gaming machine 10;
The cryptographic receiving means 75 for receiving the cryptographic data for verification transmitted from 10, and the cryptographic data for verification, as the decrypted data for verification using the decryption key for verification, and the decrypted data for verification as a program part. A verification device 50 having a verification decryption unit 80 for decomposing the key portion and a verification unit 90 for verifying the key portion with a verification encryption key, wherein the CPU 20 performs game control, and the game control The ROM 30 in which the program is recorded, the key receiving means 40 for receiving the verification encryption key transmitted from the key transmission means 70, and the control program and the verification encryption key recorded in the ROM 30 are synthesized. In addition to the synthesized data, the synthesized data is
The gaming machine 10 includes: a verification encryption unit 25 that converts the verification encryption data into the verification encryption data encrypted by the verification encryption key; and an encryption transmission unit 45 that transmits the verification encryption data to the encryption reception unit 75. The authenticity of the CPU 20 can be verified.
【0062】すなわち、本請求項記載の検証装置50は、
請求項7記載の遊技機の検証方法で用いる検証装置50と
なっている。「検証用鍵生成手段」とは、請求項7記載
の遊技機の検証方法における検証用鍵生成段階におい
て、検証用暗号鍵と検証用復号鍵との対を生成する手段
をいう。That is, the verification device 50 according to the present invention
A verification device 50 used in the game machine verification method according to claim 7 is provided. The "verification key generation means" refers to means for generating a pair of a verification encryption key and a verification decryption key in the verification key generation step in the game machine verification method.
【0063】検証用暗号鍵と検証用復号鍵とは、非対称
暗号系又は対称暗号系のいずれで用いられるものでも、
また、非対称暗号系と対象暗号系とを組み合わせた暗号
系で用いられるものでもよい。ここで、これらの鍵が非
対称暗号系で用いられるものである場合には、非対称暗
号系における鍵生成のルールに従って生成される。この
ルールは、どの暗号系を採用するかによって異なるが、
いずれの暗号系においても、暗号鍵によって暗号化され
た平文は、復号鍵によって復号化されてもとの平文に戻
るという特徴を有する。また、非対称暗号系において生
成された暗号鍵及び復号鍵は、どちらか一方のみからも
う一方を求めることは通常極めて困難であるという特徴
も有する。The verification encryption key and the verification decryption key may be used in either an asymmetric encryption system or a symmetric encryption system.
Further, an encryption system that is used in a combination of an asymmetric encryption system and a target encryption system may be used. Here, when these keys are used in the asymmetric encryption system, they are generated in accordance with the key generation rules in the asymmetric encryption system. This rule depends on which encryption system is used,
In any of the encryption systems, the plaintext encrypted with the encryption key has the characteristic of being restored to the original plaintext after being decrypted with the decryption key. In addition, it is usually very difficult to obtain the other from only one of the encryption key and the decryption key generated in the asymmetric encryption system.
【0064】また、対称暗号系を採用する場合には、上
記検証用暗号鍵及び検証用復号鍵は、同一のものとな
る。「鍵送信手段」とは、請求項7記載の遊技機の検証
方法における鍵送信段階において、上記検証用暗号鍵
を、請求項8記載の遊技機10へ送信するための、出力ポ
ート等の出力手段をいう。When a symmetric encryption system is adopted, the above-mentioned verification encryption key and verification decryption key are the same. The "key transmitting means" refers to an output of an output port or the like for transmitting the verification encryption key to the gaming machine 10 in the key transmitting step in the gaming machine verification method according to claim 7. Means.
【0065】「暗号受信手段」とは、請求項7記載の遊
技機の検証方法における暗号送信段階において、請求項
8記載の遊技機10の検証用暗号化手段25により暗号化さ
れ、送信された検証用暗号データを受信するための、入
力ポート等の入力手段をいう。「検証用復号化手段」と
は、請求項7記載の遊技機の検証方法における検証用復
号化段階において、暗号文である上記検証用暗号データ
を、検証用鍵生成手段60が生成した検証用復号鍵を用い
て、検証用復号データとしてから、所定の演算により同
検証用復号データをプログラム部分と鍵部分とに分ける
手段をいう。The "encryption receiving means" is the encryption and transmission step performed by the verification encrypting means 25 of the gaming machine 10 in the encryption transmitting step in the gaming machine verification method according to claim 7. Input means, such as an input port, for receiving verification encryption data. The "verifying decryption means" refers to the verification encryption data generated by the verification key generation means 60 in the verification decryption step of the gaming machine verification method according to claim 7. A means for dividing the decryption data for verification into a program portion and a key portion by a predetermined operation after using the decryption key as the decryption data for verification.
【0066】「照合手段」とは、請求項7記載の遊技機
の検証方法における照合段階において、上記検証用復号
化手段80によって得られた鍵部分を、検証用暗号鍵と比
較照合する手段をいう。上記により、本請求項記載の検
証装置50には、制御プログラムの読み込みの際に、暗号
化された同制御プログラムが入力されるため、第三者が
同制御プログラムの解読をすることは極めて困難となっ
ている。また、本請求項記載の検証装置50により検証用
暗号鍵を比較することで、請求項8に係る遊技機10のC
PU20が真正であるかどうかを検証することができる。The "verification means" is means for comparing and verifying the key portion obtained by the verification decryption means 80 with the verification encryption key in the verification step of the gaming machine verification method according to claim 7. Say. As described above, when the control program is read, the encrypted control program is input to the verification device 50 according to the present invention, so that it is extremely difficult for a third party to decrypt the control program. It has become. Further, by comparing the verification encryption key with the verification device 50 according to the present invention, the C
It can be verified whether the PU 20 is authentic.
【0067】(請求項10)本発明のうち、請求項10
記載の発明に係る遊技機の検証方法は、検証装置50内
で、検証用暗号鍵と検証用復号鍵との対を生成する検証
用鍵生成段階と、上記検証用暗号鍵を、同検証装置50か
ら遊技機10に送信する鍵送信段階と、同遊技機10内のC
PU20により、合成用乱数を生成し、同遊技機10のRO
M30に記録されている制御プログラムと同合成用乱数と
を合成して合成データとするとともに、同合成データを
上記検証装置50から受信した上記検証用暗号鍵によって
暗号化された検証用暗号データとする検証用暗号化段階
と、上記検証用暗号データを、同遊技機10から前記検証
装置50に送信する暗号送信段階と、同検証装置50内で、
上記遊技機10から受信した上記検証用暗号データを、前
記検証用復号鍵を用いて検証用復号データとするととも
に、同検証用復号データをプログラム部分と乱数部分と
に分解する検証用復号化段階と、上記プログラム部分
を、所定の照合用データと照合する照合段階とを含むこ
とを特徴とする。(Claim 10) Of the present invention, claim 10
The verification method of a gaming machine according to the invention described above includes a verification key generation step of generating a pair of a verification encryption key and a verification decryption key in the verification device 50; A key transmission step of transmitting from 50 to the gaming machine 10;
A random number for synthesis is generated by the PU 20 and the RO of the gaming machine 10 is generated.
The control program recorded in M30 and the random number for synthesizing are synthesized to generate synthesized data, and the synthesized data is combined with cryptographic data for verification encrypted by the verification cryptographic key received from the verification device 50. Verification encryption step to perform, the verification encryption data, an encryption transmission step of transmitting from the gaming machine 10 to the verification device 50, in the verification device 50,
The verification encryption data received from the gaming machine 10 is used as the verification decryption data using the verification decryption key, and the verification decryption step of decomposing the verification decryption data into a program part and a random number part. And a collation step of collating the program portion with predetermined collation data.
【0068】「遊技機」とは、ROM30に書き込まれた
制御プログラムに従ってCPU20がその遊技を制御する
装置をいい、具体的には、パチンコ遊技機や、スロット
マシン等をいう。「検証装置」とは、制御プログラム及
びCPU20のうちの一方又は両方が真正であるか否かを
検証するための装置をいう。具体的には、上記ROM30
から制御プログラムを読み出す装置をいう。The "game machine" refers to a device in which the CPU 20 controls the game in accordance with a control program written in the ROM 30, and specifically, a pachinko game machine, a slot machine, and the like. The “verification device” is a device for verifying whether one or both of the control program and the CPU 20 are genuine. Specifically, the ROM 30
A device that reads a control program from a device.
【0069】本請求項に係る遊技機の検証方法は、以下
のように実行される。まず、検証用鍵生成段階におい
て、検証装置50内で検証用暗号鍵と検証用復号鍵との対
が生成される。「検証用暗号鍵」と「検証用復号鍵」と
は、非対称暗号系又は対称暗号系のいずれで用いられる
ものであってもよい。The game machine verification method according to the present invention is executed as follows. First, in the verification key generation stage, a pair of a verification encryption key and a verification decryption key is generated in the verification device 50. The “verification encryption key” and the “verification decryption key” may be used in either an asymmetric encryption system or a symmetric encryption system.
【0070】非対称暗号系としては、RSA暗号方式、
エルガマル方式、楕円曲線暗号方式等、様々な方式が採
用可能である。いずれの方式においても、平文を暗号鍵
を用いた演算によって暗号化するとともに、この暗号文
を復号鍵を用いた演算によって復号化することで、平文
が得られることとなっている。ここで、暗号鍵と復号鍵
とが異なっていることが、「非対称」とされる所以であ
る。また、暗号鍵は、通常公開されるものであるが、こ
の暗号鍵から復号鍵を求めることは、通常極めて困難と
なっている。As the asymmetric cryptosystem, RSA cryptosystem,
Various schemes such as an El Gamal scheme and an elliptic curve cryptosystem can be adopted. In any of the methods, plaintext is obtained by encrypting a plaintext by an operation using an encryption key and decrypting the ciphertext by an operation using a decryption key. Here, the difference between the encryption key and the decryption key is the reason why the key is regarded as “asymmetric”. Further, the encryption key is usually made public, but it is usually extremely difficult to obtain a decryption key from the encryption key.
【0071】一方、対称暗号系においては、上記「検証
用暗号鍵」及び「検証用復号鍵」は同一のものとなる。
次に、鍵送信段階において、上記検証用暗号鍵が、遊技
機10に送信される。なお、検証用復号鍵は、後の復号化
の際まで検証装置50内に保存される。そして、検証用暗
号化段階において、遊技機10内のCPU20により検証装
置50から送信された検証用暗号鍵を用いて、制御プログ
ラムが暗号化される。具体的には、まず、合成用乱数を
生成させ、制御プログラムを所定の規則に従って数値化
した後に、同数値は、同合成用乱数との所定の演算によ
り、合成データとされる。次いで、この合成データを上
記検証用暗号鍵を用いて演算することにより、検証用暗
号データが得られる。ここで、検証のたびに異なる合成
用乱数と合成されることにより、同じ制御プログラムか
ら得られる合成データは検証のたびに異なることとなる
ため、検証用暗号データも検証のたびに異なるものとな
る。したがって、暗号系の対解読性能が極めて高いもの
となっている。On the other hand, in the symmetric encryption system, the above “verification encryption key” and “verification decryption key” are the same.
Next, in the key transmission stage, the verification encryption key is transmitted to the gaming machine 10. Note that the verification decryption key is stored in the verification device 50 until later decryption. Then, in the verification encryption stage, the control program is encrypted by the CPU 20 in the gaming machine 10 using the verification encryption key transmitted from the verification device 50. More specifically, first, a random number for synthesis is generated, and the control program is digitized according to a predetermined rule. Then, the numerical value is converted into synthesized data by a predetermined operation with the random number for synthesis. Next, the composite data is operated using the verification encryption key to obtain the verification encryption data. Here, since the synthesized data obtained from the same control program is different at each verification by being synthesized with a different random number for synthesis at each verification, the cryptographic data for verification is also different at each verification. . Therefore, the decryption performance of the encryption system is extremely high.
【0072】次に、暗号送信段階において、上記検証用
暗号データが、検証装置50に送信される。すなわち、上
記制御プログラムの検証装置50による読み出しは、必ず
検証用暗号データによって行われることとなっている。
そして、検証用復号化段階において、先に検証用暗号鍵
との対として生成された検証用復号鍵を用いて、読み出
された検証用暗号データが復号化される。具体的には、
検証用暗号データを上記検証用復号鍵を用いて演算する
ことにより、検証用復号データが得られる。次いで、こ
の検証用復号データは、上記合成データを得る際の演算
の逆演算により、プログラム部分と乱数部分とに分解さ
れる。Next, in the encryption transmission step, the verification encryption data is transmitted to the verification device 50. That is, the reading of the control program by the verification device 50 is always performed by the verification encryption data.
Then, in the decryption step for verification, the read encryption data for verification is decrypted using the decryption key for verification generated previously as a pair with the encryption key for verification. In particular,
The verification decryption data is obtained by calculating the verification encryption data using the verification decryption key. Next, the decryption data for verification is decomposed into a program part and a random number part by an inverse operation of the operation for obtaining the composite data.
【0073】次に、照合段階において、上記プログラム
部分は、検証すべき制御プログラムを表す照合用データ
と照合される。ここで、遊技機10のROM30に書き込ま
れた制御プログラムが真正で、かつ、CPU20が真正で
ある場合に限って、当該プログラム部分は、照合用デー
タと一致するはずである。また、当該プログラム部分が
照合用データと一致しない場合は、当該制御プログラム
又はCPU20が真正でないこととなる。Next, in the collation stage, the program portion is collated with collation data representing a control program to be verified. Here, only when the control program written in the ROM 30 of the gaming machine 10 is genuine and the CPU 20 is genuine, the program portion should match the collation data. If the program portion does not match the collation data, the control program or CPU 20 is not authentic.
【0074】すなわち、制御プログラムの読み出しは、
ROM30に書き込まれた状態のままでは行われず、必ず
暗号化されてから行われ、この検証用暗号化段階の内容
が非公開である場合、この検証用暗号化段階の内容を知
らない第三者が、検証用複合データが照合用データと一
致するような真正でない制御プログラムと真正でないC
PU20とを作成することが不可能だからである。That is, the reading of the control program is as follows:
It is not performed as it is written in the ROM 30, but is always performed after encryption. If the contents of the verification encryption stage are private, a third party who does not know the contents of the verification encryption stage Is a non-authentic control program such that the verification composite data matches the verification data
This is because it is impossible to create PU20.
【0075】また、読み出しの過程における送受信の間
に、不正を行おうとする者が、検証用暗号データ及び検
証用暗号鍵を入手することは可能であるが、これらから
検証用復号鍵を知ることは、非対称暗号系の場合、通常
極めて困難である。したがって、これらから制御プログ
ラムへの復号化は事実上不可能であるため、真正な制御
プログラムの解読を極めて困難なものとすることが可能
である。It is possible for a person who intends to perform fraud during the transmission / reception in the reading process to obtain the verification encryption data and the verification encryption key. Is usually very difficult for asymmetric cryptosystems. Accordingly, since it is virtually impossible to decode them into a control program, it is possible to make it extremely difficult to decode a genuine control program.
【0076】更に、検証用暗号化段階25によって正しく
暗号化された制御プログラムのみが、検証装置50によっ
て正しく復号化されるため、検証装置50によって制御プ
ログラムを検証することで、CPU20の真偽を検証する
ことも可能となる。 (請求項11)また、本発明のうち、請求項11記載の
発明は、遊技の制御を行うCPU20と、遊技の制御プロ
グラムが記録されているROM30と、下記の検証装置50
から送信された検証用暗号鍵を受信する鍵受信手段40
と、合成用乱数を生成し、上記ROM30に記録されてい
る制御プログラムと同合成用乱数とを合成した合成デー
タとするとともに、同合成データを、上記検証用暗号鍵
によって暗号化された検証用暗号データとする検証用暗
号化手段25と、上記検証用暗号データを、下記の検証装
置50へ送信する暗号送信手段45とを有する遊技機10であ
って、検証用暗号鍵と検証用復号鍵との対を生成する検
証用鍵生成手段60と、上記検証用暗号鍵を前記遊技機10
の鍵受信手段40へ送信する鍵送信手段70と、前記暗号送
信手段45から送信された検証用暗号データを受信する暗
号受信手段75と、上記検証用暗号データを、前記検証用
復号鍵を用いて検証用復号データとするとともに、同検
証用復号データを、プログラム部分と乱数部分とに分解
する検証用復号化手段80と、上記プログラム部分を、所
定の照合用データと照合する照合手段90とを有する検証
装置50を用いて、前記ROM30に記録されている制御プ
ログラムの真偽が検証可能であることを特徴とする。Furthermore, since only the control program correctly encrypted by the verification encryption stage 25 is correctly decrypted by the verification device 50, the verification device 50 verifies the control program so that the authenticity of the CPU 20 can be verified. It is also possible to verify. (Claim 11) Of the present invention, the invention according to claim 11 is characterized in that a CPU 20 for controlling a game, a ROM 30 in which a game control program is recorded, and a verification device 50 described below.
Receiving means 40 for receiving the verification encryption key transmitted from
A random number for synthesis is generated and synthesized data is generated by synthesizing the control program recorded in the ROM 30 and the random number for synthesis, and the synthesized data is used for verification for verification encrypted by the encryption key for verification. A gaming machine 10 having a verification encryption unit 25 as encrypted data and an encryption transmission unit 45 for transmitting the verification encryption data to the verification device 50 described below, wherein the verification encryption key and the verification decryption key are provided. And a verification key generating means 60 for generating a pair with the gaming machine 10.
A key transmitting unit 70 for transmitting to the key receiving unit 40, a cryptographic receiving unit 75 for receiving the verification cryptographic data transmitted from the cryptographic transmitting unit 45, and the verification cryptographic data using the verification decryption key. Verification decoding data, the verification decoding data is decomposed into a program part and a random number part, a verification decoding means 80, and the program part is collated with predetermined collation data by a verification means 90. The authenticity of the control program recorded in the ROM 30 can be verified using a verification device 50 having
【0077】すなわち、本請求項記載の遊技機10は、請
求項10記載の遊技機の検証方法によって検証可能とな
っている。「CPU」は、下記のROM30に書き込まれ
た制御プログラムに従って、遊技機10の制御を司る。
「ROM」には、制御プログラムが書き込まれている。
この制御プログラムは、あらかじめ所定の方法で暗号化
されていてもよい。That is, the gaming machine 10 according to the present invention can be verified by the gaming machine verification method according to the tenth aspect. The “CPU” controls the gaming machine 10 according to a control program written in the ROM 30 described below.
The control program is written in the “ROM”.
This control program may be encrypted in advance by a predetermined method.
【0078】「鍵受信手段」とは、請求項10記載の遊
技機の検証方法における鍵送信段階において、後述の請
求項12記載の検証装置50の検証用鍵生成手段60により
生成され、送信された検証用暗号鍵の受信に係る手段で
ある。具体的には、入力ポート等の入力手段をいう。
「検証用暗号化手段」とは、請求項10記載の遊技機の
検証方法における検証用暗号化段階において、平文であ
る制御プログラムを、一旦、生成された合成用乱数と合
成してから、上記鍵受信手段40が受信した検証用暗号鍵
を用いて検証用暗号データとする手段をいう。この検証
用暗号化手段25は、CPU20が実行するソフトウェアと
して実現されてもよいが、CPU20上でハードウェアと
して構成されていることがより望ましい。The "key receiving means" is generated and transmitted by the verification key generation means 60 of the verification device 50 described later in the key transmission step in the game machine verification method according to claim 10. Associated with the received verification encryption key. Specifically, it refers to input means such as an input port.
The “encryption means for verification” means that the control program, which is a plaintext, is once synthesized with the generated synthesis random number in the verification encryption step in the game machine verification method according to claim 10, This means means for using the verification encryption key received by the key receiving means 40 as encryption data for verification. The verification encryption unit 25 may be realized as software executed by the CPU 20, but is more preferably configured as hardware on the CPU 20.
【0079】「暗号送信手段」とは、請求項10記載の
遊技機の検証方法における暗号送信段階において、上記
検証用暗号データを請求項12記載の検証装置50へ送信
するための、出力ポート等の出力手段をいう。上記によ
り、本請求項記載の遊技機10は、制御プログラムの読み
出しの際に、同制御プログラムを暗号化して出力するた
め、第三者が同制御プログラムの解読をすることは極め
て困難となっている。また、制御プログラムを解析する
ためには、検証用暗号化手段25を解析する必要があるた
め、請求項12記載の検証装置50を用いないと、制御プ
ログラムの解析は極めて困難である。The "encryption transmission means" means an output port or the like for transmitting the verification encryption data to the verification device 50 in the encryption transmission step in the game machine verification method according to claim 10. Means output means. According to the above, the gaming machine 10 according to the present invention encrypts and outputs the control program when reading the control program, so that it is extremely difficult for a third party to decrypt the control program. I have. Further, in order to analyze the control program, it is necessary to analyze the verification encrypting means 25. Therefore, it is extremely difficult to analyze the control program unless the verification device 50 is used.
【0080】(請求項12)更に、本発明のうち、請求
項12記載の発明は、検証用暗号鍵と検証用復号鍵との
対を生成する検証用鍵生成手段60と、上記検証用暗号鍵
を下記の遊技機10へ送信する鍵送信手段70と、下記の遊
技機10から送信された検証用暗号データを受信する暗号
受信手段75と、上記検証用暗号データを、前記検証用復
号鍵を用いて検証用復号データとするとともに、同検証
用復号データを、プログラム部分と乱数部分とに分解す
る検証用復号化手段80と、上記プログラム部分を、所定
の照合用データと照合する照合手段90とを有する検証装
置50であって、遊技の制御を行うCPU20と、遊技の制
御プログラムが記録されているROM30と、前記鍵送信
手段70から送信された検証用暗号鍵を受信する鍵受信手
段40と、合成用乱数を生成し、上記ROM30に記録され
ている制御プログラムと同合成用乱数とを合成した合成
データとするとともに、同合成データを、上記検証用暗
号鍵によって暗号化された検証用暗号データとする検証
用暗号化手段25と、上記検証用暗号データを、前記暗号
受信手段75へ送信する暗号送信手段45とを有する遊技機
10における、上記ROM30に記録されている制御プログ
ラムの真偽を検証可能なことを特徴とする。(Claim 12) In the present invention, the invention according to claim 12 is a verification key generating means 60 for generating a pair of a verification encryption key and a verification decryption key; Key transmitting means 70 for transmitting a key to the following gaming machine 10; cryptographic receiving means 75 for receiving the verification encrypted data transmitted from the following gaming machine 10; and the verification decryption key And a decryption means for verifying 80 for decomposing the decrypted data for verification into a program part and a random number part, and a collation means for collating the program part with predetermined collation data A verification device 50 having a CPU 90 for controlling a game, a ROM 30 in which a control program for the game is recorded, and a key receiving means for receiving a verification encryption key transmitted from the key transmitting means 70. Generates 40 and a random number for synthesis And a verification program for converting the control program recorded in the ROM 30 and the synthesizing random number into synthesized data, and using the synthesized data as verification encryption data encrypted with the verification encryption key. A gaming machine comprising: means 25; and a cipher transmitting means 45 for transmitting the verification cipher data to the cipher receiving means 75.
10, wherein the authenticity of the control program recorded in the ROM 30 can be verified.
【0081】すなわち、本請求項記載の検証装置50は、
請求項10記載の遊技機の検証方法で用いる検証装置50
となっている。「検証用鍵生成手段」とは、請求項10
記載の遊技機の検証方法における検証用鍵生成段階にお
いて、検証用暗号鍵と検証用復号鍵との対を生成する手
段をいう。That is, the verification device 50 according to the present invention
A verification device 50 used in the gaming machine verification method according to claim 10.
It has become. Claim 10: "Verification key generation means"
This means means for generating a pair of a verification encryption key and a verification decryption key in the verification key generation step in the above described gaming machine verification method.
【0082】検証用暗号鍵と検証用復号鍵とは、非対称
暗号系又は対称暗号系のいずれで用いられるものでも、
また、非対称暗号系と対象暗号系とを組み合わせた暗号
系で用いられるものでもよい。ここで、これらの鍵が非
対称暗号系で用いられるものである場合には、非対称暗
号系における鍵生成のルールに従って生成される。この
ルールは、どの暗号系を採用するかによって異なるが、
いずれの暗号系においても、暗号鍵によって暗号化され
た平文は、復号鍵によって復号化されてもとの平文に戻
るという特徴を有する。また、非対称暗号系において生
成された暗号鍵及び復号鍵は、どちらか一方のみからも
う一方を求めることは通常極めて困難であるという特徴
も有する。The verification encryption key and the verification decryption key may be used in either an asymmetric encryption system or a symmetric encryption system.
Further, an encryption system that is used in a combination of an asymmetric encryption system and a target encryption system may be used. Here, when these keys are used in the asymmetric encryption system, they are generated in accordance with the key generation rules in the asymmetric encryption system. This rule depends on which encryption system is used,
In any of the encryption systems, the plaintext encrypted with the encryption key has the characteristic of being restored to the original plaintext after being decrypted with the decryption key. In addition, it is usually very difficult to obtain the other from only one of the encryption key and the decryption key generated in the asymmetric encryption system.
【0083】また、対称暗号系を採用する場合には、上
記検証用暗号鍵及び検証用復号鍵は、同一のものとな
る。「鍵送信手段」とは、請求項10記載の遊技機の検
証方法における鍵送信段階において、上記検証用暗号鍵
を、請求項11記載の遊技機10へ送信するための、出力
ポート等の出力手段をいう。When a symmetric encryption system is employed, the above-mentioned verification encryption key and verification decryption key are the same. The “key transmitting means” means an output port or the like for transmitting the verification encryption key to the gaming machine 10 in the key transmitting step in the gaming machine verification method according to claim 10. Means.
【0084】「暗号受信手段」とは、請求項10記載の
遊技機の検証方法における暗号送信段階において、請求
項11記載の遊技機10の検証用暗号化手段25により暗号
化され、送信された検証用暗号データを受信するため
の、入力ポート等の入力手段をいう。「検証用復号化手
段」とは、請求項10記載の遊技機の検証方法における
検証用復号化段階において、暗号文である上記検証用暗
号データを、検証用鍵生成手段60が生成した検証用復号
鍵を用いて、検証用復号データとしてから、所定の演算
により同検証用復号データをプログラム部分と乱数部分
とに分ける手段をいう。The "encryption receiving means" is the encryption and transmission step performed by the verification encrypting means 25 of the gaming machine 10 in the encryption transmitting step in the gaming machine verification method according to claim 10. Input means, such as an input port, for receiving verification encryption data. The "verifying decryption means" refers to the verification cryptographic data generated by the verification key generation means 60 in the verification decryption step of the gaming machine verification method according to claim 10. A means for dividing the decryption data for verification into a program portion and a random number portion by a predetermined operation after using the decryption key as the decryption data for verification.
【0085】「照合手段」とは、請求項10記載の遊技
機の検証方法における照合段階において、上記プログラ
ム部分を、所定の照合用データと比較照合する手段をい
う。この照合用データは、本来遊技機10のROM30に書
き込まれているべき制御プログラムを表すデータとなっ
ている。上記により、本請求項記載の検証装置50には、
制御プログラムの読み込みの際に、暗号化された同制御
プログラムが入力されるため、第三者が同制御プログラ
ムの解読をすることは極めて困難となっている。また、
制御プログラムを解析するためには、検証用暗号化手段
25を解析する必要があるため、本請求項に係る検証装置
50を用いないと、請求項11に係る遊技機の制御プログ
ラムの解析は極めて困難である。The "collating means" refers to means for comparing and collating the program portion with predetermined collation data in the collation stage in the gaming machine verification method according to claim 10. This collation data is data representing a control program that should be originally written in the ROM 30 of the gaming machine 10. By the above, the verification device 50 according to the present claim,
Since the encrypted control program is input when the control program is read, it is extremely difficult for a third party to decrypt the control program. Also,
In order to analyze the control program, verification encryption means
Since it is necessary to analyze 25, the verification device according to the present claim
Without 50, it is extremely difficult to analyze the control program for a gaming machine according to claim 11.
【0086】[0086]
【発明の実施の形態】以下、本発明の実施の形態につ
き、図面を参照しつつ説明する。ここで、図1は、本発
明の第一の実施の形態に係る遊技機及び検証装置におけ
るデータの流れを模式的に示したものである。また、図
2は、本発明の第二の実施の形態に係る遊技機及び検証
装置におけるデータの流れを模式的に示したものであ
る。更に、図3は、発明の第三の実施の形態に係る遊技
機及び検証装置におけるデータの流れを模式的に示した
ものである。そして、図4は、本発明の各実施の形態に
おけるプログラムデータの暗号化を模式的に示したもの
である。Embodiments of the present invention will be described below with reference to the drawings. Here, FIG. 1 schematically shows a data flow in the gaming machine and the verification device according to the first embodiment of the present invention. FIG. 2 schematically shows a data flow in the gaming machine and the verification device according to the second embodiment of the present invention. FIG. 3 schematically shows a data flow in the gaming machine and the verification device according to the third embodiment of the invention. FIG. 4 schematically shows encryption of program data in each embodiment of the present invention.
【0087】(プログラムデータの暗号化)下記の各実
施の形態においては、遊技機10のROM30には、あらか
じめ暗号化されたプログラムデータが記録されることと
なっている。そして、この暗号化は、下記の各実施の形
態のいずれにおいても、図4に示すような過程で実施さ
れる。(Encryption of Program Data) In each of the following embodiments, the ROM 30 of the gaming machine 10 stores program data that has been encrypted in advance. This encryption is performed in a process as shown in FIG. 4 in each of the following embodiments.
【0088】まず、プログラムデータ(P)に基づき、認
証子生成関数(T)により認証子(t)が生成される。次に、
プログラムデータ(P)と認証子(t)とが認証子合成関数(S
x)により合成され、中間プログラムデータ(Px)が生成さ
れる。一方、遊技機型番(x)に基づき、格納用乱数生成
関数(Rx)により格納用乱数(rx)が生成される。この格納
用乱数生成関数は、異なる遊技機型番に対して異なる格
納用乱数を生成するが、同一の遊技機型番を与えても、
異なる格納用乱数を生成することがある。First, an authenticator (t) is generated by an authenticator generation function (T) based on the program data (P). next,
The program data (P) and the authenticator (t) are combined with the authenticator combining function (S
x) to generate intermediate program data (Px). On the other hand, a storage random number (rx) is generated by the storage random number generation function (Rx) based on the gaming machine model number (x). This storage random number generation function generates different storage random numbers for different game machine model numbers, but even if the same game machine model number is given,
Different storage random numbers may be generated.
【0089】この格納用乱数(rx)に基づき、格納用鍵生
成関数(Kx)により格納用暗号鍵(ex)及び格納用復号鍵(d
x)が生成される。この格納用暗号鍵及び格納用復号鍵
は、たとえばRSA暗号系のような、非対称暗号系で生
成されることとなっている。中間プログラムデータ(Px)
は、格納用暗号関数(Fx)によって、格納用暗号鍵(ex)を
用いて格納用暗号データ(Mx)とされる。この格納用暗号
データ(Mx)は、格納用復号鍵(dx)とともに、遊技機10の
ROM30に記録される。なお、このROM30は、遊技機
10の制御を司るCPU20と一体に形成した場合、偽造し
たROMのみを交換することは不可能となる。ただし、
制御プログラムを暗号化してROM30に格納した場合に
おいては、検証がCPU20を介して行われるため、CP
U20とROM30とを一体としなくとも不正な改ざんを行
うことはできない。Based on the storage random number (rx), a storage encryption key (ex) and a storage decryption key (d
x) is generated. The storage encryption key and the storage decryption key are to be generated by an asymmetric encryption system such as an RSA encryption system. Intermediate program data (Px)
Is converted into storage encryption data (Mx) by the storage encryption function (Fx) using the storage encryption key (ex). The storage encryption data (Mx) is recorded in the ROM 30 of the gaming machine 10 together with the storage decryption key (dx). Note that this ROM 30 is
When formed integrally with the CPU 20 that controls the control of 10, it is impossible to replace only the forged ROM. However,
When the control program is encrypted and stored in the ROM 30, the verification is performed via the CPU 20.
Even if U20 and ROM 30 are not integrated, unauthorized tampering cannot be performed.
【0090】それとともに、遊技機型番(x)ごとの格納
用暗号データ(Mx)が、データ管理者のデータベース100
に保管される。なお、このデータベース100には、他の
遊技機型番(1,2,...)ごとの格納用暗号データ(M1,M
2,...)も記録されている。 (第一の実施の形態)以下、図1を参照しつつ、第一の
実施の形態における格納用暗号データの復号化及びその
検証について説明する。At the same time, the storage encryption data (Mx) for each gaming machine model number (x) is stored in the database 100 of the data manager.
Stored in In this database 100, the storage encryption data (M1, M
2, ...) are also recorded. (First Embodiment) The decryption and verification of storage encrypted data in the first embodiment will be described below with reference to FIG.
【0091】(格納用暗号データの復号化)遊技機10の
ROM30に記録された格納用暗号データ(Mx)は、格納用
復号関数(Fx')によって、同じくROM30に記録された
格納用復号鍵(dx)を用いて中間プログラムデータ(Px)に
復号化される。中間プログラムデータ(Px)は、認証子合
成関数(Sx)の逆関数である認証子分解関数(Sx')により
分解され、プログラムデータ(P)と認証子(t)とが得られ
る。認証子(t)は、認証子検証関数(T')によって、プロ
グラムデータ(P)と比較して認証結果(b)が得られる。C
PU20は、この認証結果(b)が満足すべきものである場
合には、プログラムデータ(P)を実行する。(Decryption of Stored Encryption Data) The storage encryption data (Mx) recorded in the ROM 30 of the gaming machine 10 is stored in the storage decryption function (Fx ') by the storage decryption key (Fx'). It is decoded into intermediate program data (Px) using (dx). The intermediate program data (Px) is decomposed by an authenticator decomposing function (Sx ′), which is an inverse function of the authenticator synthesizing function (Sx), to obtain program data (P) and an authenticator (t). The authenticator (t) obtains an authentication result (b) as compared with the program data (P) by the authenticator verification function (T ′). C
When the authentication result (b) is satisfactory, the PU 20 executes the program data (P).
【0092】(格納用暗号データの検証)プログラムデ
ータ(P)の実行により、所定の遊技情報(h)が発生した際
には、ROM30に記録された格納用暗号データ(Mx)の検
証が行われる。まず、検証装置50において、検証用鍵生
成手段60により、検証用暗号鍵(ey)と検証用復号鍵(dy)
との対が生成される。(Verification of Stored Encryption Data) When predetermined game information (h) is generated by execution of the program data (P), the storage encryption data (Mx) recorded in the ROM 30 is verified. Will be First, in the verification device 50, the verification encryption key (ey) and the verification decryption key (dy) are
Is generated.
【0093】すなわち、検証用乱数生成関数(Ry)により
検証用乱数(ry)が生成される。この検証用乱数(ry)に基
づき、検証用鍵生成関数(Ky)により検証用暗号鍵(ey)及
び検証用復号鍵(dy)が生成される。これらの検証用暗号
鍵(ey)及び検証用復号鍵(dy)は、常に同一であっても、
検証のたびに更新されることとしても、また、何回かの
検証ごとに更新されることとしてもよい。That is, the verification random number (ry) is generated by the verification random number generation function (Ry). Based on the verification random number (ry), a verification encryption key (ey) and a verification decryption key (dy) are generated by a verification key generation function (Ky). Even if these verification encryption key (ey) and verification decryption key (dy) are always the same,
It may be updated every time verification is performed, or may be updated every time verification is performed.
【0094】これらのうち、検証用暗号鍵(ey)が、鍵送
信手段70によって遊技機10の鍵受信手段40へ送信され
る。また、検証用復号鍵(dy)は、検証装置50のメモリに
記憶される。なお、遊技機10における鍵受信手段40及び
暗号送信手段45は、実際には、複数のコネクタピンを備
えた単一のコネクタとして形成されている。また、検証
装置50における鍵送信手段70及び暗号受信手段75も同様
のコネクタとして形成され、これらのコネクタは、コネ
クタコードで接続されている。Among these, the verification encryption key (ey) is transmitted by the key transmitting means 70 to the key receiving means 40 of the gaming machine 10. The decryption key for verification (dy) is stored in the memory of the verification device 50. Note that the key receiving means 40 and the encryption transmitting means 45 of the gaming machine 10 are actually formed as a single connector having a plurality of connector pins. The key transmitting means 70 and the encryption receiving means 75 in the verification device 50 are also formed as similar connectors, and these connectors are connected by a connector code.
【0095】そして、遊技機10において、検証用暗号化
手段25により、格納用暗号データ(Mx)が、検証装置50に
よる検証のために暗号化される。この検証用暗号化手段
25は、CPU20の中でハードウェアとして構成されてい
る。したがって、上記のとおり、遊技の内容を改ざん
し、かつ、正しく検証されるためには、制御プログラム
の改ざんのみならず、CPU20の解析をも必要とするこ
ととなっている。Then, in the gaming machine 10, the storage encryption data (Mx) is encrypted by the verification encryption unit 25 for verification by the verification device 50. This verification encryption means
25 is configured as hardware in the CPU 20. Therefore, as described above, in order to falsify the contents of the game and to correctly verify the game, it is necessary to not only falsify the control program but also analyze the CPU 20.
【0096】まず、遊技情報(h)と格納用暗号データ(M
x)とが遊技情報合成関数(Sy)により合成され、合成デー
タ(L1)が生成される。次に、受信した検証用暗号鍵(ey)
を用い、検証用暗号関数(Fy)により合成データ(L1)を検
証用暗号データ(Ly)へ暗号化する。この検証用暗号デー
タ(Ly)は、暗号送信手段45によって検証装置50の暗号受
信手段75へ送信される。First, the game information (h) and the encrypted data for storage (M
x) are combined with the game information combining function (Sy) to generate combined data (L1). Next, the received verification encryption key (ey)
, The composite data (L1) is encrypted into the verification encryption data (Ly) by the verification encryption function (Fy). The cryptographic data for verification (Ly) is transmitted by the cryptographic transmitting means 45 to the cryptographic receiving means 75 of the verification device 50.
【0097】そして、再び検証装置50において、検証用
復号化手段80により、この受信した検証用暗号データ(L
y)がもとの格納用暗号データ(Mx)へ復号化されることと
なる。すなわち、検証用暗号データ(Ly)は、検証用復号
関数(Fy')によって検証用復号鍵(dy)で復号化され、中
間検証データ(L1)が得られる。この中間検証データ(L1)
は、遊技情報合成関数(Sy)の逆関数である遊技情報分解
関数(Sy')によって遊技情報(h)と格納用暗号データ(Mx)
とに分解される。これらのうち、遊技情報(h)はホール
コンピュータ(HC)へ送信される。Then, in the verification device 50 again, the received verification encryption data (L
y) is decrypted into the original encrypted data for storage (Mx). That is, the verification encryption data (Ly) is decrypted by the verification decryption function (Fy ′) using the verification decryption key (dy), and the intermediate verification data (L1) is obtained. This intermediate verification data (L1)
Is a game information decomposing function (Sy '), which is an inverse function of the game information synthesis function (Sy), and the game information (h) and the encryption data for storage (Mx).
And is decomposed into Among them, the game information (h) is transmitted to the hall computer (HC).
【0098】検証装置50には、格納用暗号データ(Mx)と
比較される照合用データ(My)があらかじめその記憶装置
55中に記録されている。上記の検証用復号化手段80によ
り得られた格納用暗号データ(Mx)は、照合手段90によ
り、照合用データ(My)と照合される。これらが一致すれ
ば、遊技機10のROM30に記録された格納用暗号データ
(Mx)は、正規の遊技プログラムを表すものと判定され、
上記遊技情報(h)は、真正の制御プログラム及び真正の
CPU20に基づいて発生したものと判断される。The verification device 50 stores in advance the verification data (My) to be compared with the storage encryption data (Mx) in its storage device.
Recorded in 55. The storage encryption data (Mx) obtained by the verification decryption means 80 is collated with the collation data (My) by the collation means 90. If these match, the storage encryption data recorded in the ROM 30 of the gaming machine 10
(Mx) is determined to represent a legitimate gaming program,
It is determined that the game information (h) has been generated based on the genuine control program and the genuine CPU 20.
【0099】(第二の実施の形態)以下、図2を参照し
つつ、第二の実施の形態における暗号データの復号化及
びその検証について説明する。 (格納用暗号データの復号化)遊技機10のROM30に記
録された格納用暗号データ(Mx)は、格納用復号関数(F
x')によって、同じくROM30に記録された格納用復号
鍵(dx)を用いて中間プログラムデータ(Px)に復号化され
る。中間プログラムデータ(Px)は、認証子合成関数(Sx)
の逆関数である認証子分解関数(Sx')により分解され、
プログラムデータ(P)と認証子(t)とが得られる。認証子
(t)は、認証子検証関数(T')によって、プログラムデー
タ(P)と比較して認証結果(b)が得られる。CPU20は、
この認証結果(b)が満足すべきものである場合には、プ
ログラムデータ(P)を実行する。(Second Embodiment) Decryption of encrypted data and verification thereof in the second embodiment will be described below with reference to FIG. (Decryption of Stored Encryption Data) The storage encryption data (Mx) recorded in the ROM 30 of the gaming machine 10 is stored in the storage decryption function (F
x ′), it is decrypted into intermediate program data (Px) using the storage decryption key (dx) also recorded in the ROM 30. Intermediate program data (Px) is authenticator composition function (Sx)
Decomposed by the authenticator decomposition function (Sx '), which is the inverse function of
The program data (P) and the authenticator (t) are obtained. Authenticator
In (t), an authentication result (b) is obtained by the authenticator verification function (T ′) in comparison with the program data (P). CPU 20
If the authentication result (b) is satisfactory, the program data (P) is executed.
【0100】(格納用暗号データの検証)プログラムデ
ータ(P)の実行により、所定の遊技情報(h)が発生した際
には、ROM30に記録された格納用暗号データ(Mx)の検
証が行われる。まず、検証装置50において、検証用鍵生
成手段60により、検証用暗号鍵(ey)と検証用復号鍵(dy)
との対が生成される。(Verification of Stored Encryption Data) When predetermined game information (h) is generated by execution of the program data (P), the storage encryption data (Mx) recorded in the ROM 30 is verified. Will be First, in the verification device 50, the verification encryption key (ey) and the verification decryption key (dy) are
Is generated.
【0101】すなわち、検証用乱数生成関数(Ry)により
検証用乱数(ry)が生成される。この検証用乱数(ry)に基
づき、検証用鍵生成関数(Ky)により検証用暗号鍵(ey)及
び検証用復号鍵(dy)が生成される。これらの検証用暗号
鍵(ey)及び検証用復号鍵(dy)は、常に同一であっても、
検証のたびに更新されることとしても、また、何回かの
検証ごとに更新されることとしてもよい。That is, the verification random number (ry) is generated by the verification random number generation function (Ry). Based on the verification random number (ry), a verification encryption key (ey) and a verification decryption key (dy) are generated by a verification key generation function (Ky). Even if these verification encryption key (ey) and verification decryption key (dy) are always the same,
It may be updated every time verification is performed, or may be updated every time verification is performed.
【0102】これらのうち、検証用暗号鍵(ey)が、鍵送
信手段70によって遊技機10の鍵受信手段40へ送信され
る。また、検証用暗号鍵(ey)及び検証用復号鍵(dy)は、
検証装置50のメモリに記憶される。なお、遊技機10にお
ける鍵受信手段40及び暗号送信手段45は、実際には、複
数のコネクタピンを備えた単一のコネクタとして形成さ
れている。また、検証装置50における鍵送信手段70及び
暗号受信手段75も同様のコネクタとして形成され、これ
らのコネクタは、コネクタコードで接続されている。Of these, the verification encryption key (ey) is transmitted by the key transmitting means 70 to the key receiving means 40 of the gaming machine 10. The verification encryption key (ey) and the verification decryption key (dy) are
It is stored in the memory of the verification device 50. Note that the key receiving means 40 and the encryption transmitting means 45 of the gaming machine 10 are actually formed as a single connector having a plurality of connector pins. The key transmitting means 70 and the encryption receiving means 75 in the verification device 50 are also formed as similar connectors, and these connectors are connected by a connector code.
【0103】そして、遊技機10において、検証用暗号化
手段25により、格納用暗号データ(Mx)が、検証装置50に
よる検証のために暗号化される。この検証用暗号化手段
25は、CPU20の中でハードウェアとして構成されてい
る。したがって、上記のとおり、遊技の内容を改ざん
し、かつ、正しく検証されるためには、制御プログラム
の改ざんのみならず、CPU20の解析をも必要とするこ
ととなっている。Then, in the gaming machine 10, the storage encryption data (Mx) is encrypted by the verification encryption unit 25 for verification by the verification device 50. This verification encryption means
25 is configured as hardware in the CPU 20. Therefore, as described above, in order to falsify the contents of the game and to correctly verify the game, it is necessary to not only falsify the control program but also analyze the CPU 20.
【0104】まず、遊技情報(h)、格納用暗号データ(M
x)及び受信した検証用暗号鍵(ey)が遊技情報合成関数(S
y)により合成され、合成データ(L1)が生成される。この
検証用暗号鍵(ey)を用い、検証用暗号関数(Fy)により合
成データ(L1)を検証用暗号データ(Ly)へ暗号化する。こ
の検証用暗号データ(Ly)は、暗号送信手段45によって検
証装置50の暗号受信手段75へ送信される。First, the game information (h) and the storage encryption data (M
x) and the received verification encryption key (ey) are used as the game information synthesis function (S
y) to generate synthesized data (L1). Using the verification encryption key (ey), the composite data (L1) is encrypted into the verification encryption data (Ly) by the verification encryption function (Fy). The cryptographic data for verification (Ly) is transmitted by the cryptographic transmitting means 45 to the cryptographic receiving means 75 of the verification device 50.
【0105】そして、再び検証装置50において、検証用
復号化手段80により、この受信した検証用暗号データ(L
y)がもとの格納用暗号データ(Mx)へ復号化されることと
なる。すなわち、検証用暗号データ(Ly)は、検証用復号
関数(Fy')によって検証用復号鍵(dy)で復号化され、中
間検証データ(L1)が得られる。この中間検証データ(L1)
は、遊技情報合成関数(Sy)の逆関数である遊技情報分解
関数(Sy')によって遊技情報(h)、格納用暗号データ(Mx)
及び検証用暗号鍵(ey)に分解される。これらのうち、遊
技情報(h)はホールコンピュータ(HC)へ送信される。Then, in the verification device 50 again, the received verification encryption data (L
y) is decrypted into the original encrypted data for storage (Mx). That is, the verification encryption data (Ly) is decrypted by the verification decryption function (Fy ′) using the verification decryption key (dy), and the intermediate verification data (L1) is obtained. This intermediate verification data (L1)
Is a game information decomposition function (Sy '), which is the inverse function of the game information synthesis function (Sy), the game information (h), the storage encryption data (Mx)
And a verification encryption key (ey). Among them, the game information (h) is transmitted to the hall computer (HC).
【0106】検証装置50には、格納用暗号データ(Mx)と
比較される照合用データ(My)があらかじめその記憶装置
55中に記録されている。上記の検証用復号化手段80によ
り得られた格納用暗号データ(Mx)は、照合手段90によ
り、照合用データ(My)と照合される。これらが一致すれ
ば、遊技機10のROM30に記録された格納用暗号データ
(Mx)は、正規の遊技プログラムを表すものと判定され、
上記遊技情報(h)は、真正の制御プログラム及び真正の
CPU20に基づいて発生したものと判断される。In the verification device 50, the verification data (My) to be compared with the storage encryption data (Mx) is stored in advance in the storage device.
Recorded in 55. The storage encryption data (Mx) obtained by the verification decryption means 80 is collated with the collation data (My) by the collation means 90. If these match, the storage encryption data recorded in the ROM 30 of the gaming machine 10
(Mx) is determined to represent a legitimate gaming program,
It is determined that the game information (h) has been generated based on the genuine control program and the genuine CPU 20.
【0107】更に、検証用復号化手段80により得られた
検証用暗号鍵(ey)と、検証装置50のメモリに記憶された
検証用暗号鍵(ey)とが、照合手段90により照合される。
これらが一致すれば、前記検証用暗号化手段25が正規の
ものであると判断される。 (第三の実施の形態)以下、図3を参照しつつ、第三の
実施の形態における暗号データの復号化及びその検証に
ついて説明する。Furthermore, the verification encryption key (ey) obtained by the verification decryption means 80 and the verification encryption key (ey) stored in the memory of the verification device 50 are verified by the verification means 90. .
If they match, it is determined that the verification encrypting means 25 is legitimate. (Third Embodiment) Decryption of encrypted data and verification thereof in the third embodiment will be described below with reference to FIG.
【0108】(格納用暗号データの復号化)遊技機10の
ROM30に記録された格納用暗号データ(Mx)は、格納用
復号関数(Fx')によって、同じくROM30に記録された
格納用復号鍵(dx)を用いて中間プログラムデータ(Px)に
復号化される。中間プログラムデータ(Px)は、認証子合
成関数(Sx)の逆関数である認証子分解関数(Sx')により
分解され、プログラムデータ(P)と認証子(t)とが得られ
る。認証子(t)は、認証子検証関数(T')によって、プロ
グラムデータ(P)と比較して認証結果(b)が得られる。C
PU20は、この認証結果(b)が満足すべきものである場
合には、プログラムデータ(P)を実行する。(Decryption of Stored Encryption Data) The storage encryption data (Mx) recorded in the ROM 30 of the gaming machine 10 is stored in the storage decryption key (Fx ′) by the storage decryption function (Fx ′). It is decoded into intermediate program data (Px) using (dx). The intermediate program data (Px) is decomposed by an authenticator decomposing function (Sx ′), which is an inverse function of the authenticator synthesizing function (Sx), to obtain program data (P) and an authenticator (t). The authenticator (t) obtains an authentication result (b) as compared with the program data (P) by the authenticator verification function (T ′). C
When the authentication result (b) is satisfactory, the PU 20 executes the program data (P).
【0109】(格納用暗号データの検証)プログラムデ
ータ(P)の実行により、所定の遊技情報(h)が発生した際
には、ROM30に記録された格納用暗号データ(Mx)の検
証が行われる。まず、検証装置50において、検証用鍵生
成手段60により、検証用暗号鍵(ey)と検証用復号鍵(dy)
との対が生成される。(Verification of Stored Encryption Data) When predetermined game information (h) is generated by executing the program data (P), the storage encryption data (Mx) recorded in the ROM 30 is verified. Will be First, in the verification device 50, the verification encryption key (ey) and the verification decryption key (dy) are
Is generated.
【0110】すなわち、検証用乱数生成関数(Ry)により
検証用乱数(ry)が生成される。この検証用乱数(ry)に基
づき、検証用鍵生成関数(Ky)により検証用暗号鍵(ey)及
び検証用復号鍵(dy)が生成される。これらの検証用暗号
鍵(ey)及び検証用復号鍵(dy)は、常に同一であっても、
検証のたびに更新されることとしても、また、何回かの
検証ごとに更新されることとしてもよい。That is, the verification random number (ry) is generated by the verification random number generation function (Ry). Based on the verification random number (ry), a verification encryption key (ey) and a verification decryption key (dy) are generated by a verification key generation function (Ky). Even if these verification encryption key (ey) and verification decryption key (dy) are always the same,
It may be updated every time verification is performed, or may be updated every time verification is performed.
【0111】これらのうち、検証用暗号鍵(ey)が、鍵送
信手段70によって遊技機10の鍵受信手段40へ送信され
る。また、検証用復号鍵(dy)は、検証装置50のメモリに
記憶される。なお、遊技機10における鍵受信手段40及び
暗号送信手段45は、実際には、複数のコネクタピンを備
えた単一のコネクタとして形成されている。また、検証
装置50における鍵送信手段70及び暗号受信手段75も同様
のコネクタとして形成され、これらのコネクタは、コネ
クタコードで接続されている。Among these, the verification encryption key (ey) is transmitted by the key transmitting means 70 to the key receiving means 40 of the gaming machine 10. The decryption key for verification (dy) is stored in the memory of the verification device 50. Note that the key receiving means 40 and the encryption transmitting means 45 of the gaming machine 10 are actually formed as a single connector having a plurality of connector pins. The key transmitting means 70 and the encryption receiving means 75 in the verification device 50 are also formed as similar connectors, and these connectors are connected by a connector code.
【0112】そして、遊技機10において、検証用暗号化
手段25により、格納用暗号データ(Mx)が、検証装置50に
よる検証のために暗号化される。この検証用暗号化手段
25は、CPU20の中でハードウェアとして構成されてい
る。したがって、上記のとおり、遊技の内容を改ざん
し、かつ、正しく検証されるためには、制御プログラム
の改ざんのみならず、CPU20の解析をも必要とするこ
ととなっている。Then, in the gaming machine 10, the storage encryption data (Mx) is encrypted by the verification encryption unit 25 for verification by the verification device 50. This verification encryption means
25 is configured as hardware in the CPU 20. Therefore, as described above, in order to falsify the contents of the game and to correctly verify the game, it is necessary to not only falsify the control program but also analyze the CPU 20.
【0113】まず、最初に、合成用乱数生成関数(Rz)に
より、合成用乱数(rz)が生成される。次に、遊技情報
(h)、格納用暗号データ(Mx)及びこの合成用乱数(rz)が
遊技情報合成関数(Sy)により合成され、合成データ(L1)
が生成される。次に、受信した検証用暗号鍵(ey)を用
い、検証用暗号関数(Fy)により合成データ(L1)を検証用
暗号データ(Ly)へ暗号化する。この検証用暗号データ(L
y)は、暗号送信手段45によって検証装置50の暗号受信手
段75へ送信される。First, a synthesis random number (rz) is generated by the synthesis random number generation function (Rz). Next, game information
(h), the storage encryption data (Mx) and the synthesis random number (rz) are synthesized by the game information synthesis function (Sy), and the synthesis data (L1)
Is generated. Next, using the received encryption key for verification (ey), the composite data (L1) is encrypted into encryption data for verification (Ly) by the encryption function for verification (Fy). This verification encryption data (L
y) is transmitted by the encryption transmitting means 45 to the encryption receiving means 75 of the verification device 50.
【0114】そして、再び検証装置50において、検証用
復号化手段80により、この受信した検証用暗号データ(L
y)がもとの格納用暗号データ(Mx)へ復号化されることと
なる。すなわち、検証用暗号データ(Ly)は、検証用復号
関数(Fy')によって検証用復号鍵(dy)で復号化され、中
間検証データ(L1)が得られる。この中間検証データ(L1)
は、遊技情報合成関数(Sy)の逆関数である遊技情報分解
関数(Sy')によって遊技情報(h)、格納用暗号データ(Mx)
及び合成用乱数(rz)に分解される。これらのうち、遊技
情報(h)はホールコンピュータ(HC)へ送信される。Then, in the verification device 50 again, the received decryption data for verification (L
y) is decrypted into the original encrypted data for storage (Mx). That is, the verification encryption data (Ly) is decrypted by the verification decryption function (Fy ′) using the verification decryption key (dy), and the intermediate verification data (L1) is obtained. This intermediate verification data (L1)
Is a game information decomposition function (Sy '), which is the inverse function of the game information synthesis function (Sy), the game information (h), the storage encryption data (Mx)
And a random number for synthesis (rz). Among them, the game information (h) is transmitted to the hall computer (HC).
【0115】検証装置50には、格納用暗号データ(Mx)と
比較される照合用データ(My)があらかじめその記憶装置
55中に記録されている。上記の検証用復号化手段80によ
り得られた格納用暗号データ(Mx)は、照合手段90によ
り、照合用データ(My)と照合される。これらが一致すれ
ば、遊技機10のROM30に記録された格納用暗号データ
(Mx)は、正規の遊技プログラムを表すものと判定され、
上記遊技情報(h)は、真正の制御プログラム及び真正の
CPU20に基づいて発生したものと判断される。The verification device 50 stores in advance the verification data (My) to be compared with the storage encryption data (Mx) in the storage device.
Recorded in 55. The storage encryption data (Mx) obtained by the verification decryption means 80 is collated with the collation data (My) by the collation means 90. If these match, the storage encryption data recorded in the ROM 30 of the gaming machine 10
(Mx) is determined to represent a legitimate gaming program,
It is determined that the game information (h) has been generated based on the genuine control program and the genuine CPU 20.
【0116】(その他)上記の各実施の形態において
は、プログラムデータ(P)は、あらかじめ暗号化されて
遊技機10のROM30に記録されることとなっている。し
かし、このプログラムデータ(P)は、暗号化されていな
い平文として遊技機10のROM30に記録されていても、
上記の検証は同様に行うことが可能である。(Others) In each of the above embodiments, the program data (P) is encrypted in advance and recorded in the ROM 30 of the gaming machine 10. However, even if this program data (P) is recorded in the ROM 30 of the gaming machine 10 as unencrypted plaintext,
The above verification can be performed similarly.
【0117】また、上記の各実施の形態においては、検
証用暗号化手段25はハードウェアとして構成されている
が、ソフトウェアとして構成されていても、また、ハー
ドウェアとソフトウェアとの組合せとして構成されてい
てもよい。Further, in each of the above embodiments, the verification encrypting means 25 is configured as hardware, but may be configured as software or as a combination of hardware and software. May be.
【0118】[0118]
【発明の効果】本発明は、上記のように構成されている
ので、以下に記す効果を奏する。すなわち、請求項1か
ら3までに記載した発明の説明によると、照合の際のR
OMからの読み出しは、必ず暗号化を経て行うことで、
CPUの解析及び擬態によるCPUの偽造を困難にする
ことが可能となる。また、制御プログラムの真偽を検証
することで、CPUの真偽をも検証することが可能とな
る。The present invention is configured as described above, and has the following effects. That is, according to the description of the invention described in claims 1 to 3, R
Reading from the OM must always be performed via encryption.
It becomes possible to make it difficult to forge the CPU by analyzing and mimicking the CPU. Further, by verifying the authenticity of the control program, it is possible to verify the authenticity of the CPU.
【0119】また、請求項4から6までに記載した発明
の説明によると、暗号化のための暗号鍵自体を真正制御
プログラムと合成して暗号化することで、CPUの解析
及び擬態によるCPUの偽造をより困難にすることが可
能となる。また、制御プログラムの真偽を検証すること
でCPUの検証も可能となる。加えて、請求項7から9
までに記載した発明の説明によると、暗号化のための暗
号鍵自体を真正制御プログラムと合成して暗号化するこ
とで、CPUの解析及び擬態によるCPUの偽造をより
困難にすることが可能となる。また、CPUの真偽を直
接的に検証することも可能となる。According to the fourth to sixth aspects of the present invention, the encryption key itself for encryption is synthesized with the authenticity control program and encrypted, so that the CPU is analyzed and the CPU is simulated. Forgery can be made more difficult. In addition, the CPU can be verified by verifying the authenticity of the control program. In addition, claims 7 to 9
According to the description of the invention described above, it is possible to make it more difficult to analyze and mimic a CPU by synthesizing the encryption key itself for encryption with a genuine control program and encrypting it. Become. Also, it is possible to directly verify the authenticity of the CPU.
【0120】更に、請求項10から12までに記載した
発明の説明によると、暗号化の際に、乱数を生成し、こ
れと真正制御プログラムとの合成を経て暗号化すること
で、CPUの解析及び擬態によるCPUの偽造をより困
難にすることが可能となる。また、制御プログラムの真
偽を検証することでCPUの検証も可能となる。Further, according to the tenth to twelfth aspects of the invention, at the time of encryption, a random number is generated, and the generated random number is encrypted through synthesis with a genuine control program. In addition, forgery of the CPU by mimicry can be made more difficult. In addition, the CPU can be verified by verifying the authenticity of the control program.
【図1】本発明の第一の実施の形態に係る遊技機及び検
証装置におけるデータの流れを模式的に示したものであ
る。FIG. 1 schematically shows a data flow in a gaming machine and a verification device according to a first embodiment of the present invention.
【図2】本発明の第二の実施の形態に係る遊技機及び検
証装置におけるデータの流れを模式的に示したものであ
る。FIG. 2 schematically shows a data flow in a gaming machine and a verification device according to a second embodiment of the present invention.
【図3】発明の第三の実施の形態に係る遊技機及び検証
装置におけるデータの流れを模式的に示したものであ
る。FIG. 3 schematically shows a data flow in a gaming machine and a verification device according to a third embodiment of the invention.
【図4】本発明の各実施の形態におけるプログラムデー
タの暗号化を模式的に示したものである。FIG. 4 schematically illustrates encryption of program data in each embodiment of the present invention.
10 遊技機 20 CPU 25 検証用暗号化手段 30 ROM 40 鍵受信手段 45 暗号送信手段 50 検証装置 55 記憶装置 60 検証用鍵生成手段 70 鍵送信手段 75 暗号受信手段 80 検証用復号化手段 90 照合手段 100 データベース b 認証結果 dx 格納用復号鍵 dy 検証用復号鍵 ex 格納用暗号鍵 ey 検証用暗号鍵 Fx 格納用暗号関数 Fx' 格納用復号関数 Fy 検証用暗号関数 Fy' 検証用復号関数 h 遊技情報 HC ホールコンピュータ Kx 格納用鍵生成関数 Ky 検証用鍵生成関数 L1 合成データ Ly 検証用暗号データ M1,M2,...,Mx 格納用暗号データ My 照合用データ P プログラムデータ Px 中間プログラムデータ Rx 格納用乱数生成関数 Ry 検証用乱数生成関数 Rz 合成用乱数生成関数 rx 格納用乱数 ry 検証用乱数 rz 合成用乱数 Sx 認証子合成関数 Sx' 認証子分解関数 Sy 遊技情報合成関数 Sy' 遊技情報分解関数 T 認証子生成関数 T' 認証子検証関数 t 認証子 x 遊技機型番 10 Game machine 20 CPU 25 Verification encryption means 30 ROM 40 Key reception means 45 Encryption transmission means 50 Verification device 55 Storage device 60 Verification key generation means 70 Key transmission means 75 Cryptographic reception means 80 Verification decryption means 90 Verification means 100 Database b Authentication result dx Decryption key for storage dy Decryption key for verification ex Encryption key for storage ey Encryption key for verification Fx Encryption function for storage Fx 'Decryption function for storage Fy Encryption function for verification Fy' Decryption function for verification h Game information HC Hall computer Kx key generation function for storage Ky key generation function for verification L1 synthetic data Ly cryptographic data for verification M1, M2, ..., Mx cryptographic data for storage My verification data P program data Px intermediate program data Rx storage Random number generation function Ry Random number generation function for verification Rz Random number generation function for synthesis rx Random number for storage ry Random number for verification rz Random number for synthesis Sx Authenticator synthesis function Sx 'Authenticator decomposition function Sy Game information synthesis function Sy' Function T authenticator generating function T 'authenticator verification function t authenticator x game machine model number
Claims (12)
号鍵との対を生成する検証用鍵生成段階と、 上記検証用暗号鍵を、同検証装置から遊技機に送信する
鍵送信段階と、 同遊技機内のCPUにより、同遊技機のROMに記録さ
れている制御プログラムを、上記検証装置から受信した
上記検証用暗号鍵によって暗号化された検証用暗号デー
タとする検証用暗号化段階と、 上記検証用暗号データを、同遊技機から前記検証装置に
送信する暗号送信段階と、 同検証装置内で、上記遊技機から受信した上記検証用暗
号データを、前記検証用復号鍵を用いて検証用復号デー
タとする検証用復号化段階と、 上記検証用復号データを、所定の照合用データと照合す
る照合段階とを含むことを特徴とする遊技機の検証方
法。1. A verification key generation step of generating a pair of a verification encryption key and a verification decryption key in a verification device, and a key transmission for transmitting the verification encryption key from the verification device to a gaming machine. And a step of verifying the control program recorded in the ROM of the gaming machine by the CPU in the gaming machine into verification encryption data encrypted by the verification encryption key received from the verification device. And a cryptographic transmission step of transmitting the cryptographic data for verification from the gaming machine to the verification device; and transmitting the cryptographic data for verification received from the gaming machine to the verification decryption key in the verification device. A verification method for a gaming machine, comprising: a decryption step for verification to be used as decryption data for verification; and a collation step of collating the decryption data for verification with predetermined collation data.
鍵受信手段と、 上記ROMに記録されている制御プログラムを、上記検
証用暗号鍵によって暗号化された検証用暗号データとす
る検証用暗号化手段と、 上記検証用暗号データを、下記の検証装置へ送信する暗
号送信手段とを有する遊技機であって、 検証用暗号鍵と検証用復号鍵との対を生成する検証用鍵
生成手段と、 上記検証用暗号鍵を前記遊技機の鍵受信手段へ送信する
鍵送信手段と、 前記暗号送信手段から送信された検証用暗号データを受
信する暗号受信手段と、 上記検証用暗号データを、前記検証用復号鍵を用いて検
証用復号データとする検証用復号化手段と、 上記検証用復号データを、所定の照合用データと照合す
る照合手段とを有する検証装置を用いて、前記ROMに
記録されている制御プログラムの真偽が検証可能である
ことを特徴とする遊技機。2. A CPU for controlling a game, a ROM in which a game control program is recorded, key receiving means for receiving a verification encryption key transmitted from a verification device described below, A verification encryption means for converting the control program into a verification encryption data encrypted by the verification encryption key, and a cryptographic transmission means for transmitting the verification encryption data to the following verification device. A verification key generation unit that generates a pair of a verification encryption key and a verification decryption key; a key transmission unit that transmits the verification encryption key to a key reception unit of the gaming machine; An encryption receiving unit that receives the verification encryption data transmitted from the transmission unit; a verification decryption unit that converts the verification encryption data into verification decryption data using the verification decryption key; De A gaming machine characterized in that the authenticity of a control program recorded in the ROM can be verified using a verification device having verification means for verifying data with predetermined verification data.
成する検証用鍵生成手段と、 上記検証用暗号鍵を下記の遊技機へ送信する鍵送信手段
と、 下記の遊技機から送信された検証用暗号データを受信す
る暗号受信手段と、 上記検証用暗号データを、前記検証用復号鍵を用いて検
証用復号データとする検証用復号化手段と、 上記検証用復号データを、所定の照合用データと照合す
る照合手段とを有する検証装置であって、 遊技の制御を行うCPUと、 遊技の制御プログラムが記録されているROMと、 前記鍵送信手段から送信された検証用暗号鍵を受信する
鍵受信手段と、 上記ROMに記録されている制御プログラムを、上記検
証用暗号鍵によって暗号化された検証用暗号データとす
る検証用暗号化手段と、 上記検証用暗号データを、前記暗号受信手段へ送信する
暗号送信手段とを有する遊技機における、上記ROMに
記録されている制御プログラムの真偽を検証可能なこと
を特徴とする検証装置。3. A verification key generation unit for generating a pair of a verification encryption key and a verification decryption key; a key transmission unit for transmitting the verification encryption key to the following gaming machine; An encryption receiving unit that receives the transmitted verification encryption data, a verification decryption unit that uses the verification decryption key to make the verification decryption data, and the verification decryption data, A verification device having verification means for verifying against predetermined verification data, comprising: a CPU for controlling a game; a ROM in which a game control program is recorded; and a verification code transmitted from the key transmission means. Key receiving means for receiving a key; verification encryption means for converting the control program recorded in the ROM into verification encryption data encrypted by the verification encryption key; and Said In a gaming machine having an encryption transmission means for transmitting to an encryption reception means, a verification device capable of verifying the authenticity of a control program recorded in the ROM.
号鍵との対を生成する検証用鍵生成段階と、 上記検証用暗号鍵を、同検証装置から遊技機に送信する
鍵送信段階と、 同遊技機内のCPUにより、同遊技機のROMに記録さ
れている制御プログラムと同検証用暗号鍵とを合成して
合成データとするとともに、同合成データを、上記検証
装置から受信した上記検証用暗号鍵によって暗号化され
た検証用暗号データとする検証用暗号化段階と、 上記検証用暗号データを、同遊技機から前記検証装置に
送信する暗号送信段階と、 同検証装置内で、上記遊技機から受信した上記検証用暗
号データを、前記検証用復号鍵を用いて検証用復号デー
タとするとともに、同検証用復号データをプログラム部
分と鍵部分とに分解する検証用復号化段階と、 上記プログラム部分を、所定の照合用データと照合する
照合段階とを含むことを特徴とする遊技機の検証方法。4. A verification key generating step of generating a pair of a verification encryption key and a verification decryption key in the verification device, and a key transmission for transmitting the verification encryption key from the verification device to the gaming machine. And the step, by the CPU in the gaming machine, combining the control program recorded in the ROM of the gaming machine and the encryption key for verification into synthesized data, and receiving the synthesized data from the verification device. A verification encryption step of making the verification encryption data encrypted with the verification encryption key; an encryption transmission step of transmitting the verification encryption data from the gaming machine to the verification device; A verification decryption step of converting the verification encryption data received from the gaming machine into verification decryption data using the verification decryption key, and decomposing the verification decryption data into a program portion and a key portion. When, The serial program part, method of verifying the gaming machine, characterized in that it comprises a verification step of matching the predetermined reference data.
鍵受信手段と、 上記ROMに記録されている制御プログラムと上記検証
用暗号鍵とを合成した合成データとするとともに、同合
成データを、同検証用暗号鍵によって暗号化された検証
用暗号データとする検証用暗号化手段と、 上記検証用暗号データを、下記の検証装置へ送信する暗
号送信手段とを有する遊技機であって、 検証用暗号鍵と検証用復号鍵との対を生成する検証用鍵
生成手段と、 上記検証用暗号鍵を前記遊技機の鍵受信手段へ送信する
鍵送信手段と、 前記暗号送信手段から送信された検証用暗号データを受
信する暗号受信手段と、 上記検証用暗号データを、前記検証用復号鍵を用いて検
証用復号データとするとともに、同検証用復号データを
プログラム部分と鍵部分とに分解する検証用復号化手段
と、 上記プログラム部分を、所定の照合用データと照合する
照合手段とを有する検証装置を用いて、前記ROMに記
録されている制御プログラムの真偽が検証可能であるこ
とを特徴とする遊技機。5. A CPU for controlling a game, a ROM in which a game control program is recorded, key receiving means for receiving a verification encryption key transmitted from the following verification device, and a ROM recorded in the ROM. Verifying encryption means for obtaining composite data obtained by synthesizing the control program and the verification encryption key, and converting the composite data to verification encryption data encrypted by the verification encryption key; And a cryptographic transmission means for transmitting cryptographic data for verification to the verification device described below, comprising: a verification key generation means for generating a pair of a verification encryption key and a verification decryption key; A key transmitting unit that transmits a key to a key receiving unit of the gaming machine; an encryption receiving unit that receives encryption data for verification transmitted from the encryption transmitting unit; and a decryption key for verification using the encryption data for verification. Verification decryption means for decomposing the verification decryption data into a program portion and a key portion, and verification means for verifying the program portion against predetermined verification data. A gaming machine characterized in that the authenticity of a control program recorded in the ROM can be verified using a verification device.
成する検証用鍵生成手段と、 上記検証用暗号鍵を下記の遊技機へ送信する鍵送信手段
と、 下記の遊技機から送信された検証用暗号データを受信す
る暗号受信手段と、 上記検証用暗号データを、前記検証用復号鍵を用いて検
証用復号データとするとともに、同検証用復号データを
プログラム部分と鍵部分とに分解する検証用復号化手段
と、 上記プログラム部分を、所定の照合用データと照合する
照合手段とを有する検証装置であって、 遊技の制御を行うCPUと、 遊技の制御プログラムが記録されているROMと、 前記鍵送信手段から送信された検証用暗号鍵を受信する
鍵受信手段と、 上記ROMに記録されている制御プログラムと上記検証
用暗号鍵とを合成した合成データとするとともに、同合
成データを、同検証用暗号鍵によって暗号化された検証
用暗号データとする検証用暗号化手段と、 上記検証用暗号データを、前記暗号受信手段へ送信する
暗号送信手段とを有する遊技機における、上記ROMに
記録されている制御プログラムの真偽を検証可能なこと
を特徴とする検証装置。6. A verification key generation means for generating a pair of a verification encryption key and a verification decryption key; a key transmission means for transmitting the verification encryption key to the following gaming machine; Cipher receiving means for receiving the transmitted encryption data for verification, and the encryption data for verification, as decryption data for verification using the decryption key for verification, and the decryption data for verification with a program portion and a key portion A verification device having a decryption means for verification for decomposing the program part, and a verification means for verifying the program portion with predetermined verification data, wherein a CPU for controlling a game and a control program for the game are recorded. ROM, key receiving means for receiving the verification encryption key transmitted from the key transmission means, and synthetic data obtained by synthesizing the control program recorded in the ROM with the verification encryption key. In addition, a verification encryption unit that converts the synthesized data into verification encryption data encrypted with the verification encryption key, and an encryption transmission unit that transmits the verification encryption data to the encryption reception unit. A verification device capable of verifying the authenticity of a control program recorded in the ROM in a gaming machine having the same.
号鍵との対を生成する検証用鍵生成段階と、 上記検証用暗号鍵を、同検証装置から遊技機に送信する
鍵送信段階と、 同遊技機内のCPUにより、同遊技機のROMに記録さ
れている制御プログラムと同検証用暗号鍵とを合成して
合成データとするとともに、同合成データを、上記検証
装置から受信した上記検証用暗号鍵によって暗号化され
た検証用暗号データとする検証用暗号化段階と、 上記検証用暗号データを、同遊技機から前記検証装置に
送信する暗号送信段階と、 同検証装置内で、上記遊技機から受信した上記検証用暗
号データを、前記検証用復号鍵を用いて検証用復号デー
タとするとともに、同検証用復号データをプログラム部
分と鍵部分とに分解する検証用復号化段階と、 上記鍵部分を、検証用暗号鍵と照合する照合段階とを含
むことを特徴とする遊技機の検証方法。7. A verification key generation step of generating a pair of a verification encryption key and a verification decryption key in the verification device, and a key transmission for transmitting the verification encryption key from the verification device to the gaming machine. And the step, by the CPU in the gaming machine, combining the control program recorded in the ROM of the gaming machine and the encryption key for verification into synthesized data, and receiving the synthesized data from the verification device. A verification encryption step of making the verification encryption data encrypted with the verification encryption key; an encryption transmission step of transmitting the verification encryption data from the gaming machine to the verification device; A verification decryption step of converting the verification encryption data received from the gaming machine into verification decryption data using the verification decryption key, and decomposing the verification decryption data into a program portion and a key portion. When, The Kikagi portion, the verification method of a gaming machine which comprises a collating step for collating the verification encryption key.
鍵受信手段と、 上記ROMに記録されている制御プログラムと上記検証
用暗号鍵とを合成した合成データとするとともに、同合
成データを、同検証用暗号鍵によって暗号化された検証
用暗号データとする検証用暗号化手段と、 上記検証用暗号データを、下記の検証装置へ送信する暗
号送信手段とを有する遊技機であって、 検証用暗号鍵と検証用復号鍵との対を生成する検証用鍵
生成手段と、 上記検証用暗号鍵を前記遊技機の鍵受信手段へ送信する
鍵送信手段と、 前記暗号送信手段から送信された検証用暗号データを受
信する暗号受信手段と、 上記検証用暗号データを、前記検証用復号鍵を用いて検
証用復号データとするとともに、同検証用復号データを
プログラム部分と鍵部分とに分解する検証用復号化手段
と、 上記鍵部分を、検証用暗号鍵と照合する照合手段とを有
する検証装置を用いて、前記CPUの真偽が検証可能で
あることを特徴とする遊技機。8. A CPU for controlling a game, a ROM in which a game control program is recorded, key receiving means for receiving a verification encryption key transmitted from a verification device described below, and a ROM recorded in the ROM. Verifying encryption means for obtaining composite data obtained by synthesizing the control program and the verification encryption key, and converting the composite data to verification encryption data encrypted by the verification encryption key; And a cryptographic transmission means for transmitting cryptographic data for verification to the verification device described below, comprising: a verification key generation means for generating a pair of a verification encryption key and a verification decryption key; Key transmission means for transmitting a key to key reception means of the gaming machine; encryption reception means for receiving verification encryption data transmitted from the encryption transmission means; and a verification decryption key for the verification encryption data. A verification decryption means for decomposing the verification decryption data into a program part and a key part, and a verification means for verifying the key part with a verification encryption key. A gaming machine wherein the authenticity of the CPU can be verified using a device.
成する検証用鍵生成手段と、 上記検証用暗号鍵を下記の遊技機へ送信する鍵送信手段
と、 下記の遊技機から送信された検証用暗号データを受信す
る暗号受信手段と、 上記検証用暗号データを、前記検証用復号鍵を用いて検
証用復号データとするとともに、同検証用復号データを
プログラム部分と鍵部分とに分解する検証用復号化手段
と、 上記鍵部分を、検証用暗号鍵と照合する照合手段とを有
する検証装置であって、 遊技の制御を行うCPUと、 遊技の制御プログラムが記録されているROMと、 前記鍵送信手段から送信された検証用暗号鍵を受信する
鍵受信手段と、 上記ROMに記録されている制御プログラムと上記検証
用暗号鍵とを合成した合成データとするとともに、同合
成データを、同検証用暗号鍵によって暗号化された検証
用暗号データとする検証用暗号化手段と、 上記検証用暗号データを、前記暗号受信手段へ送信する
暗号送信手段とを有する遊技機における、上記CPUの
真偽を検証可能なことを特徴とする検証装置。9. A verification key generation means for generating a pair of a verification encryption key and a verification decryption key; a key transmission means for transmitting the verification encryption key to the following gaming machine; Cipher receiving means for receiving the transmitted encryption data for verification, and the encryption data for verification, as decryption data for verification using the decryption key for verification, and the decryption data for verification with a program portion and a key portion A verification device comprising: a decryption means for verification for decomposing the key part; and a verification means for verifying the key portion with a cryptographic key for verification, wherein a CPU for controlling a game and a control program for the game are recorded. ROM, key receiving means for receiving the verification encryption key transmitted from the key transmission means, and synthetic data obtained by synthesizing the control program recorded in the ROM and the verification encryption key. Data for the verification encryption data encrypted with the same verification encryption key, and encryption transmission means for transmitting the verification encryption data to the encryption receiving means. A verification device capable of verifying the authenticity of the CPU.
復号鍵との対を生成する検証用鍵生成段階と、 上記検証用暗号鍵を、同検証装置から遊技機に送信する
鍵送信段階と、 同遊技機内のCPUにより、合成用乱数を生成し、同遊
技機のROMに記録されている制御プログラムと同合成
用乱数とを合成して合成データとするとともに、同合成
データを上記検証装置から受信した上記検証用暗号鍵に
よって暗号化された検証用暗号データとする検証用暗号
化段階と、 上記検証用暗号データを、同遊技機から前記検証装置に
送信する暗号送信段階と、 同検証装置内で、上記遊技機から受信した上記検証用暗
号データを、前記検証用復号鍵を用いて検証用復号デー
タとするとともに、同検証用復号データをプログラム部
分と乱数部分とに分解する検証用復号化段階と、 上記プログラム部分を、所定の照合用データと照合する
照合段階とを含むことを特徴とする遊技機の検証方法。10. A verification key generating step of generating a pair of a verification encryption key and a verification decryption key in a verification device, and a key transmission for transmitting the verification encryption key from the verification device to a gaming machine. Steps: The CPU in the gaming machine generates a combining random number, combines the control program recorded in the ROM of the gaming machine with the combining random number to generate combined data, A verification encryption step to be verification encryption data encrypted by the verification encryption key received from the verification apparatus, and an encryption transmission step of transmitting the verification encryption data from the gaming machine to the verification apparatus, In the verification device, the verification encryption data received from the gaming machine is converted into verification decryption data using the verification decryption key, and the verification decryption data is decomposed into a program portion and a random number portion. And testimony for decoding phase, the program portion, the verification method of a game machine which comprises a collating step for collating the predetermined reference data.
鍵受信手段と、 合成用乱数を生成し、上記ROMに記録されている制御
プログラムと同合成用乱数とを合成した合成データとす
るとともに、同合成データを、上記検証用暗号鍵によっ
て暗号化された検証用暗号データとする検証用暗号化手
段と、 上記検証用暗号データを、下記の検証装置へ送信する暗
号送信手段とを有する遊技機であって、 検証用暗号鍵と検証用復号鍵との対を生成する検証用鍵
生成手段と、 上記検証用暗号鍵を前記遊技機の鍵受信手段へ送信する
鍵送信手段と、 前記暗号送信手段から送信された検証用暗号データを受
信する暗号受信手段と、 上記検証用暗号データを、前記検証用復号鍵を用いて検
証用復号データとするとともに、同検証用復号データ
を、プログラム部分と乱数部分とに分解する検証用復号
化手段と、 上記プログラム部分を、所定の照合用データと照合する
照合手段とを有する検証装置を用いて、前記ROMに記
録されている制御プログラムの真偽が検証可能であるこ
とを特徴とする遊技機。11. A CPU for controlling a game, a ROM in which a control program for the game is recorded, key receiving means for receiving a verification encryption key transmitted from the following verification device, and generation of a synthesis random number A verification cipher for converting the control program recorded in the ROM and the synthesizing random number into synthetic data, and using the synthesizing data as verification cryptographic data encrypted with the verification cryptographic key. And a cryptographic transmission means for transmitting the verification encryption data to the verification device described below, wherein the verification key generation means generates a pair of a verification encryption key and a verification decryption key. Key transmission means for transmitting the verification encryption key to key reception means of the gaming machine; encryption reception means for receiving the verification encryption data transmitted from the encryption transmission means; and the verification encryption data Verification decryption means for decomposing the verification decryption data into a program portion and a random number portion while using the verification decryption key as the verification decryption data; and A gaming machine characterized in that the authenticity of a control program recorded in the ROM can be verified using a verification device having a verification means for verifying the control program.
生成する検証用鍵生成手段と、 上記検証用暗号鍵を下記の遊技機へ送信する鍵送信手段
と、 下記の遊技機から送信された検証用暗号データを受信す
る暗号受信手段と、 上記検証用暗号データを、前記検証用復号鍵を用いて検
証用復号データとするとともに、同検証用復号データ
を、プログラム部分と乱数部分とに分解する検証用復号
化手段と、 上記プログラム部分を、所定の照合用データと照合する
照合手段とを有する検証装置であって、 遊技の制御を行うCPUと、 遊技の制御プログラムが記録されているROMと、 前記鍵送信手段から送信された検証用暗号鍵を受信する
鍵受信手段と、 合成用乱数を生成し、上記ROMに記録されている制御
プログラムと同合成用乱数とを合成した合成データとす
るとともに、同合成データを、上記検証用暗号鍵によっ
て暗号化された検証用暗号データとする検証用暗号化手
段と、 上記検証用暗号データを、前記暗号受信手段へ送信する
暗号送信手段とを有する遊技機における、上記ROMに
記録されている制御プログラムの真偽を検証可能なこと
を特徴とする検証装置。12. A verification key generation means for generating a pair of a verification encryption key and a verification decryption key, key transmission means for transmitting the verification encryption key to the following gaming machine, Cipher receiving means for receiving the transmitted cryptographic data for verification, and using the cryptographic data for verification as decryption data for verification by using the decryption key for verification, A verification device having verification decryption means for decomposing the program into parts, and verification means for verifying the program portion with predetermined verification data, wherein a CPU for controlling a game and a control program for the game are recorded. ROM, key receiving means for receiving the verification encryption key transmitted from the key transmitting means, generating a synthesis random number, and synthesizing the control program and the synthesis random number stored in the ROM. Verification encryption means for converting the synthesized data into verification encryption data encrypted with the verification encryption key, and an encryption for transmitting the verification encryption data to the encryption reception means. A verification device capable of verifying the authenticity of a control program recorded in the ROM in a gaming machine having a transmission unit.
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP23915199A JP2001062128A (en) | 1999-08-26 | 1999-08-26 | Verification method of game machine, game machine, and verification device |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP23915199A JP2001062128A (en) | 1999-08-26 | 1999-08-26 | Verification method of game machine, game machine, and verification device |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JP2001062128A true JP2001062128A (en) | 2001-03-13 |
Family
ID=17040520
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP23915199A Pending JP2001062128A (en) | 1999-08-26 | 1999-08-26 | Verification method of game machine, game machine, and verification device |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JP2001062128A (en) |
Cited By (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| RU2265885C2 (en) * | 2001-06-12 | 2005-12-10 | Ай Джи Ти | Method and device for protecting operative data of playing device |
| RU2302276C2 (en) * | 2002-04-25 | 2007-07-10 | Ай Джи Ти | Authentication in protected computerized game system |
| CN110750802A (en) * | 2019-10-14 | 2020-02-04 | 创元网络技术股份有限公司 | Framework for protecting key data based on mimicry defense |
-
1999
- 1999-08-26 JP JP23915199A patent/JP2001062128A/en active Pending
Cited By (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| RU2265885C2 (en) * | 2001-06-12 | 2005-12-10 | Ай Джи Ти | Method and device for protecting operative data of playing device |
| RU2302276C2 (en) * | 2002-04-25 | 2007-07-10 | Ай Джи Ти | Authentication in protected computerized game system |
| CN110750802A (en) * | 2019-10-14 | 2020-02-04 | 创元网络技术股份有限公司 | Framework for protecting key data based on mimicry defense |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| EP3804213B1 (en) | Shared secret establishment | |
| EP0881559B1 (en) | Computer system for protecting software and a method for protecting software | |
| Gassend et al. | Controlled physical random functions and applications | |
| JP3867388B2 (en) | Conditional authentication apparatus and method | |
| US6389535B1 (en) | Cryptographic protection of core data secrets | |
| US9043606B2 (en) | Apparatus for verifying and for generating an encrypted token and methods for same | |
| KR100670005B1 (en) | Verification device, system and integrity verification method for remotely verifying the integrity of memory for mobile platform | |
| US20240388444A1 (en) | Method of verification for machine learning models | |
| CA2071771A1 (en) | Cryptographic facility environment backup/restore and replication in a public key cryptosystem | |
| CA2545015A1 (en) | Portable security transaction protocol | |
| WO1999031842A1 (en) | Conditional use private key distribution | |
| JP2006211349A (en) | File encryption / decryption program, program storage medium | |
| JP3749640B2 (en) | IC card using device, IC card and storage medium | |
| JP3580333B2 (en) | How to equip the encryption authentication function | |
| US20070277037A1 (en) | Software component authentication via encrypted embedded self-signatures | |
| WO2007148258A2 (en) | Integrity checking and reporting model for hardware rooted trust enabled e-voting platform | |
| US20080104402A1 (en) | Countermeasure against fault-based attack on RSA signature verification | |
| Mark et al. | A secured online voting system by using blockchain as the medium | |
| JPH1139156A (en) | Enciphered data decoding device | |
| CN101661573B (en) | Method for producing electronic seal and method for using electronic seal | |
| JP2002248242A (en) | Game medium dispensing method and game machine and game medium dispenser device | |
| JP2001062128A (en) | Verification method of game machine, game machine, and verification device | |
| US7392523B1 (en) | Systems and methods for distributing objects | |
| CN114357385A (en) | Software protection and authorization method, system and device | |
| JP2000287065A (en) | Image processing system |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20060811 |
|
| A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20090806 |
|
| A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20091001 |
|
| A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20091217 |