JP5729985B2 - A highly secure gaming machine communication device - Google Patents
A highly secure gaming machine communication device Download PDFInfo
- Publication number
- JP5729985B2 JP5729985B2 JP2010264590A JP2010264590A JP5729985B2 JP 5729985 B2 JP5729985 B2 JP 5729985B2 JP 2010264590 A JP2010264590 A JP 2010264590A JP 2010264590 A JP2010264590 A JP 2010264590A JP 5729985 B2 JP5729985 B2 JP 5729985B2
- Authority
- JP
- Japan
- Prior art keywords
- data
- stream
- dummy
- communication path
- check
- 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.)
- Active
Links
- 238000004891 communication Methods 0.000 title claims description 100
- 230000005540 biological transmission Effects 0.000 claims description 22
- 239000000758 substrate Substances 0.000 claims description 15
- 238000012545 processing Methods 0.000 claims description 14
- 238000004364 calculation method Methods 0.000 description 16
- 238000000034 method Methods 0.000 description 16
- 230000005856 abnormality Effects 0.000 description 8
- 238000001514 detection method Methods 0.000 description 5
- 238000010586 diagram Methods 0.000 description 5
- 238000012937 correction Methods 0.000 description 2
- 239000004973 liquid crystal related substance Substances 0.000 description 2
- 241000209202 Bromus secalinus Species 0.000 description 1
- 230000004075 alteration Effects 0.000 description 1
- 238000012790 confirmation Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
Images
Landscapes
- Pinball Game Machines (AREA)
Description
本発明は、遊技機の通信装置に関する。より詳細には、遊技機のセキュリティを確保した遊技機の通信装置に関する。 The present invention relates to a communication device for a gaming machine. More specifically, the present invention relates to a gaming machine communication device that secures gaming machine security.
従来技術において、遊技機の主な制御を実行するメイン基板は、遊技機制御用マイクロコンピュータを搭載し、さらに、遊技球の払い出しを制御する払い出し基板や液晶画面などの図柄表示を制御する図柄表示基板等のサブ基板に対して、処理内容が定義されている制御コマンドを送信する。そのサブ基板はメイン基板から送信された制御コマンドに基づいて動作する。 In the prior art, the main board that performs the main control of the gaming machine is equipped with a microcomputer for controlling the gaming machine, and further, the payout board that controls the payout of game balls and the symbol display board that controls the display of symbols such as a liquid crystal screen A control command in which processing contents are defined is transmitted to the sub-board. The sub board operates based on a control command transmitted from the main board.
それらメイン基板とサブ基板との通信路において、制御コマンドは、暗号化などが施されておらず、第三者が読み取り可能な状態で送信され、また、他のデータが含まれずに制御コマンドのみが単独で利用されている。したがって、容易に制御コマンドの抽出及び解読が行われることから、第三者によって制御コマンドが解析されるという問題があった。また、制御コマンドが解読されることで、遊技機への不正を行う者が制御コマンドを改ざんして、不正に賞球を得るなどのおそれもあった。 In the communication path between the main board and the sub board, the control command is not encrypted and transmitted in a state that can be read by a third party, and other control data is not included. Is used alone. Therefore, since the control command is easily extracted and decoded, there is a problem that the control command is analyzed by a third party. In addition, since the control command is deciphered, there is a risk that a person who cheats the gaming machine may tamper with the control command and illegally obtain a prize ball.
さらに、それらメイン基板とサブ基板との通信路は、ノイズ等の影響を含め、その通信路の信頼性が確立されることなく利用されているため、従来の通信方法において、通信路の信頼性を得るためには複数回同一データを送信し、合致した場合にデータを信頼する等の手法で使用されていた。また、遊技機への不正を行う者が不正改造されたメイン基板を通信路に接続し、その不正改造されたメイン基板によって制御コマンドが発行された場合、サブ基板側はこのような不正を検出することができなかった。 Further, since the communication path between the main board and the sub board is used without establishing the reliability of the communication path including the influence of noise or the like, the reliability of the communication path in the conventional communication method In order to obtain data, the same data is transmitted a plurality of times. In addition, if an unauthorized person to a gaming machine connects an illegally modified main board to a communication path and a control command is issued by the illegally modified main board, the sub board side detects such an illegality. I couldn't.
本発明は、遊技機、特にパチンコ機におけるメイン基板とサブ基板との間における通信路の信頼性を確保するとともに、その通信路において流れるデータを複雑化させ制御コマンドの解読を困難にすることで、制御コマンドの不正送信や改ざんなどの可能性を検出し、基板間の通信で用いられるデータの機密性及び完全性を確保することを目的とする。 The present invention secures the reliability of a communication path between a main board and a sub board in a gaming machine, particularly a pachinko machine, and complicates data flowing in the communication path to make it difficult to decode a control command. The purpose is to detect the possibility of unauthorized transmission or falsification of control commands and to ensure the confidentiality and integrity of data used in communication between boards.
本発明による遊技機における通信装置は、第1基板と、通信路を介して第1基板に接続されている第2基板とを備え、第1基板は、ダミーデータを連続して生成するダミーデータ生成器と、ダミーデータにチェックデータ生成規則を適用してチェックデータを生成し、ダミーデータとチェックデータとからなるダミーデータ列を生成するとともに、少なくともダミーデータのみからなるダミーデータ列をさらに生成し、第2基板に実行させる処理内容が定義されている制御コマンドデータとダミーデータ列とからデータストリームを生成するストリームデータ生成器と、データストリームを第2基板に送信する送信モジュールとを備え、第2基板は、データストリームを受信する受信モジュールと、受信したデータストリームからダミーデータ列と制御コマンドデータとを取得するとともに、ダミーデータ列におけるチェックデータがチェックデータ生成規則に基づいて生成されているか否かを確認し、さらに、データストリームが正常であるか否かを確認するストリームデータ解析器とを備え、ストリームデータ解析器は、チェックデータがチェックデータ生成規則に基づいて生成されている場合、通信路の信頼性を確立し、さらに、ストリームデータ解析器は、受信したデータストリームが正常であるか否かを確認し、データストリームが正常ではない場合、通信路の信頼性を否定することができる。 A communication device in a gaming machine according to the present invention includes a first board and a second board connected to the first board via a communication path, and the first board generates dummy data continuously. A check data generation rule is applied to the generator and the dummy data to generate check data, and a dummy data string including dummy data and check data is generated, and a dummy data string including at least dummy data is further generated. A stream data generator that generates a data stream from control command data in which processing contents to be executed by the second board are defined and a dummy data string, and a transmission module that transmits the data stream to the second board. The two boards include a receiving module that receives the data stream and dummy data from the received data stream. A stream for acquiring a column and control command data, checking whether check data in a dummy data column is generated based on a check data generation rule, and further checking whether a data stream is normal The stream data analyzer establishes the reliability of the communication path when the check data is generated based on the check data generation rule, and the stream data analyzer further receives the received data stream. If the data stream is not normal, the reliability of the communication path can be denied.
本発明による遊技機における通信装置において、データストリームが正常であるか否かの確認は、通信路の信頼性が確立した後、データストリームが連続しているか否かを確認することによって行うことができる。 In the communication device in the gaming machine according to the present invention, whether or not the data stream is normal can be confirmed by confirming whether or not the data stream is continuous after the reliability of the communication path is established. it can.
本発明による遊技機における通信装置において、ダミーデータ列にチェックデータが含まれている場合、データストリームが正常であるか否かの確認は、通信路の信頼性が確立した後、ダミーデータ列のチェックデータがチェックデータ生成規則に基づいて生成されているか否かを確認することによって行うことができる。 In the communication device in the gaming machine according to the present invention, when the check data is included in the dummy data string, whether or not the data stream is normal is checked after the reliability of the communication path is established. This can be done by checking whether the check data is generated based on the check data generation rule.
本発明による遊技機における通信装置において、第2基板は、通信路データレジスタをさらに備え、ストリームデータ生成器は、各基板ごとの固有の値に基づいて生成されるキーデータをダミーデータ列に含めてデータストリームを生成するよう構成されており、ストリームデータ解析器は、通信路の信頼性を確立するときにダミーデータ列からキーデータを取得し、通信路データレジスタに保存するよう構成されており、データストリームが正常であるか否かの確認は、通信路の信頼性が確立した後、ストリームデータ解析器が、ダミーデータ列からキーデータを取得し、取得したキーデータと通信路データレジスタに保存されているキーデータとを比較することによって行うことができる。 In the communication device in the gaming machine according to the present invention, the second board further includes a communication path data register, and the stream data generator includes key data generated based on a unique value for each board in the dummy data string. The stream data analyzer is configured to acquire key data from the dummy data string and store it in the communication path data register when establishing the reliability of the communication path. To confirm whether the data stream is normal, after the reliability of the communication path is established, the stream data analyzer acquires the key data from the dummy data string, and stores the acquired key data in the communication path data register. This can be done by comparing the stored key data.
本発明による遊技機における通信装置において、ストリームデータ解析器は、制御コマンドデータを取得した後、取得した制御コマンドデータ以後に送信されるデータストリームにおいて、データストリームが正常であるか否かの確認を行うことができる。 In the communication device in the gaming machine according to the present invention, the stream data analyzer obtains the control command data, and then checks whether the data stream is normal in the data stream transmitted after the obtained control command data. It can be carried out.
本発明による遊技機における通信装置において、第1基板は、暗号化回路を備え、第2基板は、暗号化回路によって暗号化されたデータを復号化することができる復号化回路を備える。 In the communication device in the gaming machine according to the present invention, the first board includes an encryption circuit, and the second board includes a decryption circuit capable of decrypting the data encrypted by the encryption circuit.
本発明による遊技機における通信装置において、キーデータ及び/又はチェックデータは、所定のダミーデータ列のみに含めることができる。 In the communication device in the gaming machine according to the present invention, the key data and / or the check data can be included only in a predetermined dummy data string.
本発明によれば、通信路の信頼性が確立されていない場合、通信路を流れるデータについてノイズ等の影響を含め、不正送信や改ざんなどによる信頼性の低いデータを検出し、排除することができる。これにより、データの送信を行う基板は同一データを複数回送信する必要がなくなる。 According to the present invention, when the reliability of the communication path is not established, it is possible to detect and eliminate data with low reliability due to unauthorized transmission or alteration, including the influence of noise or the like, on the data flowing through the communication path. it can. This eliminates the need for a substrate that transmits data to transmit the same data multiple times.
また、基板間における通信路の信頼性が常に確認されることから、遊技機の開発者は通信路の信頼性を考慮した設計を行うことができる。例えば、通信路の信頼性が確立された後に信頼性が否定された場合、遊技機の液晶画面や遊技機を管理するコンピュータにその旨を通知したり、通信路の信頼性が確立されるまで受信側基板は受信データを廃棄するなどの処理を考慮して設計することが可能となる。 In addition, since the reliability of the communication path between the boards is always confirmed, the developer of the gaming machine can perform a design considering the reliability of the communication path. For example, if the reliability is denied after establishing the reliability of the communication channel, the fact is notified to the liquid crystal screen of the gaming machine or the computer managing the gaming machine, or until the reliability of the communication channel is established The receiving board can be designed in consideration of processing such as discarding received data.
さらに、第三者によるメイン基板とサブ基板との間の通信内容の解読を困難にし、第三者による通信内容の改ざんを防止する。これらにより、図柄の表示の制御、そして、遊技機において最も重要である払い出し処理などについて常に正常な動作が行われるようにすることができる。 Further, it is difficult for a third party to decode the communication content between the main board and the sub-board, and the communication contents are not falsified by the third party. As a result, it is possible to always perform normal operations for the control of the display of symbols and the payout process which is most important in the gaming machine.
図1は、本発明の実施の一形態に係る遊技機100の概略を示したブロック図である。遊技機100は、メイン基板120、サブ基板である図柄表示基板130及び払い出し基板140、電源150、並びに、システムバス110を備える。電源150は、各基板120乃至140に電源を供給する。各基板120乃至140は、システムバス110を介して接続されている。図柄表示基板130は、遊技機に表示される図柄を制御する。払い出し基板140は、遊技機の払い出しについての処理を制御する。メイン基板120は、通信路となるシステムバス110を介して図柄表示基板130や、払い出し基板140などと通信し、それらを制御する。システムバス110は、シリアル通信用のバスとすることができ、必要に応じてパラレル通信用のバスとすることもできる。なお、遊技機100には、図柄表示基板130及び払い出し基板140以外の他の機能の基板が含まれるよう構成することもできる。そして、各基板は、制御コマンドを送受信することができ、その制御コマンドを受信した基板は、制御コマンドに基づいて処理を実行する。
FIG. 1 is a block diagram showing an outline of a
図2は、本発明の実施の一形態に係るメイン基板120の概要を示したブロック図である。メイン基板120は、CPU205、RAM210、送信モジュール215、受信モジュール220、送信制御コマンドデータレジスタ225、受信制御コマンドデータレジスタ230、通信路データレジスタ235、ダミーデータ生成器240、ストリームデータ生成器245、暗号化回路250、復号化回路255、ストリームデータ解析器260、及び、ROM265を備える。
FIG. 2 is a block diagram showing an outline of the
CPU205は、CPUバス265を介して、RAM210、ROM265、送信制御コマンドデータレジスタ225、受信制御コマンドデータレジスタ230、通信路データレジスタ235に接続されている。また、送信モジュール215及び受信モジュール220は、通信路であるシステムバス110に接続されており、メイン基板120は、そのシステムバス110を介して他のサブ基板130及び140と通信することができる。復号化回路255は、暗号化回路250が暗号化したデータを復号化することができる。
The
上記のメイン基板120の構成は一つの実施例である。異なる構成のメイン基板120を採用することは、当業者であれば理解されるだろう。例えば、送信制御コマンドデータレジスタ225、受信制御コマンドデータレジスタ230、通信路データレジスタ235は、一又は二以上のレジスタに統合することができる。また、他の実施例として、各レジスタ225、230、及び、235の代わりとしてRAM210を用いることもできる。さらに他の実施例として、ダミーデータ生成器240、ストリームデータ生成器245、暗号化回路250、復号化回路255、及び、ストリームデータ解析器260それぞれが行う処理は、ROM265に格納されているプログラムに基づいてCPU205によって実行されるようにすることもできる。
The configuration of the
本実施例において、サブ基板130及び140は、メイン基板120と全く同一の構成を備えることができる。本実施例では、メイン基板120とサブ基板130及び140とは、双方向でデータストリームの送受信を行うことができる。
In this embodiment, the
他の実施例として、サブ基板130及び140の一方又は両方を、メイン基板120とは異なる構成とすることもできる。例えば、サブ基板130及び140に、図2に示されていない他の部品を追加することができ、また、図2に図示されているある構成のうち一部を省いた基板とすることもできる。
As another example, one or both of the sub-boards 130 and 140 may be configured differently from the
また、他の実施例として、メイン基板120は、データストリームを送信するための構成のみを備えることができる。例えば、その構成は、CPU205、RAM210、ROM265、送信モジュール215、送信制御コマンドデータレジスタ225、ダミーデータ生成器240、ストリームデータ生成器245、暗号化回路250、及び、CPUバス265の内の一部又は全部を含む。
As another example, the
そして、サブ基板130及び140は、データストリームを受信するための構成のみを備えることができる。例えば、その構成は、CPU205、RAM210、ROM265、受信モジュール220、受信制御コマンドデータレジスタ230、通信路データレジスタ235、復号化回路255、ストリームデータ解析器260、及び、CPUバス265の内の一部又は全部を含む。本実施例では、データストリームは、メイン基板120からサブ基板130及び140への一方向のみに送信される。
The sub-boards 130 and 140 may have only a configuration for receiving the data stream. For example, the configuration includes
図3は、本発明によるデータストリームの送信側動作の一実施例について説明するフローチャートである。 FIG. 3 is a flowchart for explaining an embodiment of the data stream transmission side operation according to the present invention.
最初に、ストリームデータ生成器245は、キーデータを生成する(ステップ305)。キーデータは、各基板に固有の情報であることが望ましい。本実施例において、各基板が固有のID(CPU毎に割り振られているIDなど)を有する場合、キーデータは、その固有のID自体、又は、その固有のIDに基づいて生成されたデータとすることができる。また、キーデータとして、他の異なる規則にしたがって生成された値(例えば、固定値)を用いることもできる。その後、ストリームデータ生成器245は、ダミーデータ生成器240が生成したダミーデータを用いてダミーデータ列を生成する(ステップ310)。
First, the
暗号化回路250は、生成されたダミーデータ列を暗号化する(ステップ315)。ただし、データを秘匿にする重要性が低い場合は、ダミーデータ列を暗号化するステップを省略することができる。ストリームデータ生成器245は、制御コマンドが生成されたか否かを確認する(ステップ320)。本実施例において、CPU205は、制御コマンドを生成し送信制御コマンドデータレジスタ225に保存する。この場合、ストリームデータ生成器245は、送信制御コマンドデータレジスタ225に定期的にアクセスし、保存されている制御コマンドを取得することで、制御コマンドが生成されたか否かを確認することができる。他の実施例では、CPU205が、制御コマンドをストリームデータ生成器245に送信するようにすることができる。この場合、ストリームデータ生成器245は、CPU205から制御コマンドを受信することによって制御コマンドが生成されたことを確認する。
The encryption circuit 250 encrypts the generated dummy data string (step 315). However, when the importance of keeping data secret is low, the step of encrypting the dummy data string can be omitted. The
制御コマンドが生成されていた場合(ステップ320)、ストリームデータ生成器245は、暗号化されているダミーデータ列に制御コマンドを付加する(ステップ325)。他の実施例として、ダミーデータ列を最初に生成するときのみ、ストリームデータ生成器245が、ダミーデータ列の先頭に先頭ストリームデータを付加するようにすることができる。例えば、その先頭ストリームデータは、通常の通信では使われないデータ(例えば、"00000000"、"11111111"、又は、それらの組み合わせ)とすることができる。これにより、受信側の基板は、先頭ストリームデータを検出することで、受信したデータがデータストリームの先頭データであるか否かを容易に判断することができる。
When the control command has been generated (step 320), the
ストリームデータ生成器245は、ステップ315及び325において生成されたデータ列をデータストリームに変換する(ステップ330)。この場合に、ストリームデータ生成器245は、データ列をデータストリームに変換するときに、エラー検出訂正用のデータをデータストリームに付加して送信するようにしてもよい。これにより、通信路において通信エラーが発生した場合であっても、受信側の基板でエラー訂正を行うことができ、通信路の利便性が向上する。その後、送信モジュール215は、生成されたデータストリームを他の基板に送信する(ステップ335)。
The
図3の処理フローから理解されるように、送信側の基板の処理は正常に動作する限り、データストリームの生成に関して中断又は休止することがないことから、送信側の基板は、連続した途切れがないデータストリームを生成することができる。 As can be understood from the processing flow of FIG. 3, as long as the processing of the transmission-side board does not operate normally, there is no interruption or pause with respect to the generation of the data stream. No data stream can be generated.
図4は、本発明によるデータストリームの生成過程のイメージを示した概要図である。この図では、1フレーム分のデータを8ビットと仮定する。したがって、1フレームには、28通りの数が表現される(つまり、10進数で表現すると、その数は0乃至255となる)。図4(a)に示すデータストリームの状態405は、5フレーム分のデータからなるダミーデータ455が生成されていることを示す。図4(b)に示すデータストリームの状態410は、キーデータ460がダミーデータ455に付加されていることを示す。その後、図4(c)に示すデータストリームの状態415は、ダミーデータ455及びキーデータ460にチェックデータ465が付加され、ダミーデータ列480が生成されていることを示す(図3のステップ310)。
FIG. 4 is a schematic diagram illustrating an image of a data stream generation process according to the present invention. In this figure, one frame of data is assumed to be 8 bits. Thus, in one frame, the number of ways 2 8 is expressed (i.e., when expressed in decimal, the number is 0 to 255). A
本実施例において、ダミーデータ列は、一定のフレーム数のデータとすることができる。本実施例では、ダミーデータ列は、5フレーム分のダミーデータ455と2フレーム分のキーデータ460からなる7フレーム分のデータの後ろに、1フレーム分のチェックデータ465が付加された8フレーム分のデータ列である。他の実施例として、ダミーデータ列はキーデータを含めず生成することもできる。この場合、7フレーム分のデータ全てがダミーデータとなる。
In this embodiment, the dummy data string can be data of a certain number of frames. In this embodiment, the dummy data string is 8 frames in which check
ダミーデータ生成器240によって生成されるダミーデータ455は、所定のダミーデータ生成規則によって生成されたデータ(例えば、生成されるデータは常に"11110000"など)、又は、ランダムに生成されたデータとすることができる。ここで、ダミーデータは、固定値又は一定値ではないランダムに生成されたデータであるほうが好ましい。なぜならば、後述するチェックデータは、ダミーデータに基づくことから、ダミーデータが変化するとチェックデータも値が変化するからである。これにより、ダミーデータが生成されるたびに、ダミーデータ値が変化することによって、第三者によるダミーデータ及びチェックデータの解読は、より困難なものとなる。
The
チェックデータ460は、送信側の基板と受信側の基板との間で定められた所定のチェックデータ生成規則によって得られるデータとすることができる。本実施例において、チェックデータ生成規則によって得られるチェックデータは、常に一定の値とすることができる。他の実施例として、チェックデータ生成規則によって得られるチェックデータは、チェックデータ計算によって得られた結果とすることができる。チェックデータ計算については後述する。
The
図4(d)に示すデータストリームの状態420は、生成されたダミーデータ列が暗号化されていること示す(図3のステップ315)。暗号化方式には、DESや、トリプルDES、AES、RSAなどの既知の暗号化方式を用いることができる。
The
その後、制御コマンドが生成されていない場合、新たに暗号化されたダミーデータ列が生成される(図3のステップ310及び315)。図4(e)に示すデータストリームの状態425は、新たに生成された暗号化ダミーデータ列485が、状態420のデータストリームに付加されていることを示す。
Thereafter, when the control command is not generated, a newly encrypted dummy data string is generated (
その後、制御コマンドが生成された場合、制御コマンドが付加される(図3のステップ325)。図4(f)に示すデータストリームの状態430は、状態425のデータストリームに制御コマンド490が付加されていることを示す。
Thereafter, when a control command is generated, the control command is added (
さらに、この後の処理によって、制御コマンド490に後続して、新たなダミーデータ列又は制御コマンドがさらに付加される(図示せず)。これにより、データストリームは連続した途切れがないストリームとなり、第三者による通信路中における制御コマンドの特定は困難となる。 Further, in the subsequent processing, a new dummy data string or control command is further added after the control command 490 (not shown). As a result, the data stream becomes a continuous uninterrupted stream, and it becomes difficult for a third party to specify a control command in the communication path.
他の実施例として、データストリーム中のダミーデータ列と制御コマンドとの間に制御コマンド開始データを含むことができる。制御コマンド開始データは、通常の通信では使われないデータ(例えば、"00000000"、"11111111"、又は、それらの組み合わせ)とすることができる。これにより、データストリームの受信側の基板において、制御コマンドを容易に検出することができる。 As another example, control command start data may be included between the dummy data string in the data stream and the control command. The control command start data may be data that is not used in normal communication (for example, “00000000”, “11111111”, or a combination thereof). As a result, the control command can be easily detected on the board on the data stream receiving side.
他の実施例として、暗号化回路250は、ダミーデータ列だけではなく、制御コマンドも暗号化するようにすることができる。さらに他の実施例として、暗号化回路250は、データストリーム全てを暗号化するようにすることができる。これらにより、制御コマンドなどが暗号化されることから、第三者による制御コマンドの特定はさらに困難となる。 As another embodiment, the encryption circuit 250 can encrypt not only the dummy data string but also the control command. As yet another example, the encryption circuit 250 may encrypt the entire data stream. As a result, since the control command and the like are encrypted, it becomes more difficult for the third party to specify the control command.
ダミーデータ列の他の実施例として、チェックデータ465及び/又はキーデータ460は、セキュリティの向上に関して関連性が強い所定のダミーデータ列のみに付加させるようにしてもよい。所定のダミーデータ列の例としては、最初に送信される所定の数のダミーデータ列、制御コマンドが送信された後のダミーデータ列などが考えられる。これにより、ダミーデータ列にチェックデータ及びキーデータを付加する処理を削減することができることから、CPU205に余分な負担をかけずにすむ。この実施例では、送信側基板及び受信側基板において、チェックデータ及び/又はキーデータが含まれるダミーデータ列を事前に定義する必要がある。
As another example of the dummy data string, the
上述のチェックデータ計算の例としては、ダミーデータ列におけるチェックデータ以外の所定のデータを用いて論理積計算を行うことによって求めてもよい。例えば、チェックデータ計算で用いられるデータが1フレーム及び2フレーム目のデータであり、1フレーム及び2フレーム目のデータが、それぞれ、"11000011"、"10011110"である場合、論理積計算によるチェックデータ計算の結果は、"10000010"となる。また、チェックデータ計算で用いられるデータは、チェックデータ以外のフレームのデータ全てとすることもできる。 As an example of the check data calculation described above, the calculation may be performed by performing a logical product calculation using predetermined data other than the check data in the dummy data string. For example, when the data used in the check data calculation is the data of the first frame and the second frame, and the data of the first frame and the second frame are “11000011” and “10011110”, respectively, the check data by the logical product calculation The result of the calculation is “10000010”. Further, the data used in the check data calculation can be all the data of the frame other than the check data.
チェックデータ計算の他の実施例としては、ダミーデータ列におけるチェックデータ以外である7フレーム分のデータを1フレームごとに10進数で表現し、それらを用いて所定の計算を行う。所定の計算の例としては、得られた10進数の値を順に乗算する(具体的には、1フレーム目と2フレーム目とのデータから得られた10進数の値を乗算し、その乗算結果の値と3フレーム目のデータから得られた10進数の値とを乗算する。このような計算を7フレーム目まで繰り返す)。そして、順に乗算して得られた値を数値"255"で剰余演算し(順に乗算して得られた値を数値"255"で除算し、余りを求める)、剰余演算結果を2進数表現にした値をチェックデータとすることができる。所定の計算の他の例としては、得られた10進数の値の総和を計算し、総和値を2進数表現にし、下位の1オクテット(8ビット)の値をチェックデータとすることができる。なお、当業者であれば明らかなように、チェックデータ計算には、他の異なる計算方法を用いることができる。 As another embodiment of the check data calculation, data for 7 frames other than the check data in the dummy data string is expressed in decimal numbers for each frame, and a predetermined calculation is performed using them. As an example of the predetermined calculation, the obtained decimal number is multiplied in order (specifically, the decimal value obtained from the data of the first frame and the second frame is multiplied, and the multiplication result) Is multiplied by the decimal value obtained from the data of the third frame (such calculation is repeated up to the seventh frame). Then, a value obtained by sequentially multiplying is subjected to a remainder operation with a numerical value “255” (a value obtained by sequentially multiplying is divided by a numerical value “255” to obtain a remainder), and the result of the remainder operation is expressed in a binary number. This value can be used as check data. As another example of the predetermined calculation, the sum of the obtained decimal values can be calculated, the sum value can be expressed in binary, and the lower 1 octet (8 bits) value can be used as check data. As will be apparent to those skilled in the art, other different calculation methods can be used for the check data calculation.
図5は、本発明によるデータストリームの受信側動作の一実施例について説明するフローチャートである。 FIG. 5 is a flowchart for explaining an embodiment of the data stream receiving side operation according to the present invention.
最初に、データストリームを送信した基板とは異なる基板の受信モジュール220は、データストリームを受信する(ステップ505)。復号化回路255は、ストリームデータ解析器260によって取得された暗号化されているダミーデータ列の先頭部分(例えば、図4におけるデータストリームの状態430の先頭の8フレーム分のデータ)を復号する(ステップ510)。他の実施例として、データストリームに先頭ストリームデータが付加されている場合、ストリームデータ解析器260は、先頭ストリームデータを用いることによって、あるデータがデータストリームの先頭であるか否かを容易に判断することができる。また、データストリームの送信が停止され、再度送信が開始される場合、ストリームデータ解析器260は、先頭ストリームデータを用いることによって、再度送信されるデータストリームの先頭を容易に検出することができる。そして、ストリームデータ解析器260は、復号したダミーデータ列からデータを取得する(ステップ515)。
Initially, the receiving
ストリームデータ解析器260は、取得されたデータにおけるチェックデータがチェックデータ生成規則に基づいて生成されているか否かを確認する(ステップ520)。チェックデータがチェックデータ生成規則に基づいて生成されている場合(ステップ520)、通信路の信頼性が確立される(ステップ525)。
The
他の実施例として、チェックデータがチェックデータ生成規則に基づいて生成されているか否かの確認は、先頭のダミーデータ列を判定するだけではなく、後続するダミーデータ列の一又は二以上を判定することによって実行することもできる。これにより、チェックデータの確認が複数回行われることから、通信路の信頼性をさらに向上させることができる。一実施例において、通信路データレジスタ235は、通信路信頼フラグのための領域を有することができる。本実施例では、通信路の信頼性が確立されると、ストリームデータ解析器260又はCPU205は、通信路信頼フラグをオンにする。これにより、通信路の信頼性が確立された後、CPU205などは、通信路データレジスタ235の通信路信頼フラグを参照し、通信路信頼フラグがオンであることを確認することによって、通信路の信頼性が確立されていることを容易に確認することができる。
As another embodiment, whether or not the check data is generated based on the check data generation rule is determined not only by determining the leading dummy data string but also by determining one or more of the subsequent dummy data strings. It can also be executed. As a result, the check data is confirmed a plurality of times, so that the reliability of the communication path can be further improved. In one embodiment, channel data register 235 may have an area for a channel trust flag. In this embodiment, when the reliability of the communication path is established, the
他の実施例として、ダミーデータ列にキーデータが含まれている場合、通信路の信頼性を確立するステップは、ストリームデータ解析器260又はCPU205が、キーデータを通信路データレジスタ235に保存するステップを含むことができる。
As another embodiment, when key data is included in the dummy data string, the
チェックデータがチェックデータ生成規則に基づいて生成されていなかった場合(ステップ520)、通信路の信頼性が確立されずに処理は終了する(ステップ560)。他の実施例として、チェックデータがチェックデータ生成規則に基づいて生成されていなかった場合(ステップ520)、受信先基板は送信元基板へエラー通知を行うことができる。 If the check data has not been generated based on the check data generation rule (step 520), the process ends without establishing the reliability of the communication path (step 560). As another example, when the check data has not been generated based on the check data generation rule (step 520), the destination board can send an error notification to the source board.
通信路の信頼性が確立された後(ステップ525)、ストリームデータ解析器260は、データストリーム中の次のデータのセットを取得する(ステップ530)。ストリームデータ解析器260は、取得したデータストリームのデータが正常であるか否かを確認する(ステップ535)。
After the communication path reliability is established (step 525), the
本実施例では、データストリームが正常であるか否かの確認は、データストリーム中に所定のエラー通知データが含まれているか否かを確認することによって行うことができる。 In this embodiment, whether or not the data stream is normal can be confirmed by confirming whether or not predetermined error notification data is included in the data stream.
他の実施例として、データストリームが正常であるか否かの確認は、データストリームが連続していることを確認することによって行うことができる。この場合、受信したデータストリーム中に連続せずに途切れている箇所が確認されたときは、データストリームに異常があると判断される。すなわち、通信路の切断、又は、送信元基板の差し替えなどが行われた場合、データストリームが途切れるため、即座にデータストリームの異常が検出される。したがって、この異常検出処理は、暗号化されているダミーデータ列を復号化するなどの処理負担が大きい処理を行うことなく、データストリームが連続しているか否かという簡単な判定処理のみが実行されるため、CPU205などに余分な負担をかけずにすむ。
As another example, whether or not the data stream is normal can be confirmed by confirming that the data stream is continuous. In this case, it is determined that there is an abnormality in the data stream when a discontinuous portion is confirmed in the received data stream. That is, when the communication path is disconnected or the transmission source board is replaced, the data stream is interrupted, so that an abnormality in the data stream is detected immediately. Therefore, this abnormality detection process is performed only with a simple determination process for determining whether or not the data stream is continuous without performing a process with a large processing load such as decrypting an encrypted dummy data string. Therefore, it is not necessary to place an extra burden on the
他の実施例として、ステップ530において取得した次のデータセットがダミーデータ列である場合、データストリームが正常であるか否かの確認は、ストリームデータ解析器260が、復号化回路255を用いて次のデータセットにおける暗号化されているダミーデータ列を復号化し、そのダミーデータ列のチェックデータがチェックデータ生成規則に基づいて生成されているか否かを確認することによって行うことができる(ステップ510乃至ステップ520と同じ処理を行う)。本実施例では、チェックデータがチェックデータ生成規則に基づいて生成されていないと確認された場合、データストリームに異常があると判断される。
As another embodiment, when the next data set acquired in
さらに他の実施例として、ステップ530において取得した次のデータセットがダミーデータ列であり、ダミーデータ列にキーデータが含まれている場合、データストリームが正常であるか否かの確認は、ストリームデータ解析器260が、復号化回路255を用いて次のデータセットにおける暗号化されているダミーデータ列を復号化してキーデータを取得し、取得したキーデータと通信路データレジスタ235に保存されているキーデータとを比較することによって行うことができる。本実施例では、取得したキーデータと通信路データレジスタ235に保存されているキーデータとが異なると確認された場合、データストリームに異常があると判断される。
As yet another embodiment, when the next data set acquired in
さらに、データストリームが正常であるか否かの確認は、これら実施例の一又は二以上の組み合わせによって行うこともできる。 Further, whether or not the data stream is normal can be confirmed by one or a combination of two or more of these embodiments.
データストリームが正常であると判断された場合(ステップ535)、ストリームデータ解析器260は、取得したデータ中に制御コマンドが存在するか否かを確認する(ステップ540)。制御コマンドが存在しない場合、データストリーム中の次のデータのセットが取得される(ステップ530)。本実施例では、制御コマンドの存在は、制御コマンド開始データを用いて判定される。
When it is determined that the data stream is normal (step 535), the
制御コマンドが存在する場合、ストリームデータ解析器260は、制御コマンドを取得し、受信制御コマンドデータレジスタ235に保存する(ステップ545)。これにより、CPU205において、その基板特有の処理を実行するための制御コマンドの利用が可能になる。他の実施例として、ストリームデータ解析器260は、取得した制御コマンドをCPU205に送信するようにすることもできる。
If there is a control command, the
他の実施例として、ストリームデータ解析器260は、制御コマンドが取得をした後、さらに、取得された制御コマンド以後のデータストリームが正常であると確認(ステップ530及び535と同じ処理)した後に、その制御コマンドを受信制御コマンドデータレジスタ230に保存することができる。これにより、不正である可能性が高い制御コマンドの利用を回避し、制御コマンドの完全性をより向上させることができる。なぜならば、制御コマンド検出後にデータストリームの異常が検出された場合、その制御コマンドは不正に送信された可能性又は改ざんされている可能性が高いからである。
As another example, after the control command is acquired, the
また、他の実施例として、データストリームが正常であるか否かの確認(ステップ520)は、制御コマンドの取得(ステップ545)後のみ実行するよう構成されていてもよい。これにより、不正を検出する可能性が高い時点でのみ、データストリームの異常検出処理が行われることから、異常検出処理の実行回数が削減できるため、CPU205に余分な負担をかけずにすむ。
As another example, the confirmation of whether or not the data stream is normal (step 520) may be performed only after acquisition of the control command (step 545). As a result, the abnormality detection process of the data stream is performed only when there is a high possibility of detecting fraud, so the number of executions of the abnormality detection process can be reduced, so that no extra burden is placed on the
制御コマンドの取得後、次のデータのセットが取得され(ステップ530)、データストリームが正常ではないと判断された場合(ステップ535)、ストリームデータ解析器260又はCPU205は通信路の信頼性を否定する(ステップ555)。通信路信頼フラグが用いられている場合、通信路の信頼性が否定されると、ストリームデータ解析器260又はCPU205は通信路信頼フラグをオフにする。その後、処理を終了する(ステップ560)。これにより、通信路の信頼性が否定された後、CPU205などは、通信路データレジスタ235の通信路信頼フラグを参照し、通信路信頼フラグがオフであることを確認することによって、通信路の信頼性が確立されていないことを容易に確認することができる。また、通信路の信頼性が確立されていない間に送信された制御コマンドは不正送信又は改ざんされている可能性が高いことから、CPU205などは、その制御コマンドが利用されないよう制御することができる。
After acquiring the control command, the next set of data is acquired (step 530), and if it is determined that the data stream is not normal (step 535), the
本発明によって、メイン基板120とサブ基板130及び/又は140との間の一方向又は双方向の通信路において、途切れなくデータストリームが送信されるため、第三者による制御コマンドの検出をより困難にすることができる。また、そのデータストリームを用いることによって、通信路の信頼性を容易に確保することができ、さらに、制御コマンドの不正送信又は改ざんを検出することができる。
According to the present invention, since a data stream is transmitted without interruption in a one-way or two-way communication path between the
本発明は、遊技機内における通信について説明したが、インターネットや一般的なピアツーピア通信などの他のデータ通信にも用いることができる。 Although the present invention has been described for communication within a gaming machine, it can also be used for other data communication such as the Internet and general peer-to-peer communication.
なお、以上に説明した処理フローにおける、あるステップにおいて、そのステップではまだ利用することができないはずのデータを利用しているなどの動作上の矛盾が生じない限りにおいて、処理フローを自由に変更することができる。 As long as there is no operational contradiction, such as using data that should not be used in a certain step in the processing flow described above, the processing flow can be freely changed. be able to.
以上に説明してきた各実施形態は、本発明を説明するための例示であり、本発明はこれらの実施形態に限定されるものではない。本発明は、その要旨を逸脱しない限り、種々の形態で実施することができる。 Each embodiment described above is an example for explaining the present invention, and the present invention is not limited to these embodiments. The present invention can be implemented in various forms without departing from the gist thereof.
Claims (7)
第1基板と、
通信路を介して前記第1基板に接続されている第2基板と、
を備え、
前記第1基板は、
ダミーデータを連続して生成するダミーデータ生成器と、
前記ダミーデータにチェックデータ生成規則を適用してチェックデータを生成し、当該ダミーデータと当該チェックデータとからなるダミーデータ列を生成するとともに、少なくとも当該ダミーデータのみからなるダミーデータ列をさらに生成し、前記第2基板に実行させる処理内容が定義されている制御コマンドデータと当該ダミーデータ列とからデータストリームを生成するストリームデータ生成器と、
前記データストリームを前記第2基板に送信する送信モジュールと、
を備え、
前記第2基板は、
前記データストリームを受信する受信モジュールと、
受信した前記データストリームから前記ダミーデータ列と前記制御コマンドデータとを取得するとともに、当該ダミーデータ列における前記チェックデータが前記チェックデータ生成規則に基づいて生成されているか否かを確認し、その後、当該データストリームが正常であるか否かを確認するストリームデータ解析器と、
を備え、
前記ストリームデータ解析器は、前記チェックデータが前記チェックデータ生成規則に基づいて生成されている場合、前記通信路の信頼性を確立し、さらに、当該ストリームデータ解析器は、受信した前記データストリームが正常であるか否かを確認し、前記データストリームが正常ではない場合、当該通信路の信頼性を否定することを特徴とする遊技機における通信装置。 A communication device for data communication between a plurality of boards in a gaming machine,
A first substrate;
A second substrate connected to the first substrate via a communication path;
With
The first substrate is
A dummy data generator that continuously generates dummy data;
A check data generation rule is applied to the dummy data to generate check data, a dummy data string including the dummy data and the check data is generated, and a dummy data string including at least the dummy data is further generated. A stream data generator that generates a data stream from the control command data in which the processing content to be executed by the second substrate is defined and the dummy data string;
A transmission module for transmitting the data stream to the second substrate;
With
The second substrate is
A receiving module for receiving the data stream;
Obtaining the dummy data string and the control command data from the received data stream, and confirming whether the check data in the dummy data string is generated based on the check data generation rules, then A stream data analyzer that checks whether the data stream is normal;
With
The stream data analyzer establishes reliability of the communication path when the check data is generated based on the check data generation rule, and the stream data analyzer further determines that the received data stream is A communication device in a gaming machine, wherein whether or not the data stream is normal is confirmed, and if the data stream is not normal, the reliability of the communication path is denied.
前記ストリームデータ生成器は、各基板ごとの固有の値に基づいて生成されるキーデータを前記ダミーデータ列に含めて前記データストリームを生成するよう構成されており、
前記ストリームデータ解析器は、前記通信路の信頼性を確立するときに前記ダミーデータ列から前記キーデータを取得し、前記通信路データレジスタに保存するよう構成されており、
前記データストリームが正常であるか否かの確認は、前記通信路の信頼性が確立した後、前記ストリームデータ解析器が、前記ダミーデータ列から前記キーデータを取得し、当該取得したキーデータと前記通信路データレジスタに保存されているキーデータとを比較することによって行われることを特徴とする請求項1に記載の通信装置。 The second substrate further includes a communication path data register,
The stream data generator is configured to generate the data stream by including key data generated based on a unique value for each board in the dummy data string,
The stream data analyzer is configured to acquire the key data from the dummy data string when establishing reliability of the communication path, and store the key data in the communication path data register,
Whether or not the data stream is normal is confirmed after the reliability of the communication path is established, the stream data analyzer acquires the key data from the dummy data string, and the acquired key data and The communication apparatus according to claim 1, wherein the communication apparatus is performed by comparing with key data stored in the communication path data register.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2010264590A JP5729985B2 (en) | 2009-12-25 | 2010-11-29 | A highly secure gaming machine communication device |
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2009295196 | 2009-12-25 | ||
JP2009295196 | 2009-12-25 | ||
JP2010264590A JP5729985B2 (en) | 2009-12-25 | 2010-11-29 | A highly secure gaming machine communication device |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2011147764A JP2011147764A (en) | 2011-08-04 |
JP5729985B2 true JP5729985B2 (en) | 2015-06-03 |
Family
ID=44535316
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2010264590A Active JP5729985B2 (en) | 2009-12-25 | 2010-11-29 | A highly secure gaming machine communication device |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP5729985B2 (en) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP6250937B2 (en) * | 2013-02-18 | 2017-12-20 | 株式会社三共 | Pachislot machines, game boards and game frames |
JP6058480B2 (en) * | 2013-06-17 | 2017-01-11 | 株式会社ユニバーサルエンターテインメント | Game machine |
JP6058479B2 (en) * | 2013-06-17 | 2017-01-11 | 株式会社ユニバーサルエンターテインメント | Game machine |
JP6280601B2 (en) * | 2016-08-25 | 2018-02-14 | 株式会社ユニバーサルエンターテインメント | Game machine |
JP6280599B2 (en) * | 2016-08-25 | 2018-02-14 | 株式会社ユニバーサルエンターテインメント | Game machine |
JP6280600B2 (en) * | 2016-08-25 | 2018-02-14 | 株式会社ユニバーサルエンターテインメント | Game machine |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH1024148A (en) * | 1996-07-15 | 1998-01-27 | L Ii Tec:Kk | Chip collator |
JP4216910B2 (en) * | 1997-01-18 | 2009-01-28 | 株式会社エルイーテック | Game machine control chip security system |
JP5149867B2 (en) * | 2009-05-26 | 2013-02-20 | 京楽産業.株式会社 | Electronic device, game machine, main control board, peripheral board, authentication method and authentication program |
-
2010
- 2010-11-29 JP JP2010264590A patent/JP5729985B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
JP2011147764A (en) | 2011-08-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5729985B2 (en) | A highly secure gaming machine communication device | |
CN104463007B (en) | Data verification method and its device | |
US9921978B1 (en) | System and method for enhanced security of storage devices | |
CN110719173B (en) | Information processing method and device | |
CN110995685B (en) | Data encryption and decryption method, device, system and storage medium | |
JP2014089652A (en) | Information processing apparatus | |
JP2008536560A (en) | Hard disk authentication | |
CN101008972A (en) | Security control methods for date transmission process of software protection device and device thereof | |
US7636441B2 (en) | Method for secure key exchange | |
US8774407B2 (en) | System and method for executing encrypted binaries in a cryptographic processor | |
JP2005157930A (en) | Confidential information processing system and lsi | |
CN110446075A (en) | Encryption method and device, decryption method and device, electronic equipment | |
CN101770559A (en) | Data protecting device and data protecting method | |
KR20120042469A (en) | Apparatus for protecting contents using binding additional information and encryption key and method thereof | |
JP5060372B2 (en) | Data processing device | |
KR101632929B1 (en) | Terminal, system and method for verifying falsification of web page using the same | |
CN110830507A (en) | Resource access method, device, electronic equipment and system | |
US10200348B2 (en) | Method to detect an OTA (over the air) standard message affected by an error | |
JP2006268513A (en) | Log-on management device for terminal device | |
JP2006511114A (en) | Key synchronization in visual cryptosystems | |
RU2541866C2 (en) | Chipset function activation method and chipset | |
JP6203556B2 (en) | Information processing system | |
JP6270101B2 (en) | Computer chip having switching means for cryptographic circuit | |
WO2011052180A1 (en) | Encrypted message transmission device, program, encrypted message transmission method and authentication system | |
CN113132107B (en) | License encryption method and device, license decryption method and device and equipment |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20131129 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20150401 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20150407 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5729985 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |