JP4677008B2 - 主制御基板、認証方法および認証プログラム - Google Patents

主制御基板、認証方法および認証プログラム Download PDF

Info

Publication number
JP4677008B2
JP4677008B2 JP2008114492A JP2008114492A JP4677008B2 JP 4677008 B2 JP4677008 B2 JP 4677008B2 JP 2008114492 A JP2008114492 A JP 2008114492A JP 2008114492 A JP2008114492 A JP 2008114492A JP 4677008 B2 JP4677008 B2 JP 4677008B2
Authority
JP
Japan
Prior art keywords
relative time
main control
control command
code
value
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.)
Expired - Fee Related
Application number
JP2008114492A
Other languages
English (en)
Other versions
JP2009265934A (ja
Inventor
直幸 渡辺
浩 水上
元成 横島
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Kyoraku Industrial Co Ltd
Original Assignee
Kyoraku Industrial Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Kyoraku Industrial Co Ltd filed Critical Kyoraku Industrial Co Ltd
Priority to JP2008114492A priority Critical patent/JP4677008B2/ja
Priority to TW097138566A priority patent/TWI484365B/zh
Priority to CN2008101696077A priority patent/CN101406747B/zh
Priority to KR1020080099321A priority patent/KR101503245B1/ko
Publication of JP2009265934A publication Critical patent/JP2009265934A/ja
Application granted granted Critical
Publication of JP4677008B2 publication Critical patent/JP4677008B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Pinball Game Machines (AREA)

Description

この発明は、遊技機の周辺基板にデータ送信可能な遊技機の主制御基板、認証方法および認証プログラムに関する。
従来、複数の基板を備えた電子機器において、これら各基板に対する不正を防止するための様々な技術が提案されている。複数の基板を備えた電子機器とは、たとえば、パチンコ遊技機などがある。パチンコ遊技機には、電子機器全体の動作を司る主制御基板と、電子機器の各部の動作をおこなう被制御基板(周辺基板)とを備えている。この主制御基板は、周辺基板に制御コマンドを含む制御信号を出力し、その他の周辺基板は、主制御基板から送信された制御信号にしたがって動作を実行する機能を備えている。
このような構成の電子機器の場合、主制御基板に対する不正としては、たとえば、正規の主制御基板を不正な制御基板に取り替えや、主制御基板がおこなう処理を規定したプログラムコードの改ざんなどの手法がある。このような不正を防止するため、たとえば、主制御基板内に搭載されたROMに記録されているプログラムデータをROMチェッカによってチェックして、ROMの不正交換などを防止する技術が提案されている(たとえば、下記特許文献1参照。)。
また、主制御基板のプログラムカウンタの値(PC値)や主制御基板内の所定の機能部の処理時間を計測した計測値に基づいたチェック符号を生成し、周辺基板へ送信する。周辺基板では受信したチェック符号を解析し、解析結果が正常ではない場合には、周辺基板上の動作を停止する遊技機も提供されている(たとえば、下記特許文献2参照。)。
特開平11−333108号公報 特開平11−276699号公報
しかしながら、上述した従来技術を用いた場合、プログラムデータの改ざんは検知できるが、正規の主制御用基板と被制御基板との間に不正な制御基板が接続されてしまうと、この不正な制御基板から出力される不正な制御信号による不正制御を防止することができない。
図15は、従来技術による不正防止技術の概要を示す説明図である。また、図16は、不正な制御基板の挿入例を示す説明図である。ここで、図15、16を用いて不正な制御基板による不正制御について具体的に説明する。図15に示すように、通常、正規の主制御基板1501は、周辺基板1502に対して正規の制御信号RSを出力して、周辺基板1502の動作を制御する。また、正規の主制御基板1501には、検査用ポート1503が設けられている。この検査用ポート1503から正規の主制御基板1501の内部に設けられたROMなどに記録されたプログラムデータを検査して、正規の主制御基板1501に不正がおこなわれていないかを検査する。
ところが、図16示すように、周辺基板1502の不正制御をおこなうために、正規の主制御基板1501と周辺基板1502との間に不正な制御基板1601が挿入されてしまう場合がある。この不正な制御基板1601は、正規の主制御基板1501から出力された正規の制御信号RSを破棄または無視し、替わりに不正な制御信号FSを周辺基板1502に出力する。
上記特許文献1の技術の場合、周辺基板1502は、入力された信号が正規の制御信号RSであるか不正な制御信号FSであるかを判別することができない。したがって、周辺基板1502に不正な制御信号FSが入力された場合には、不正操作を検出できず、不正な制御信号FSの制御内容に応じた動作をおこなってしまうという問題があった。
また、検査用ポート1503は正規の主制御基板1501にのみ設けられている。したがって、検査用ポート1503を用いた検査をおこなっても、この検査結果は、正規の主制御基板1501内の処理の評価に過ぎず、主制御基板1501と周辺基板1502との間の信号を検査することはできない。したがって、検査用ポート1503を備えていても、不正な制御基板1601による不正制御を検知することができないという問題があった。
また、図17は、信号切替回路による信号切り替えの概要を示す説明図である。図17のように、不正な制御基板1601のなかには、不正な制御信号FSを出力するためのCPU1602に加えて、信号切替回路1603が搭載されていることがある。信号切替回路1603が搭載されている場合、不正な制御基板1601は、正規のCPU1504から出力される制御信号RSの初期診断や検査動作時には、正規の制御信号RSを出力させ、その他の動作時には、不正な制御信号FSを出力させるように切り替えることができる。
すなわち、信号切替回路1603によって検査用ポート1503を用いた検査や、CPUの動作診断をおこなうときだけ正規のCPU1504から出力された正規の制御信号RSを出力させることができる。したがって、周辺基板1502は検査用ポート1503や、動作診断などの不正防止技術を利用しても不正な制御信号FSの出力を検出できないという問題があった。
また、上述の問題への対策案として上記特許文献2のように主制御基板のプログラムカウンタの値(PC値)や主制御基板内の所定機能部の処理時間を計測した計測値に基づいたチェック符号を利用して主制御基板から送信された制御信号の認証をおこなう技術がある。しかしながら、実行命令の格納位置を示すPC値や、所定の機能部の処理時間を計測した情報からチェック符号を生成した場合、主制御基板によってどのような命令が実行されたかといった具体的な処理内容に関する情報を送信していることになる。
上述のような情報が傍受された場合、主制御基板によって実行されている処理ルーチンの処理時間や、実行命令の格納位置を示すPC値からプログラムを解析するためのヒントを与えてしまうなど、重要情報を流出してしまう可能性があるというリスクがあった。
この発明は、上述した従来技術による問題点を解消するため、高い機密保持能力とともに、主制御基板から被制御部である周辺基板に対する不正制御を防止する機能を備えた主制御基板、認証方法および認証プログラムを提供することを目的とする。
上述した課題を解決し、目的を達成するため、第1の発明にかかる主制御基板、認証方法および認証プログラムは、遊技機の周辺基板にデータ送信可能な前記遊技機の主制御基板、認証方法および認証プログラムであって、前記周辺基板に入賞状況をあらわす制御コマンドの中の所定の制御コマンドを送信する場合、前記制御コマンドの送信に伴って変動する値によって構成された動作手順の検査値を生成し、前記動作手順の検査値に基づいて、前記周辺基板において前記主制御基板の動作順序が連続しているか認証するための動作コードを生成し、他の手段から独立してフリーランに計時をおこない、前記主制御基板において特定の事象が発生したタイミングで取得した計時時間の情報の中から基準値を任意に設定し、前記基準値と前記基準値以外の前記計時時間の情報の差分値または累積値によってあらわされる相対時間検査値を生成し、前記相対時間検査値と、生成された動作コードの一部もしくはすべてとに基づいて、前記周辺基板において前記主制御基板が前記制御コマンドを継続して送信していることを認証する相対時間コードを生成し、生成された動作コードと、生成された相対時間コードとを前記所定の制御コマンドに付加し、付加された前記所定の制御コマンドを前記周辺基板に送信することを特徴とする。
第2の発明にかかる主制御基板、認証方法および認証プログラムは、遊技機の周辺基板にデータ送信可能な前記遊技機の主制御基板、認証方法および認証プログラムであって、他の手段から独立してフリーランに計時をおこない、前記主制御基板において特定の事象が発生したタイミングで取得した計時時間の情報の中から基準値を任意に設定し、前記基準値と前記基準値以外の前記計時時間の情報の差分値または累積値によってあらわされる相対時間検査値を生成し、前記相対時間検査値に基づいて、前記周辺基板において前記主制御基板が入賞状況をあらわす制御コマンドを継続して送信していることを認証する相対時間コードを生成し、前記制御コマンドの中の所定の制御コマンドを送信する場合、前記制御コマンドの送信に伴って変動する値によって構成された動作手順の検査値を生成し、前記動作手順の検査値と、生成された相対時間コードの一部もしくはすべてとに基づいて、前記周辺基板において前記主制御基板の動作順序が連続しているか認証するための動作コードを生成し、生成された相対時間コードと、前記動作コード生成手段によって生成された動作コードとを前記所定の制御コマンドに付加し、付加された前記所定の制御コマンドを前記周辺基板に送信することを特徴とする。
第3の発明にかかる主制御基板、認証方法および認証プログラムは、遊技機の周辺基板にデータ送信可能な前記遊技機の主制御基板、認証方法および認証プログラムであって、前記周辺基板に入賞状況をあらわす制御コマンドの中の所定の制御コマンドを送信する場合、前記制御コマンドの送信に伴って変動する値によって構成された動作手順の検査値を生成し、前記動作手順の検査値に基づいて、前記周辺基板において前記主制御基板の動作順序が連続しているか認証するための動作コードを生成し、他の手段から独立してフリーランに計時をおこない、前記主制御基板において特定の事象が発生したタイミングで取得した計時時間の情報の中から基準値を任意に設定し、前記基準値と前記基準値以外の前記計時時間の情報の差分値または累積値によってあらわされる相対時間検査値を生成し、前記相対時間検査値と、前記動作コード生成手段によって生成された動作コードの一部もしくはすべてとに基づいて、前記周辺基板において前記主制御基板が前記制御コマンドを継続して送信していることを認証する相対時間コードを生成し、前記所定の制御コマンドと、生成された動作コードと、生成された相対時間コードとを、前記周辺基板に送信することを特徴とする。
第4の発明にかかる主制御基板、認証方法および認証プログラムは、遊技機の周辺基板にデータ送信可能な前記遊技機の主制御基板、認証方法および認証プログラムであって、他の手段から独立してフリーランに計時をおこない、前記主制御基板において特定の事象が発生したタイミングで取得した計時時間の情報の中から基準値を任意に設定し、前記基準値と前記基準値以外の前記計時時間の情報の差分値または累積値によってあらわされる相対時間検査値を生成し、前記相対時間検査値に基づいて、前記周辺基板において前記主制御基板が入賞状況をあらわす制御コマンドを継続して送信していることを認証する相対時間コードを生成し、前記制御コマンドの中の所定の制御コマンドを送信する場合、前記制御コマンドの送信に伴って変動する値によって構成された動作手順の検査値を生成し、前記動作手順の検査値と、生成された相対時間コードの一部もしくはすべてとに基づいて、前記周辺基板において前記主制御基板の動作順序が連続しているか認証するための動作コードを生成し、前記所定の制御コマンドと、生成された相対時間コードと、生成された動作コードとを前記周辺基板に送信することを特徴とする。
本発明にかかる電子機器、主制御基板、周辺基板、認証方法および認証プログラムによれば、高い機密保持能力とともに、主制御基板から被制御部である周辺基板に対する不正制御を防止する機能とを実現することができるという効果を奏する。
(実施の形態)
以下に添付図面を参照して、この発明にかかる電子機器の機能を搭載した遊技機と、この遊技機に搭載されている複数の基板間(主制御基板および周辺基板)の制御信号に含まれる制御コマンドを認証する認証方法および認証プログラムの好適な実施の形態を詳細に説明する。
(遊技機の基本構成)
図1は、本発明にかかる電子機器を搭載したパチンコ遊技機の構成の一例を示す説明図である。遊技盤101の下部位置に配置された発射部(図2参照)の駆動によって発射された遊技球は、レール102a,102b間を上昇して遊技盤101の上部位置に達した後、遊技領域103内を落下する。遊技領域103には、図示を省略する複数の釘が設けられ、遊技球を各種の方向に向けて落下させるとともに、落下途中の位置には、遊技球の落下方向を変化させる風車や、入賞口が配設されている。
遊技盤101の遊技領域103の中央部分には、図柄表示部104が配置されている。図柄表示部104としては、たとえば液晶表示器(LCD)が用いられる。なお、図柄表示部104としては、LCDに限らずCRTなどを用いることもできる。図柄表示部104の下方には、始動入賞させるための始動入賞口105が配設されている。図柄表示部104の左右には、それぞれ入賞ゲート106が配設されている。
入賞ゲート106は、遊技球の通過を検出し、始動入賞口105を一定時間だけ開放させる抽選をおこなうために設けられる。図柄表示部104の側部や下方などには普通入賞口107が配設されている。普通入賞口107に遊技球が入賞すると、普通入賞時の賞球数(たとえば10個)の払い出しをおこなう。遊技領域103の最下部には、どの入賞口にも入賞しなかった遊技球を回収する回収口108が設けられている。
上述した図柄表示部104は、特定の入賞口に遊技球が入賞したとき(始動入賞時)に、複数の図柄の表示の変動を開始させ、所定時間後に図柄が停止する。この停止時に特定図柄(たとえば「777」)に揃ったとき、大当たり状態となる。大当たり状態のとき、下方に位置する大入賞口109が一定の期間開放を所定ラウンド(たとえば15ラウンド)繰り返し、入賞した遊技球に対応した賞球数を払い出す。
図2は、パチンコ遊技機の制御部の内部構成を示すブロック図である。制御部200は、複数の制御部により構成されている。図示の例では、主制御部201と、演出制御部202と、賞球制御部203とを有する。主制御部201は、パチンコ遊技機の遊技にかかる基本動作を制御する。演出制御部202は、遊技中の演出動作を制御する。賞球制御部203は、払い出す賞球数を制御する。
主制御部201は、ROM212に記憶されたプログラムデータに基づき、遊技内容の進行に伴う基本処理を実行するCPU211と、CPU211の演算処理時におけるデータのワークエリアとして機能するRAM213、各検出部221〜224から各種データを受信するとともに、演出制御部202および賞球制御部203への各種データの送信をおこなうインタフェース(I/F)214などを備えて構成される。主制御部201は、たとえばいわゆる主制御基板によってその機能を実現する。なお、上述したROM212に記憶されたプログラムデータとは、プログラムコードや書き換え不可能な固定データを意味する。
この主制御部201の入力側には、始動入賞口105に入賞した入賞球を検出する始動入賞口検出部221と、入賞ゲート106を通過した遊技球を検出するゲート検出部222と、普通入賞口107に入賞した遊技球を検出する普通入賞口検出部223と、大入賞口109に入賞した入賞球を検出する大入賞口検出部224とがI/F214を介して接続されている。これらの検出部としては、近接スイッチなどを用いて構成できる。
この主制御部201の出力側には、大入賞口開閉部231が接続され、この大入賞口開閉部231の開閉を制御する。大入賞口開閉部231は、大当たり時に大入賞口109を一定期間開放する機能であり、ソレノイドなどを用いて構成される。この大当たりは、生成した乱数(大当たり判定用乱数)に基づいて所定の確率(たとえば300分の1など)で発生するようあらかじめプログラムされている。
演出制御部202は、主制御部201から各種の制御コマンドを含む制御信号を受け取り、このコマンドに基づいてROM242に記憶されたプログラムデータを実行して遊技中における演出制御をおこなう。この演出制御部202は、演出処理を実行するCPU241と、CPU241の演算処理時におけるデータのワークエリアとして機能するRAM243、図柄表示部104に表示させる画像データを書き込むVRAM244、主制御部201からの各種データの受信およびランプ制御部251や音声制御部252への各種データの送信をおこなうインタフェース(I/F)245などを備えて構成される。演出制御部202は、たとえばいわゆる演出基板によってその機能を実現する。また、演出制御部202の出力側には、上述した図柄表示部(LCD)104、ランプ制御部251、音声制御部252がI/F245を介して接続されている。
賞球制御部203は、主制御部201から各種の制御コマンドを含む制御信号を受け取り、このコマンドに基づいてROM282に記憶されたプログラムデータを実行して賞球制御をおこなう。この賞球制御部203は、賞球制御の処理を実行するCPU281と、CPU281の演算処理時におけるデータのワークエリアとして機能するRAM283、主制御部201からの各種データの受信および発射部292との各種データの送受信をおこなうインタフェース(I/F)284などを備えて構成される。賞球制御部203は、たとえばいわゆる賞球基板によってその機能を実現する。
賞球制御部203は、接続される払出部291に対して入賞時の賞球数を払い出す制御をおこなう。また、発射部292に対する遊技球の発射の操作を検出し、遊技球の発射を制御する。払出部291は、遊技球の貯留部から所定数を払い出すためのモータなどからなる。賞球制御部203は、この払出部291に対して、各入賞口(始動入賞口105、普通入賞口107、大入賞口109)に入賞した遊技球に対応した賞球数を払い出す制御をおこなう。
発射部292は、遊技のための遊技球を発射するものであり、遊技者による遊技操作を検出するセンサと、遊技球を発射させるソレノイドなどを備える。賞球制御部203は、発射部292のセンサにより遊技操作を検出すると、検出された遊技操作に対応してソレノイドなどを駆動させて遊技球を間欠的に発射させ、遊技盤101の遊技領域103に遊技球を送り出す。
上記構成の主制御部201と、演出制御部202と、賞球制御部203は、それぞれ異なるプリント基板(主制御基板、演出基板、賞球基板)に設けられる。これに限らず、たとえば、賞球制御部203は、主制御部201と同一のプリント基板上に設けることもできる。
(パチンコ遊技機の基本動作)
上記構成によるパチンコ遊技機の基本動作の一例を説明する。主制御部201は、各入賞口に対する遊技球の入賞状況を制御コマンドとして賞球制御部203に出力する。賞球制御部203は、主制御部201から出力された制御コマンドに応じて、入賞状況に対応した賞球数の払い出しをおこなう。
また、主制御部201は、始動入賞口105に遊技球が入賞するごとに、対応する制御コマンドを演出制御部202に出力し、演出制御部202は、図柄表示部104の図柄を変動表示させ、停止させることを繰り返す。大当たりの発生が決定しているときには、対応する制御コマンドを演出制御部202に出力し、演出制御部202は、所定の図柄で揃えて停止させる。このとき同時に、大入賞口109を開放する制御をおこなう。演出制御部202は、大当たり発生期間中、および大当たり発生までの間のリーチ時や、リーチ予告時などには、図柄表示部104に対して、図柄の変動表示に加えて各種の演出表示をおこなう。このほか、各種役物に対して特定の駆動をおこなわせたり、ランプ261の表示状態を変更させたり、スピーカ262から効果音を出力させたりといった演出をおこなう。
そして、大当たり発生時には、大入賞口109が複数回開放される。1回の開放が1ラウンドとして、たとえば15回のラウンドが繰り返し実行される。1ラウンドの期間は、遊技球がたとえば10個入賞したとき、あるいは所定期間(たとえば30秒)とされている。この際、賞球制御部203は、大入賞口109に対する球技球1個の入賞あたり、たとえば15個の賞球数で払い出しをおこなう。大当たり終了後は、この大当たり状態が解除され、通常の遊技状態に復帰する。
(主制御基板および周辺基板の認証処理にかかる機能的構成)
一般的なパチンコ遊技機では、遊技者からの遊技球の投入に応じて上述したような基本動作を繰り返す。本実施の形態では、このようなパチンコ遊技機に対して何らかの方法で不正な制御基板が挿入され、遊技者に提供された場合であっても、遊技時に不正な制御基板から出力された不正な制御コマンド(制御信号)を検知する機能を備えている。具体的には、主制御部201から送信された制御コマンドの認証をおこなう。そして、この認証結果に応じて、不正な制御コマンドを検知する。以下、この制御コマンドを認証するための機能について説明する。
図3は、主制御基板および周辺基板の認証処理にかかる機能的構成を示すブロック図である。図3において、主制御基板310は、図2にて説明した主制御部201によって構成されている。また、周辺基板は、図2にて説明した演出制御部202あるいは、賞球制御部203によって構成され、本発明にかかる認証処理をおこなう。
・主制御基板の機能的構成
主制御基板310は、周辺基板320を動作させるための制御コマンドを送信する機能部であり、制御コマンド出力部311と、計時部312と、コード生成部313と、付加部314と、送信部315とによって構成される。
制御コマンド出力部311には、周辺基板320に送信する制御コマンドのデータ(制御コマンドデータ)が格納されている。そして、制御コマンド出力部311は、所定のプログラムコードにしたがって、格納されている制御コマンドのなかから周辺基板320に送信する制御コマンドを選択して、付加部314に出力する。
計時部312は、他の手段から独立してフリーランに計時をおこなう。計時のタイミングや、桁数、表示方式は任意である。したがって、計時部312は、時間軸上では時間情報取得のタイミングは固定されず、不規則な変動値が出力されていることになる。たとえば、主制御装部310において、賞球すべき事象が発生したタイミングをトリガに計時情報を取得すると設定した場合、いつ賞球事象が発生するかはわからない。
また、計時部312の機能は、電源投入時やリセット時など、遊技動作開始時をトリガとして計時を開始するというシンプルなものである。計時部313の場合、計時を開始する際、たとえば、リセット処理やクリア処理などの初期値の固定もしくは設定を目的とする初期化処理機能を備えておく必要がない。また、計時開始後は、賞球すべき事象が発生した場合など、ランダムにおきる特定の事象をトリガとして計時情報を出力すればよい。したがって、非常に簡素な構成で実現することができ、処理負荷が軽いという特徴を備えている。
コード生成部313は、周辺基板320に送信する制御コマンドが所定の制御コマンドである場合、主制御基板の動作順序を認証するためのコードを生成する動作コードを生成する動作コード生成手段と、計時部312による計時結果を利用した相対時間コードを生成する相対時間生成手段としての機能を備えている。
動作コードを生成する場合、コード生成部313は、制御コマンドの送信、すなわち、制御コマンド出力部311からの制御コマンドの出力に伴って、主制御基板310から制御コマンドが送信される際の主制御部310の動作順序を認証するための動作コードを生成する。生成された動作コードは、付加部314に出力される。
動作コードは、主制御基板310による制御コマンドの送信が継続して実行されていることを確認するための情報である。具体的には、たとえば、プログラム機能の処理番号、コード生成部313におけるコード生成処理など、認証用のコードの値生成処理の実行回数、所定の法則で変動する値などによって構成された検査値である。周辺基板320では、この動作コードを参照することにより、主制御基板310の動作(ここでは、制御コマンドの送信)順序が連続しておこなわれているか否かを判断することができる。
なお、動作コードは、主制御基板310による制御コマンド送信の動作順序に関する情報以外にも、動作をおこなうための制御コマンドの実行プログラムの動作手順に対応して設定されている機能番号などの情報を含んでいてもよい。このとき、動作順序に関する複数の情報をそのまま含んでもよいし、これらの情報に所定の演算を施して暗号化した値を含んでもよい。
このように、所定の制御コマンドを出力した際の主制御基板310がどのような動作中であるかを認証する動作コードを用いることによって、図17にて説明したような、不正な制御基板1601の内部に信号切替回路1603が搭載された場合であっても、動作コードによって認証した動作順序が連続していなければ、主制御基板310から送信された制御コマンド以外の不正な制御基板から送信された制御コマンドであると判断し、不正制御を検知することができる。
また、相対時間コードを生成する場合、コード生成部313は、指定されたタイミングで計時部312から取得した計時時間の情報から相対時間コードを生成する。生成された相対時間コードは、付加部314に出力される。
相対時間コードは、主制御基板310による制御コマンドの送信が継続して実行されていることを確認するための情報である。具体的には、たとえば、計時情報からある基準値を設定し、この基準値からの差分値や、累積値などによってあらわされる。なお、相対時間コードは、計時情報に基づいて設定した情報をそのまま含んでもよいし、これらの情報に所定の演算を施して暗号化した値を含んでもよい。
このように、所定の制御コマンドが出力された際に相対時間コードを参照することによって、主制御部310にて実行されている動作が継続しておこなわれているか否かを簡易的に判定することができる。したがって、図17にて説明したような、不正な制御基板1601の内部に信号切替回路1603が搭載されてしまうといった不正行為への対策を講じることができる。具体的には、相対時間コードによって認証した動作順序が継続した動作であると判定されなかった場合、主制御基板310から送信された制御コマンド以外の不正な制御基板から送信された制御コマンドであると判断し、不正制御が検知される。
付加部314は、コード生成部313によって生成された動作コードと相対時間コードとを制御コマンドに付加する。各コードが付加された制御コマンドは、付加部314から送信部315に出力される。
送信部315は、動作コードと相対時間コードとが付加された制御コマンドを周辺基板320に送信する。なお、本実施の形態において「制御コマンドを送信する」とは、「制御コマンドデータを含む制御信号を送信する」との意味であり、たとえば動作コードや相対時間コード、また付随データ(たとえば、入賞した遊技球の数など制御コマンドに基づく処理に必要なデータ)の有無は考慮しないものとする。
また、上述したコード生成部313は、それぞれ独立して動作コードと相対時間コードとを生成しているが、コード生成の際に、一方のコードを利用してもよい。たとえば、コード生成部313は、まず、通常通りに相対時間コードを生成し、この相対時間コードの生成に利用した情報の一部もしくはすべてと、制御コマンド送信時の主制御部310の動作順序の検査値とを用いた所定の演算によって動作コードを生成してもよい。また、逆の手順を用いて、通常通りに動作コードを生成し、この動作コードの生成に利用した情報の一部もしくはすべてと、計時部312によって計時された相対時間に関する検査値とを用いた所定の演算によって相対時間コードを生成してもよい。
なお、上述した構成では、動作コードと、相対時間コードとが制御コマンドに付加される構成を説明したが、動作コードと相対時間コードとを制御コマンドを認証するための認証データとして、制御コマンドと別々に送信するような構成であってもよい。この場合は、送信部315からは、制御コマンドと、各コードとのそれぞれを送信する。各コードのうち、所定のコードのみ(動作コードのみ、相対時間コードなど)を制御コマンドに付加するような構成であってもよい。
たとえば、相対時間コードを生成する手法として、相対時間コードの生成の前段にて、コード生成部313によって動作コードを生成する際に利用される情報の一部もしくはすべてと、上述したような制御コマンド送信時の主制御基板310の動作順序を認証するための相対時間に関する検査値とを用いた所定の演算によって相対時間コードを生成してもよい。同様に、動作コードを生成する手法として、動作コードを生成する前段にて、コード生成部313によって相対時間コードを生成する際に利用される情報の一部もしくはすべてと、制御コマンド送信時の主制御部310の動作順序を認証するための主制御部310の動作手順の検査値とを用いた所定の演算によって動作コードを生成してもよい。
また、上述した動作コードと、相対時間コードとを制御コマンドに付加して送信する手法と、動作コードと相対時間コードとを制御コマンドと別々に送信する手法とのいずれの場合も、送信する制御コマンドのデータ自身や付随データを利用して動作コードと相対時間コードとを生成してもよい。ここで述べている付随データとは、制御コマンドの内容に付随するデータであり、たとえば、入賞した遊技球の数など制御コマンドに基づく処理に必要なデータである。このような付随データを利用した場合、不正な制御基板による動作コードの再利用を防止することができる。したがって、より確実に周辺基板320への不正制御を検出させることができる。
・周辺基板の機能的構成
つぎに、周辺基板320の機能的構成について説明する。図3のように、周辺基板320は、受信部321と、動作認証部322と、制御コマンド認証部323とによって構成される。
受信部321は、主制御基板310の送信部315によって送信された制御コマンドを受信する。なお、上述したように、制御コマンドと別に動作コードや相対時間コードが送信された場合には、制御コマンドと、この制御コマンドの認証データとして動作コードや、相対時間コードを受信する。
ここで、制御コマンドに動作コードや相対時間コードが付加されている場合の受信部321の機能について、より詳細に説明する。制御コマンドに動作コードや相対時間コードが付加されている場合、受信部321では、制御コマンドを各種コードが付加されているか否かの判断をおこなわなければならない。
通常、主制御基板310では、制御コマンドに動作コードや相対時間コードを付加する場合、任意のルールにしたがった付与処理がおこなわれる。たとえば、制御コマンドを8ビットとした場合のルールとして、主制御基板310は、上位側の5ビットを実際の制御コマンド用に割り当て、下位側の3ビットを動作コードや相対時間コードの付与用に割り当てたものを制御コマンドとして送信する。
この場合、周辺基板320の受信部321は、受信した制御コマンドの下位側の3ビットを参照して、動作コードや相対時間コードが付与されているか否かを判断するように設定する。そして、受信した制御コマンドに動作コードや相対時間コードが付与されていた場合には、その動作コードもしくは相対時間コードを用いて下記に示す処理によって制御コマンドの認証をおこなう。
また、他のルールとして、主制御基板310は、上述のように単純に制御コマンドとその他コード(動作コードや相対時間コード)のビットを繋ぎ合わせるのではなく、制御コマンドとその他コードとの双方が8ビットの値から構成され、これら8ビットの値を加算したものを動作コードや相対時間コードが付与された制御コマンドとして送信する。
この場合、周辺基板320の受信部321は、受信した制御コマンドから、今回主制御基板310から送信される制御コマンドであると期待される制御コマンド(8ビットの値)を減算する。この期待される制御コマンドは、周辺基板320が正規の基板であれば、前回や前々回に受信し、なおかつ、周辺基板320によって認証された(具体的な認証手順は、後述する)制御コマンドから容易に特定することができる。また、リセット直後など、前回や前々回に受信した制御コマンドの記録が蓄積されていない場合には、初期化指示をあらわす制御コマンドが送信されると特定することができる。したがって、周辺基板320の受信部321は、制御コマンド(8ビットの値)を減算後の値を動作コードもしくは相対時間コードとして下記に示す処理によって制御コマンドの認証をおこなう。なお、このとき、受信した制御コマンドから減算する値を動作コードもしくは相対時間コードとし、減算後の値が期待される制御コードであるか否かを判定してもよい。
動作認証部322は、受信部321によって受信された制御コマンドに付加された動作コードと相対時間コードとを用いて、制御コマンド送信時の主制御基板の動作順序を認証する。ここでも、動作コード、もしくは相対時間コードに対して所定の演算が施されている場合には、主制御基板310のコード生成部313の演算処理の内容に応じて、所定の演算をおこない、動作コードもしくは相対時間コードを取得する。そして、取得された動作コードが、制御コマンド送信時の主制御部310の動作順序をあらわす検査値であった場合、主制御基板310の動作が正しい順序の動作であると認証する。また、相対時間コードが、主制御基板310の動作の継続状態をあらわす検査値であった場合、主制御基板310の動作が正しい順序の動作であると認証する。
なお、動作認証部322は、受信部321によって直接相対時間コードを受信した場合には、この相対時間コードを用いて主制御基板310の動作順序の認証をおこなう。また、動作コードが相対時間コードのすべて、もしくは一部を利用して生成されている場合には、まず相対時間コードの認証をおこない、その後、動作コードの認証をおこなう。同様に、相対時間コードが動作コードのすべて、もしくは一部を利用して生成されている場合には、まず、動作コードの認証をおこない、その後、相対時間コードの認証をおこなう。
制御コマンド認証部323は、動作認証部322による動作コードによる認証と、相対時間コードによる認証との双方が成立した場合に、主制御基板310が正しい制御コマンドを出力していると認証する。ここで、どちらか一方の認証が失敗した場合には、不正な制御基板から不正制御をおこなうための不正な制御コマンド(不正な制御信号)が出力されていると判断され、不正制御が検知される。
以上説明したように、被認証者である主制御基板310には、認証者である周辺基板320によって認証処理をおこなうために、動作コードと相対時間コードとの2種類のコードを生成する機能を備えている。これら、2種類のコードは、所定の制御コマンドの送信と連動して生成される。また、周辺基板320では、送信された2種類のコードを用いてそれぞれ異なる方式で認証をおこなう。そして、双方の認証が成功して、はじめて正しい制御コマンドを受信したと認証する。
なお、本実施の形態では、同一の電子機器内に被認証者の主制御基板310と、認証者の周辺基板320とが搭載されている例を挙げているが、異なる電子機器に搭載された主制御基板と周辺基板とが、制御部−被制御部の関係となる場合もある。
このような場合、たとえば、被制御部に対して制御コマンドを送信する主制御基板は、被制御部に送信する制御コマンドが所定の制御コマンドである場合、主制御基板および動作内容に関する情報を認証するための認証用のコード(本実施の形態では、動作コードや相対時間コード)を異なる認証方式で複数個生成するコード生成部と、制御コマンドとともに、複数のコードを被制御部に送信する送信部を備えていればよい。
また、制御部から制御コマンドを受信する周辺基板は、制御部から送信された制御コマンドとともに主制御部に関する情報を認証する認証方式の異なる複数のコードとを受信する受信部と、受信された複数のコードを用いて、それぞれ主制御部に関する情報を認証するコード認証部と、コード認証部による認証結果に応じて、主制御部が正しい制御コマンドを出力していると認証する制御コマンド認証部とを備えていればよい。
(認証処理の手順)
つぎに、図3によって説明した主制御基板310から出力される制御コマンドの認証処理の手順について説明する。上述したように、本実施の形態では、主制御基板310からの制御コマンドの送信に伴い、動作コードと相対時間コードとの2つのコードが周辺基板320に送信される。周辺基板320では、主制御基板310から送信された2つのコードを利用して受信した制御コマンドが正規の主制御基板310から送信された制御コマンドであるか否かを認証する。以下、主制御基板310、周辺基板320それぞれの処理の手順について説明する。
・制御コマンド送信処理
図4−1は、本発明にかかる主制御基板の制御コマンド送信処理の手順を示すフローチャートである。図4−1のフローチャートにおいて、まず、制御コマンド出力部311から所定の制御コマンドが出力されたか否かを判断する(ステップS411)。ここで、所定の制御コマンドが出力されるまで待ち(ステップS411:Noのループ)、所定の制御コマンドが出力されると(ステップS411:Yes)、制御コマンドがコード生成部313に入力され、主制御基板310を認証するための相対時間コードと、動作コードとを生成する(ステップS412、S413)。
相対時間コードと動作コードとの双方が生成されると、付加部314によって、生成された各コード(相対時間コード、動作コード)が制御コマンドに付加される(ステップS414)。最後に、送信部315から、制御コマンドを周辺基板320に送信し(ステップS415)、一連の処理を終了する。
以上説明した制御コマンド送信処理において、相対時間コードと動作コードとの生成順序は特に限定されないが、上述したように動作コードを用いて相対時間コードを生成する場合や相対時間コードを用いて動作コードを生成する場合には、他のコードを生成する際に利用されるコードを先に生成する。
・制御コマンド受信処理
図4−2は、本発明にかかる周辺基板の制御コマンド受信処理の手順を示すフローチャートである。図4−2のフローチャートにおいて、まず、受信部321において、制御コマンドを受信したか否かを判断する(ステップS421)。ここで、制御コマンドを受信するまで待ち(ステップS421:Noのループ)、制御コマンドを受信すると(ステップS421:Yes)、動作認証部322において、制御コマンドに付加された動作コードを用いて主制御基板310の動作順序を認証する(ステップS422)。
ステップS422の処理において認証が成功したか否かを判断し(ステップS423)、認証が成功した場合(ステップS423:Yes)、ステップS421において受信した制御コマンドに付加された相対時間コードを用いて主制御基板310の動作順序を認証する(ステップS424)。そして、ステップS424の処理において認証が成功したか否かを判断し(ステップS425)、認証が成功した場合(ステップS425:Yes)、ステップS421において受信した制御コマンドを正しい信号とし認証し(ステップS426)、一連の処理を終了する。
なお、ステップS423、S425において、認証が失敗した場合(ステップS423、S425:No)、ステップS421において受信した制御コマンドを不正な制御コマンドとして検知して(ステップS427)、一連の処理を終了する。
以上説明したように、本実施の形態の認証処理では、主制御基板310から、周辺基板320に対して制御コマンドを送信すると、同時に動作コードと相対時間コードとの2種類の認証データが送信される。そして、周辺基板320では動作コードを用いた主制御基板310の動作順序の認証と、相対時間コードを用いた主制御基板310の動作順序の認証とがおこなわれる。これら2つの認証処理の双方が成功した場合に、正しい主制御基板310から制御コマンドが送信されたと判断され、制御コマンドは、正規の制御信号であると認証される。
また、上述のように1回のコマンド送信と同時に動作コードと相対時間コードとの両方送信するのではなく、たとえば、最初にどちらか一方を送信し、次のコマンド送信時にもう一方を送信して、以降はこれを繰り返すようにしてもよい。この場合、動作コードと相対時間コードとを1回ずつ交互に送信してもよいし、複数回ごと(たとえば2回ごとや5回ごとなど)に切り替えて送信してもよい。さらに、複数回ごとに切り替える場合は、たとえば、3回分の制御コマンド送信において、相対時間コードは2回連続で送信し、次の制御コマンド送信の際(3回目分の制御コマンド送信時)に動作コードを送信するといった、送信回数の比率が異なるようにしてもよい。
なお、本実施の形態では、動作コードと、相対時間コードとの2種類を利用しているが、さらに、これら2種類のコードと異なる方式で認証をおこなう他のコードを生成する機能部を追加してもよい。具体的には、たとえば、CPUのシリアル番号から三種類目の認証用コードを生成し、メーカコードから四種類目を、デバイス識別番号から五種類目の認証用コードを生成して用いる方式などがある。また、上述のような認証用コードの生成手法以外にもたとえば、ウォッチドッグタイマのクリアごとに、クリアしたという事象を認証用コードとして生成する方式や、クリアごとにカウントアップするカウント値から認証用コードを生成する手法などを適用してもよい。
このように三種類以上の認証データを用いる場合、認証者である周辺基板320では、制御コマンドと共に受信した複数のコードを用いてそれぞれ認証処理をおこなう。そして、各コードを用いた認証処理すべてが成功した場合に、正規の制御コマンドを受信したと判断してもよいし、所定数以上の認証処理が成功した場合に正規の制御コマンドを受信したと判断するように設定してもよい。
また、上述したような複数のコードのうち、どのコードを利用した認証が成功したかに応じて制御コマンドの認証をおこなってもよい。たとえば、制御コマンド認証部324において、相対時間コードもしくは動作コードを用いて主制御基板310に関する認証もしくは動作順序に関する情報のうち、指定された情報が認証された場合に、主制御基板310が正しい制御コマンドを出力していると認証するように設定する。
このように、複数のコードを認証データとして、それぞれ認証するような構成であれば、主制御基板310や周辺基板320の処理能力が低い場合、また、プログラム領域や作業用データ領域のサイズ制限などによって、複雑な処理を実装できない場合であっても、各認証処理を処理負荷の軽いものに設定すれば、認証処理の内容の組み合わせと、認証回数とによって認証強度を高めることができる。また、複数のコードのうち、認証処理の正否を正規の制御コマンドを受信したか否かの判断に利用しないダミーのコードを含めてもよい。このようなダミーのコードを含ませることによって、第三者による主制御基板の動作解析や認証方式、認証用データの解析をより困難にすることができる。
(認証処理の実施例)
つぎに、主制御基板310と周辺基板320による認証処理の具体的な実施例1〜6について説明する。ここでは、上述したように、主制御基板310から所定の制御コマンドが送信される際の動作コードと相対時間コードと生成と送信のタイミング、また、周辺基板320による受信と認証のタイミングに限定して説明する。
<実施例1:動作コードを基準とした認証>
図5は、実施例1の認証処理の手順を示すフローチャートである。図5のフローチャートにおいて、まず、被認証者である主制御基板310において、正規のCPUの動作手順をあらわす動作コードVsnが生成される(ステップS501)。このステップS501において生成される動作コードVsnは、下記(1)式となる。なお、ここでは、一回の認証処理について説明しているため、n=0からスタートしたとする。したがって、ステップS501にて生成されたのは、動作コードVs0となる。
動作コードVsn=Hs(Sn,Bn) …(1)
Hs():動作コードの生成式
Sn :動作順序の検査値(実行番号など)
Bn :付加情報(任意に設定可能な値であり、カウンタ値や擬似乱数などの動的に変更する値)
n :処理順序
動作コードVs0が生成されると、制御コマンドの出力タイミングに応じた計時がおこなわれ、相対時間コードVtnが生成される(ステップS502)。このステップS502において生成される相対時間コードVtnは、下記(2)式となり、ステップS501において生成された動作コードVsnの生成式の変数Snを含んだ構成となっている。なお、このとき、相対時間コードVtnの生成式は、変数Snと、さらに変数Bnを含んだ構成にしてもよい。また、ここでも一回の認証処理について説明しているため、n=0からスタートしたとする。したがって、ステップS502にて生成されたのは、相対時間コードVt0となる。
相対時間コードVtn=Ht(Tn,Sn) …(2)
Ht():相対時間コードの生成式
Tn :相対時間検査値(計時部312から取得した値)
動作コードVs0と相対時間コードVt0とが生成されると、まず、動作コードVs0を周辺基板320に送信し(ステップS503)、さらに、相対時間コードVt0を周辺基板320に送信し(ステップ504)、一回の認証処理にかかる主制御基板310の処理が終了する。
一方、認証者側の周辺基板320では、まず、主制御基板310から送信された動作コードVs0を認証する(ステップS511)。続いて、主制御基板310から送信された相対時間コードVt0を認証し(ステップS512)、一回の認証処理を終了する。以下、主制御基板310からつぎの制御コマンドが送信されると、同様の手順によって動作コードVs1、相対時間コードVt1、が生成される。このように実施例1の場合、相対時間コードVtnには、動作コードVsnの生成式の変数が含まれているため、相対時間コードVtnの認証には、動作コードVsnの受信および認証が必須となる。
<実施例2:相対時間コードを基準に認証>
図6は、実施例2の認証処理の手順を示すフローチャートである。図6のフローチャートにおいて、まず、被認証者である主制御基板310において、制御コマンドの出力タイミングに応じた計時がおこなわれ、相対時間コードVtnが生成される(ステップS601)。このステップS601において生成される相対時間コードVtnは、下記(3)式となる。なお、上述したように、ここでは一回の認証処理について説明しているため、n=0からスタートしたとする。したがって、ここでは正確には相対時間コードVt0となる。
相対時間コードVtn=Ht(Tn,Bn) …(3)
Ht():相対時間コード生成式
Tn :相対時間検査値(計時部312から取得した値)
Bn :付加情報(任意に設定可能な値であり、カウンタ値や擬似乱数などの動的に変更する値))
n :処理順序
相対時間コードVt0が生成されると、続いて正規のCPUの動作コードVsnが生成される(ステップS602)。このステップS602において生成される動作コードVsnは、下記(4)式となり、ステップS601において生成された相対時間コードVtnの生成式の変数Tnを含んだ構成となっている。なお、動作コードVsnの生成式は、変数Tnと、さらに変数Bnを含んだ構成にしてもよい。また、ここでも一回の認証処理について説明しているため、n=0からスタートしたとする。したがって、ステップS602にて生成されたのは、動作コードVs0となる。
動作コードVsn=Hs(Sn,Tn) …(4)
Hs():動作コード生成式
Sn :動作手順の検査値
相対時間コードVt0と動作コードVs0とが生成されると、まず、相対時間コードVt0を周辺基板320に送信し(ステップS603)、さらに、動作コードVs0を周辺基板320に送信し(ステップ604)、一回の認証処理にかかる主制御基板310の処理が終了する。
一方、認証者である周辺基板320では、まず、主制御基板310から送信された相対時間コードVt0を認証する(ステップS611)。続いて、主制御基板310から送信された動作コードVs0を認証し(ステップS612)、一回の認証処理を終了する。以下、主制御基板310からつぎの制御コマンドが送信されると、同様の手順によって相対時間コードVt1、動作コードVs1が生成される。このように実施例2の場合、動作コードVsnには、相対時間コードVt0の生成式の変数が含まれているため、動作コードVsnの認証には、相対時間コードVtnの受信および認証が必須となる。
<実施例3:実施例1(動作コードを基準に認証)の変形例1>
図7は、実施例3の認証処理の手順を示すフローチャートである。実施例3では、動作コードVsnが所定回数認証された後、相対時間コードVtnの認証をおこなう。図7のフローチャートにおいて、まず、動作コードVsnを生成する(ステップS701)。このステップS701によって生成される動作コードVsnは、実施例1のステップS501によって生成された動作コードVs0に相当する。
つぎに、ステップS701によって生成された動作コードVs0を周辺基板320に送信する(ステップS702)。周辺基板320では、ステップS702によって送信された動作コードVs0を認証する(ステップS711)。
ステップS702の送信が終了した主制御基板310は、2回目の動作コードVs1の生成をおこなう(ステップS703)。そして、生成された動作コードVs1の生成をトリガに、相対時間コードVt0を生成する(ステップS704)。このステップS703、704によって生成される動作コードVs1および相対時間コードVt0は、下記(5)、(6)式となる。
動作コードVs1=Hs(S1,B1) …(5)
相対時間コードVt0=Ht(T0,S0) …(6)
上記(6)式に示したように、相対時間コードVt0には、1回目に生成された動作コードVs0の生成式の変数S0を含んでいる。なお、このとき、変数S0に替わって変数S1を含んでもよいし、変数S0,S1との合成数(たとえば、S0,S1を用いた四則演算など)を含んでもよい。
主制御基板310では、動作コードVs1と相対時間コードVt0との生成が終わると、動作コードVs1と相対時間コードVt0とをそれぞれ周辺基板320に送信し(ステップS705,706)、一回の認証処理にかかる主制御基板310の処理が終了する。
周辺基板320では、主制御基板310から送信された動作コードVs1を認証する(ステップS712)。続いて、主制御基板310から送信された相対時間コードVt0を認証し(ステップS713)、一回の認証処理を終了する。以下、主制御基板310からつぎの制御コマンドが送信されると、同様の手順によって動作コードVs2,Vs3、相対時間コードVt1が生成される。
このように実施例3の場合、動作コードVsnの生成が所定数(ここでは2回)おこなわれたことをトリガにして相対時間コードVtnを生成する。また、相対時間コードVtnには、動作コードVsnの生成式の変数が含まれているため、相対時間コードVtnの認証には、動作コードVsnの受信および認証が必須となる。
<実施例4:実施例2(相対時間コードを基準に認証)の変形例1>
図8は、実施例4の認証処理の手順を示すフローチャートである。実施例4では、相対時間コードVtnが所定回数認証された後、動作コードVsnの認証をおこなう。図8のフローチャートにおいて、まず、制御コマンドの出力タイミングに応じた計時がおこなわれ、相対時間コードVtnが生成される(ステップS801)。このステップS801によって生成される相対時間コードVtnは、実施例2のステップS601によって生成された相対時間コードVt0に相当する。
つぎに、ステップS801によって生成された相対時間コードVt0を周辺基板320に送信する(ステップS802)。周辺基板320では、ステップS802によって送信された相対時間コードVt0を認証する(ステップS811)。
ステップS802の送信が終了した主制御基板310は、2回目の相対時間コードVt1の生成をおこなう(ステップS803)。そして、生成された相対時間コードVt1の生成をトリガに、動作コードVs0を生成する(ステップS804)。このステップS803、804によって生成される相対時間コードVt1および動作コードVs0は、下記(7)、(8)式となる。
相対時間コードVt1=Ht(T1,B1) …(7)
動作コードVs0=Hs(S0,T0) …(8)
上記(8)式に示したように、動作コードVs0には、1回目に生成された相対時間コードVt0の生成式の変数T0を含んでいる。なお、このとき、変数T0に替わって変数T1を含んでもよいし、変数T0,T1との合成数(たとえば、T0,T1を用いた四則演算など)を含んでもよい。
主制御基板310では、相対時間コードVt1と動作コードVs0との生成が終わると、相対時間コードVt1と動作コードVs0とをそれぞれ周辺基板320に送信し(ステップS805,806)、一回の認証処理にかかる主制御基板310の処理が終了する。
周辺基板320では、主制御基板310から送信された相対時間コードVt1を認証する(ステップS812)。続いて、主制御基板310から送信された動作コードVs0を認証し(ステップS813)、一回の認証処理を終了する。以下、主制御基板310からつぎの制御コマンドが送信されると、同様の手順によって相対時間コードVt2,Vt3、動作コードVs1が生成される。
このように実施例4の場合、相対時間コードVtnの生成が所定数(ここでは2回)おこなわれたことをトリガにして動作コードVsnを生成する。また、動作コードVsnには、相対時間コードVtnの生成式の変数が含まれているため、動作コードVsnの認証には、相対時間コードVtnの受信および認証が必須となる。
<実施例5:実施例1(動作コードを基準に認証)の変形例2>
図9は、実施例5の認証処理の手順を示すフローチャートである。実施例5では、主制御基板310から所定数のコードが送信された場合に、周辺基板320によってこれらのコードそれぞれの認証をおこなう。
図9のフローチャートにおいて、まず、正規のCPUの動作コードVsnを生成する(ステップS901)。このステップS901によって生成される動作コードVsnは、実施例3のステップS701によって生成された動作コードVs0に相当する。
つぎに、ステップS901によって生成された動作コードVs0を周辺基板320に送信する(ステップS902)。さらに、主制御基板310は、2回目の動作コードVs1の生成をおこなう(ステップS903)。このステップS903によって生成される動作コードVs1は、実施例3のステップS703によって生成された動作コードVs1に相当する。
そして、主制御基板310は、動作コードVs0,Vs1の生成をトリガに、相対時間コードVt0を生成する(ステップS904)。このステップS904によって生成される相対時間コードVt0は、実施例3のステップS704によって生成された相対時間コードVt0に相当する。すなわち、相対時間コードVt0には、1回目に生成した動作コードVs0の生成式の変数S0を含んでいる。当然ながら、変数S0に替わって変数S1を含んでもよいし、変数S0,S1との合成数(たとえば、S0,S1を用いた四則演算など)を含んでもよい。
主制御基板310では、動作コードVs1と相対時間コードVt0との生成が終わると、動作コードVs1と相対時間コードVt0とをそれぞれ周辺基板320に送信し(ステップS905,906)、一回の認証処理にかかる主制御基板310の処理が終了する。このとき、動作コードVs1と相対時間コードVt0の送信順序(910のタイミング)はランダムに変化するように設定してもよい。
一方、認証者である周辺基板320では、動作コードVs0,Vs1と相対時間コードVt0とのすべてのコードの受信をトリガとして認証を開始する。まず、主制御基板310から送信された動作コードVs0を認証する(ステップS911)。続いて、動作コードVs1を認証する(ステップS912)。最後に、相対時間コードVt0を認証し(ステップS913)、一回の認証処理を終了する。以下、主制御基板310からつぎの制御コマンドが送信されると、同様の手順によって動作コードVs2,Vs3、相対時間コードVt1が生成される。
このように実施例5の場合、動作コードVsnの生成が所定数(ここでは2回)おこなわれたことをトリガにして相対時間コードVtnを生成する。また、周辺基板320でも、所定のコードすべての受信が完了したことをトリガとして、各コードの認証を開始する。また、相対時間コードVtnには、動作コードVsnの生成式の変数が含まれているため、相対時間コードVtnの認証には、動作コードVsnの受信および認証が必須となる。
<実施例6:実施例2(相対時間コードを基準に認証)の変形例2>
図10は、実施例6の認証処理の手順を示すフローチャートである。実施例6では、実施例5と同様に、主制御基板310から所定数のコードが送信された場合に、周辺基板320によってこれらのコードそれぞれの認証をおこなう。
図10のフローチャートにおいて、まず、制御コマンドの出力タイミングに応じた計時がおこなわれ、相対時間コードVtnが生成される(ステップS1001)。このステップS1001によって生成される相対時間コードVtnは、実施例2のステップS601によって生成された相対時間コードVt0に相当する。
つぎに、ステップS1001によって生成された相対時間コードVt0を周辺基板320に送信する(ステップS1002)。さらに、主制御基板310は、2回目の相対時間コードVt1の生成をおこなう(ステップS1003)。このステップS1003によって生成される相対時間コードVt1は、実施例4のステップS803によって生成された相対時間コードVt1に相当する。
そして、主制御基板310は、相対時間コードVt0,Vt1の生成をトリガに、正規のCPUの動作コードVsnを生成する(ステップS1004)。このステップS1004によって生成される動作コードVsnは、実施例4のステップS804によって生成された動作コードVs0に相当する。すなわち、動作コードVs0には、1回目に生成された相対時間コードVt0の生成式の変数T0を含んでいる。当然ながら、変数T0に替わって変数T1を含んでもよいし、変数T0,T1との合成数(たとえば、T0,T1を用いた四則演算など)を含んでもよい。
主制御基板310では、相対時間コードVt1と動作コードVs0との生成が終わると、相対時間コードVt1と動作コードVs0とをそれぞれ周辺基板320に送信し(ステップS1005,1006)、一回の認証処理にかかる主制御基板310の処理が終了する。このとき、相対時間コードVt1と動作コードVs0の送信順序(1010のタイミング)はランダムに変化するように設定してもよい。
一方、認証者である周辺基板320では、相対時間コードVt0,Vt1と動作コードVs0とのすべてのコードの受信をトリガとして認証を開始する。まず、主制御基板310から送信された相対時間コードVt0を認証する(ステップS1011)。続いて、相対時間コードVt1を認証する(ステップS1012)。最後に、動作コードVs0を認証し(ステップS1013)、一回の認証処理を終了する。以下、主制御基板310からつぎの制御コマンドが送信されると、同様の手順によって相対時間コードVt2,Vt3、動作コードVs1が生成される。
このように実施例6の場合、相対時間コードVtnの生成が所定数(ここでは2回)おこなわれたことをトリガにして動作コードVsnを生成する。また、周辺基板320でも、所定のコードすべての受信が完了したことをトリガとして、各コードの認証を開始する。また、動作コードVsnには、相対時間コードVtnの生成式の変数が含まれているため、動作コードVsnの認証には、相対時間コードVtnの受信および認証が必須となる。
(動作コードの生成手順例)
図5〜図10のフローチャートでは、一様に動作コードを生成し、送信していたが、認証強度を上げるために、動作コードの生成手順としてさらに詳細な設定をおこなうこともできる。以下、動作コードの生成手順の詳細な例として生成手順1〜4を説明する。
・生成手順1
図11は、動作コードの生成手順1を示すフローチャートである。生成手順1は、1回の検査値の生成を1回の動作コードの生成とする最も基本的な処理である。図11のフローチャートにおいて、まず、主制御基板310は、1回目の検査値を生成する(ステップS1101)。そして、この検査値を動作コードとして、周辺基板320に送信し(ステップS1102)、1回の動作生成処理を終了する。なお、検査値を動作コードとして送信する際に、検査値をそのまま用いてもいし、所定の暗号化を施してもよい。
周辺基板320は、主制御基板310から送信された動作コードを受信して、認証をおこない(ステップS1111)、1回の動作コードの認証を終了する。このように、生成手順1では、検査値生成の処理がおこなわれると、この1回の処理で送信された動作コードを用いて認証がおこなわれる。なお、周辺基板320において、受信した動作コードをどのタイミングで認証するかは、図5〜図10のフローチャートにて説明したように、認証処理の手順により異なるため、ステップS1111のタイミングに限定されない。
・生成手順2
図12は、動作コードの生成手順2を示すフローチャートである。生成手順2では、所定回数(ここでは、3回)の検査値が動作コードとして送信された場合を1回の動作コードの送信とみなし、周辺基板320では、所定回数送信された動作コードをすべて受信した場合を1セットとして1回の認証をおこなう。
図12のフローチャートにおいて、まず、主制御基板310は、1回目の検査値を生成すると(ステップS1201)、この1回目の検査値を動作コードとして周辺基板320に送信する(ステップS1202)。ここで送信された動作コードの処理回数は「1」となる。
主制御基板310は、続いて、2回目の検査値を生成し(ステップS1203)、この2回目の検査値を動作コードとして周辺基板320に送信する(ステップS1204)。ここで動作コードの処理回数は「2」となる。そして、3回目の検査値を生成し(ステップS1205)、3回目の検査値を動作コード(処理回数「3」)として周辺基板320に送信することによって(ステップS1206)、主制御基板310の1回の動作コード生成処理は終了する。ここでも、検査値を動作コードとして送信する際に、検査値をそのまま用いてもよいが、所定の暗号化を施してもよい。
周辺基板320では、処理回数1〜3の動作コードをすべて受信すると、これら3回送信された各動作コードを1セットとして動作コードの認証をおこなう(ステップS1211)。ここでも、図11のフローチャートと同様に、どのタイミングで動作コードを認証するかは、利用する認証処理の手順により異なるため、ステップS1211のタイミングに限定されない。
上述したように、生成手順1,2では、1回の動作コード生成にかかる検査値の生成回数の替わりに、主制御基板310から制御コマンドを送信する際に、主制御基板310によって実行されたプログラムの動作手順に対応した機能番号を利用してもよい。機能番号は、一般的に制御コマンドの実行プログラムのプログラムコードの処理単位に割り当てられた値である。つぎに、生成手順3,4では、この機能番号から期待値を設定し、検査値との比較することで動作コードを認証する。
なお、機能番号を利用することにより、制御コマンドの生成や送信直前のルーチンを正しく実行したことを証明することができる。具体的には、大当り開始コマンド生成および送信に対応する機能番号を認証することによって、大当り処理に関するルーチンを実行したことが証明される。また、上述した例以外にも、任意のルーチンを正しく実行したことを証明したり、任意の連続もしくは離散的な処理区間(複数のルーチン群)をフロー通りに実行したことを証明することができる。
・生成手順3
図13は、動作コードの生成手順3を示すフローチャートである。生成手順3は、機能番号ごとの検査値の生成を動作コードの生成とする最も基本的な処理である。図13のフローチャートにおいて、まず、主制御基板310は、機能番号1の検査値を生成する(ステップS1301)。そして、この検査値を動作コードとして、周辺基板320に送信し(ステップS1302)、機能番号1における動作生成処理を終了する。なお、検査値を動作コードとして送信する際に、検査値をそのまま用いてもよいが、所定の暗号化を施してもよい。
周辺基板320では、主制御基板310から送信された動作コードを受信して、認証をおこない(ステップS1311)、機能番号1の動作コードの認証を終了する。このように、生成手順3では、ある機能番号(たとえば機能番号1)を用いた検査値生成の処理がおこなわれると、この機能番号にかかる動作コードを用いて認証がおこなわれる。なお、周辺基板320において、受信した動作コードをどのタイミングで認証するかは、図5〜図10のフローチャートにて説明したように、認証処理の手順により異なるため、ステップS1311のタイミングに限定されない。
・生成手順4
図14は、動作コードの生成手順4を示すフローチャートである。生成手順4では、制御コマンド出力に伴った機能番号が所定の遷移した場合を1周期(1回分)として動作コードの生成する処理である。なお、ここでは、所定の遷移として機能番号1→3→4→2となった場合を1周期とする。
図14のフローチャートにおいて、まず、主制御基板310は、機能番号1の検査値を生成する(ステップS1401)。そして、生成された機能番号1の検査値を動作コードとして周辺基板320に送信する(ステップS1402)。続いて、主制御基板310は、機能番号3の検査値を生成する(ステップS1403)。そして、生成された機能番号3の検査値を動作コードとして周辺基板320に送信する(ステップS1404)。
さらに、主制御基板310は、機能番号4の検査値を生成し(ステップS1405)、生成された機能番号4の検査値を動作コードとして周辺基板320に送信する(ステップS1406)。その後、主制御基板310は、機能番号2の検査値を生成し(ステップS1407)、生成された機能番号2の検査値を動作コードとして周辺基板320に送信する(ステップS1408)。以上の処理で、主制御基板310の1周期の動作コード送信が終了する。
一方、周辺基板320では、主制御基板310から送信された動作コードを受信する。このとき、周辺基板320は、動作コードとして機能番号1の検査値、機能番号3の検査値、機能番号4の検査値、機能番号2の検査値の順序、すなわち所定の遷移で4回の受信がおこなわれている。したがって、この4回の受信を1セットとして動作コードの認証をおこない(ステップS1411)、1周期の認証処理を終了する。
以上説明したように、動作コードの生成の際にも、様々な情報を利用することができる。これらの生成手順1〜4を上述の実施例と組み合わせてもよい。
以上説明したように、主制御基板310による動作コード、相対時間コードの生成および送信として様々なバリエーションを設定することができる。同様に、周辺基板320においてどのような手順で認証をおこなうかを設定することができる。これらの設定に応じて、処理負荷や認証強度を変化させることができる。したがって、主制御基板310、周辺基板320の処理能力や、要求される認証強度に応じて設定を調整すればよい。
また、本発明の本実施の形態にかかる電子機器、主制御基板、周辺基板、認証方法および認証プログラムでは、動作コードと相対時間コードという2種類の認証データを利用した認証処理がおこなわれる。この認証処理では、2種類の認証データのうち、どちらか一方のコードが認証されない場合には、不正な制御基板から送信された不正な制御コマンドと判断されることにより、不正な制御信号が検出され、不正制御を防ぐことができる。
さらに、本発明では動作コードと相対時間コードとを用いているが、これらの情報は、たとえ第三者に傍受されたとしても主制御基板の処理内容を解析することは極めて困難である。さらに、上述のように、動作コード、相対時間コードなど各コード生成、送信、認証の処理内容に関して多様な設定が可能であるため、第三者による主制御基板の動作解析や認証方式、認証用データの解析を困難にすることができる。
また、本発明では、主制御基板による動作コードや相対時間コードの生成手順や、送信手順を様々な手法から適宜選択して設定することができる。この設定に応じて、各コードの生成処理の負荷や、周辺基板における認証処理の負荷を調整することができる。したがって、電子機器のスペックに応じた認証処理を実行させることができる。
このように本発明にかかる電子機器、主制御基板、周辺基板、認証方法および認証プログラムによれば、高い機密保持能力とともに、主制御基板から被制御部である周辺基板に対する不正制御を防止する機能を実現することができる。
なお、本実施の形態で説明した認証方法は、あらかじめ用意されたプログラムをパーソナル・コンピュータやワークステーションなどのコンピュータで実行することにより実現することができる。このプログラムは、ハードディスク、フレキシブルディスク、CD−ROM、MO、DVDなどのコンピュータで読み取り可能な記録媒体に記録され、コンピュータによって記録媒体から読み出されることによって実行される。またこのプログラムは、インターネットなどのネットワークを介して配布することが可能であってもよい。
以上のように、本発明は、制御基板と周辺基板間との通信内容への不正が懸念される電子機器やその電子機器に搭載される制御基板および周辺基板に有用であり、特に、パチンコ遊技機、スロット遊技機、その他各種の遊技機に適している。
本発明にかかる電子機器を搭載したパチンコ遊技機の構成の一例を示す説明図である。 パチンコ遊技機の制御部の内部構成を示すブロック図である。 主制御基板および周辺基板の認証処理にかかる機能的構成を示すブロック図である。 本発明にかかる主制御基板の制御コマンド送信処理の手順を示すフローチャートである。 本発明にかかる周辺基板の制御コマンド受信処理の手順を示すフローチャートである。 実施例1の認証処理の手順を示すフローチャートである。 実施例2の認証処理の手順を示すフローチャートである。 実施例3の認証処理の手順を示すフローチャートである。 実施例4の認証処理の手順を示すフローチャートである。 実施例5の認証処理の手順を示すフローチャートである。 実施例6の認証処理の手順を示すフローチャートである。 動作コードの生成手順1を示すフローチャートである。 動作コードの生成手順2を示すフローチャートである。 動作コードの生成手順3を示すフローチャートである。 動作コードの生成手順4を示すフローチャートである。 従来技術による不正防止技術の概要を示す説明図である。 不正な制御基板の挿入例を示す説明図である。 信号切替回路による信号切り替えの概要を示す説明図である。
201 主制御部
202 演出制御部
203 賞球制御部
310 主制御基板
311 制御コマンド出力部
312 計時部
313 コード生成部
314 付加部
315 送信部
320 周辺基板
321 受信部
322 動作認証部
323 制御コマンド認証部

Claims (11)

  1. 遊技機の周辺基板にデータ送信可能な前記遊技機の主制御基板であって、
    前記周辺基板に入賞状況をあらわす制御コマンドの中の所定の制御コマンドを送信する場合、前記制御コマンドの送信に伴って変動する値によって構成された動作手順の検査値を生成し、前記動作手順の検査値に基づいて、前記周辺基板において前記主制御基板の動作順序が連続しているか認証するための動作コードを生成する動作コード生成手段と、
    他の手段から独立してフリーランに計時をおこなう計時手段と、
    前記主制御基板において特定の事象が発生したタイミングで前記計時手段から取得した計時時間の情報の中から基準値を任意に設定し、前記基準値と前記基準値以外の前記計時時間の情報の差分値または累積値によってあらわされる相対時間検査値を生成し、前記相対時間検査値と、前記動作コード生成手段によって生成された動作コードの一部もしくはすべてとに基づいて、前記周辺基板において前記主制御基板が前記制御コマンドを継続して送信していることを認証する相対時間コードを生成する相対時間コード生成手段と、
    前記動作コード生成手段によって生成された動作コードと、前記相対時間コード生成手段によって生成された相対時間コードとを前記所定の制御コマンドに付加する付加手段と、
    前記付加手段によって付加された前記所定の制御コマンドを前記周辺基板に送信する送信手段と、
    を備えることを特徴とする主制御基板
  2. 遊技機の周辺基板にデータ送信可能な前記遊技機の主制御基板であって、
    他の手段から独立してフリーランに計時をおこなう計時手段と、
    前記主制御基板において特定の事象が発生したタイミングで前記計時手段から取得した計時時間の情報の中から基準値を任意に設定し、前記基準値と前記基準値以外の前記計時時間の情報の差分値または累積値によってあらわされる相対時間検査値を生成し、前記相対時間検査値に基づいて、前記周辺基板において前記主制御基板が入賞状況をあらわす制御コマンドを継続して送信していることを認証する相対時間コードを生成する相対時間コード生成手段と、
    前記制御コマンドの中の所定の制御コマンドを送信する場合、前記制御コマンドの送信に伴って変動する値によって構成された動作手順の検査値を生成し、前記動作手順の検査値と、前記相対時間コード生成手段によって生成された相対時間コードの一部もしくはすべてとに基づいて、前記周辺基板において前記主制御基板の動作順序が連続しているか認証するための動作コードを生成する動作コード生成手段と、
    前記相対時間コード生成手段によって生成された相対時間コードと、前記動作コード生成手段によって生成された動作コードとを前記所定の制御コマンドに付加する付加手段と、
    前記付加手段によって付加された前記所定の制御コマンドを前記周辺基板に送信する送信手段と、
    を備えることを特徴とする主制御基板。
  3. 遊技機の周辺基板にデータ送信可能な前記遊技機の主制御基板であって、
    前記周辺基板に入賞状況をあらわす制御コマンドの中の所定の制御コマンドを送信する場合、前記制御コマンドの送信に伴って変動する値によって構成された動作手順の検査値を生成し、前記動作手順の検査値に基づいて、前記周辺基板において前記主制御基板の動作順序が連続しているか認証するための動作コードを生成する動作コード生成手段と、
    他の手段から独立してフリーランに計時をおこなう計時手段と、
    前記主制御基板において特定の事象が発生したタイミングで前記計時手段から取得した計時時間の情報の中から基準値を任意に設定し、前記基準値と前記基準値以外の前記計時時間の情報の差分値または累積値によってあらわされる相対時間検査値を生成し、前記相対時間検査値と、前記動作コード生成手段によって生成された動作コードの一部もしくはすべてとに基づいて、前記周辺基板において前記主制御基板が前記制御コマンドを継続して送信していることを認証する相対時間コードを生成する相対時間コード生成手段と、
    前記所定の制御コマンドと、前記動作コード生成手段によって生成された動作コードと、前記相対時間コード生成手段によって生成された相対時間コードとを、前記周辺基板に送信する送信手段と、
    を備えることを特徴とする主制御基板。
  4. 遊技機の周辺基板にデータ送信可能な前記遊技機の主制御基板であって、
    他の手段から独立してフリーランに計時をおこなう計時手段と、
    前記主制御基板において特定の事象が発生したタイミングで前記計時手段から取得した計時時間の情報の中から基準値を任意に設定し、前記基準値と前記基準値以外の前記計時時間の情報の差分値または累積値によってあらわされる相対時間検査値を生成し、前記相対時間検査値に基づいて、前記周辺基板において前記主制御基板が入賞状況をあらわす制御コマンドを継続して送信していることを認証する相対時間コードを生成する相対時間コード生成手段と、
    前記制御コマンドの中の所定の制御コマンドを送信する場合、前記制御コマンドの送信に伴って変動する値によって構成された動作手順の検査値を生成し、前記動作手順の検査値と、前記相対時間コード生成手段によって生成された相対時間コードの一部もしくはすべてとに基づいて、前記周辺基板において前記主制御基板の動作順序が連続しているか認証するための動作コードを生成する動作コード生成手段と、
    前記所定の制御コマンドと、前記相対時間コード生成手段によって生成された相対時間コードと、前記動作コード生成手段によって生成された動作コードとを前記周辺基板に送信する送信手段と、
    を備えることを特徴とする主制御基板。
  5. 前記動作コードは、前記制御コマンド送信時の前記主制御基板の動作順序が連続して行われているかを表す検査値として、前記動作コード生成手段による動作コードの生成処理の実行回数の情報を含ことを特徴とする請求項1〜4のいずれか一つに記載の主制御基板
  6. 前記動作コードは、前記制御コマンド送信時の前記主制御基板の動作手順が連続して行われているかを表す検査値として、前記制御コマンドの実行プログラムの動作手順に対応して設定されている機能番号の情報を含ことを特徴とする請求項1〜4のいずれか一つに記載の主制御基板
  7. 前記動作コードは、前記制御コマンド送信時の前記主制御基板の動作手順が連続して行われているかを表す検査値として、前記動作コード生成手段による動作コードの生成処理の実行回数と、前記制御コマンドの実行プログラムの動作手順に対応して設定されている機能番号の情報とを含むことを特徴とする請求項1〜4のいずれか一つに記載の主制御基板
  8. 遊技機の周辺基板にデータ送信可能な前記遊技機の主制御基板が、
    前記周辺基板に入賞状況をあらわす制御コマンドの中の所定の制御コマンドを送信する場合、前記制御コマンドの送信に伴って変動する値によって構成された動作手順の検査値を生成し、前記動作手順の検査値に基づいて、前記周辺基板において前記主制御基板の動作順序が連続しているか認証するための動作コードを生成する動作コード生成工程と、
    他の手段から独立してフリーランに計時をおこなう計時工程と、
    前記主制御基板において特定の事象が発生したタイミングで前記計時工程から取得した計時時間の情報の中から基準値を任意に設定し、前記基準値と前記基準値以外の前記計時時間の情報の差分値または累積値によってあらわされる相対時間検査値を生成し、前記相対時間検査値と、前記動作コード生成工程によって生成された動作コードの一部もしくはすべてとに基づいて、前記周辺基板において前記主制御基板が前記制御コマンドを継続して送信していることを認証する相対時間コードを生成する相対時間コード生成工程と、
    前記動作コード生成工程によって生成された動作コードと、前記相対時間コード生成工程によって生成された相対時間コードとを前記所定の制御コマンドに付加する付加工程と、
    前記付加工程によって付加された前記所定の制御コマンドを前記周辺基板に送信する送信工程と、
    を実行することを特徴とする認証方法。
  9. 遊技機の周辺基板にデータ送信可能な前記遊技機の主制御基板が、
    前記周辺基板に入賞状況をあらわす制御コマンドの中の所定の制御コマンドを送信する場合、前記制御コマンドの送信に伴って変動する値によって構成された動作手順の検査値を生成し、前記動作手順の検査値に基づいて、前記周辺基板において前記主制御基板の動作順序が連続しているか認証するための動作コードを生成する動作コード生成工程と、
    他の手段から独立してフリーランに計時をおこなう計時工程と、
    前記主制御基板において特定の事象が発生したタイミングで前記計時工程から取得した計時時間の情報の中から基準値を任意に設定し、前記基準値と前記基準値以外の前記計時時間の情報の差分値または累積値によってあらわされる相対時間検査値を生成し、前記相対時間検査値と、前記動作コード生成工程によって生成された動作コードの一部もしくはすべてとに基づいて、前記周辺基板において前記主制御基板が前記制御コマンドを継続して送信していることを認証する相対時間コードを生成する相対時間コード生成工程と、
    前記所定の制御コマンドと、前記動作コード生成工程によって生成された動作コードと、前記相対時間コード生成工程によって生成された相対時間コードとを前記周辺基板に送信する送信工程と、
    を実行することを特徴とする認証方法。
  10. 遊技機の周辺基板にデータ送信可能な前記遊技機の主制御基板に、
    前記周辺基板に入賞状況をあらわす制御コマンドの中の所定の制御コマンドを送信する場合、前記制御コマンドの送信に伴って変動する値によって構成された動作手順の検査値を生成し、前記動作手順の検査値に基づいて、前記周辺基板において前記主制御基板の動作順序が連続しているか認証するための動作コードを生成する動作コード生成工程と、
    他の手段から独立してフリーランに計時をおこなう計時工程と、
    前記主制御基板において特定の事象が発生したタイミングで前記計時工程から取得した計時時間の情報の中から基準値を任意に設定し、前記基準値と前記基準値以外の前記計時時間の情報の差分値または累積値によってあらわされる相対時間検査値を生成し、前記相対時間検査値と、前記動作コード生成工程によって生成された動作コードの一部もしくはすべてとに基づいて、前記周辺基板において前記主制御基板が前記制御コマンドを継続して送信していることを認証する相対時間コードを生成する相対時間コード生成工程と、
    前記動作コード生成工程によって生成された動作コードと、前記相対時間コード生成工程によって生成された相対時間コードとを前記所定の制御コマンドに付加する付加工程と、
    前記付加工程によって付加された前記所定の制御コマンドを前記周辺基板に送信する送信工程と、
    を実行させることを特徴とする認証プログラム。
  11. 遊技機の周辺基板にデータ送信可能な前記遊技機の主制御基板に、
    前記周辺基板に入賞状況をあらわす制御コマンドの中の所定の制御コマンドを送信する場合、前記制御コマンドの送信に伴って変動する値によって構成された動作手順の検査値を生成し、前記動作手順の検査値に基づいて、前記周辺基板において前記主制御基板の動作順序が連続しているか認証するための動作コードを生成する動作コード生成工程と、
    他の手段から独立してフリーランに計時をおこなう計時工程と、
    前記主制御基板において特定の事象が発生したタイミングで前記計時工程から取得した計時時間の情報の中から基準値を任意に設定し、前記基準値と前記基準値以外の前記計時時間の情報の差分値または累積値によってあらわされる相対時間検査値を生成し、前記相対時間検査値と、前記動作コード生成工程によって生成された動作コードの一部もしくはすべてとに基づいて、前記周辺基板において前記主制御基板が前記制御コマンドを継続して送信していることを認証する相対時間コードを生成する相対時間コード生成工程と、
    前記所定の制御コマンドと、前記動作コード生成工程によって生成された動作コードと、前記相対時間コード生成工程によって生成された相対時間コードとを前記周辺基板に送信する送信工程と、
    を実行させることを特徴とする認証プログラム。
JP2008114492A 2007-10-09 2008-04-24 主制御基板、認証方法および認証プログラム Expired - Fee Related JP4677008B2 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP2008114492A JP4677008B2 (ja) 2008-04-24 2008-04-24 主制御基板、認証方法および認証プログラム
TW097138566A TWI484365B (zh) 2007-10-09 2008-10-07 搭載於遊戲機的電子設備、主控制基板、周邊基板、認證方法及認證程序
CN2008101696077A CN101406747B (zh) 2007-10-09 2008-10-09 电子设备、主控制基板、周边基板及认证方法
KR1020080099321A KR101503245B1 (ko) 2007-10-09 2008-10-09 전자 기기, 주제어 기판, 주변 기판, 인증 방법 및 인증 프로그램

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2008114492A JP4677008B2 (ja) 2008-04-24 2008-04-24 主制御基板、認証方法および認証プログラム

Publications (2)

Publication Number Publication Date
JP2009265934A JP2009265934A (ja) 2009-11-12
JP4677008B2 true JP4677008B2 (ja) 2011-04-27

Family

ID=41391709

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008114492A Expired - Fee Related JP4677008B2 (ja) 2007-10-09 2008-04-24 主制御基板、認証方法および認証プログラム

Country Status (1)

Country Link
JP (1) JP4677008B2 (ja)

Families Citing this family (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5096450B2 (ja) * 2009-12-17 2012-12-12 京楽産業.株式会社 遊技機、後段部、周辺基板、認証方法及び認証プログラム
JP5096449B2 (ja) * 2009-12-17 2012-12-12 京楽産業.株式会社 遊技機、中間部、周辺基板、認証方法及び認証プログラム
JP5096451B2 (ja) * 2009-12-17 2012-12-12 京楽産業.株式会社 遊技機、後段部、周辺基板、認証方法及び認証プログラム
JP5096448B2 (ja) * 2009-12-17 2012-12-12 京楽産業.株式会社 遊技機、中間部、周辺基板、認証方法及び認証プログラム
JP4981934B2 (ja) * 2010-02-15 2012-07-25 京楽産業.株式会社 電子機器、遊技機、主制御基板、周辺基板、認証方法及び認証プログラム
JP5182717B2 (ja) * 2010-02-26 2013-04-17 京楽産業.株式会社 遊技機、後段部、周辺基板、認証方法及び認証プログラム
JP5182718B2 (ja) * 2010-02-26 2013-04-17 京楽産業.株式会社 遊技機、中間部、周辺基板、認証方法及び認証プログラム
JP5182716B2 (ja) * 2010-02-26 2013-04-17 京楽産業.株式会社 遊技機、中間部、周辺基板、認証方法及び認証プログラム
JP5182719B2 (ja) * 2010-02-26 2013-04-17 京楽産業.株式会社 遊技機、後段部、周辺基板、認証方法及び認証プログラム
JP5182721B2 (ja) * 2010-03-10 2013-04-17 京楽産業.株式会社 遊技機、後段部、周辺基板、認証方法及び認証プログラム
JP5182720B2 (ja) * 2010-03-10 2013-04-17 京楽産業.株式会社 遊技機、中間部、周辺基板、認証方法及び認証プログラム
JP5182722B2 (ja) * 2010-03-15 2013-04-17 京楽産業.株式会社 遊技機、中間部、周辺基板、認証方法及び認証プログラム
JP5182723B2 (ja) * 2010-03-15 2013-04-17 京楽産業.株式会社 遊技機、後段部、周辺基板、認証方法及び認証プログラム
JP5026564B2 (ja) * 2010-06-29 2012-09-12 京楽産業.株式会社 遊技機、主制御基板、周辺基板、遊技機の認証方法及び認証プログラム
JP5026563B2 (ja) * 2010-06-29 2012-09-12 京楽産業.株式会社 遊技機、主制御基板、周辺基板、遊技機の認証方法及び認証プログラム
JP5026565B2 (ja) * 2010-06-29 2012-09-12 京楽産業.株式会社 遊技機、主制御基板、周辺基板、遊技機の認証方法及び認証プログラム

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH10211340A (ja) * 1997-01-30 1998-08-11 Daikoku Denki Co Ltd パチンコゲーム機用警報装置
JPH11276699A (ja) * 1998-03-27 1999-10-12 Sankyo Kk 遊技機
JPH11282991A (ja) * 1998-03-30 1999-10-15 Dainippon Printing Co Ltd Icカード
JP2001293230A (ja) * 2000-04-11 2001-10-23 Heiwa Corp 遊技機のセキュリティシステム及び遊技機
JP2002210194A (ja) * 2001-01-19 2002-07-30 Sansei R & D:Kk パチンコ遊技機
JP2003135816A (ja) * 2001-10-31 2003-05-13 Heiwa Corp 遊技機
JP2003159464A (ja) * 2001-11-28 2003-06-03 Heiwa Corp 遊技機
JP2004265026A (ja) * 2003-02-28 2004-09-24 Matsushita Electric Ind Co Ltd アプリケーション認証システムと装置

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH10211340A (ja) * 1997-01-30 1998-08-11 Daikoku Denki Co Ltd パチンコゲーム機用警報装置
JPH11276699A (ja) * 1998-03-27 1999-10-12 Sankyo Kk 遊技機
JPH11282991A (ja) * 1998-03-30 1999-10-15 Dainippon Printing Co Ltd Icカード
JP2001293230A (ja) * 2000-04-11 2001-10-23 Heiwa Corp 遊技機のセキュリティシステム及び遊技機
JP2002210194A (ja) * 2001-01-19 2002-07-30 Sansei R & D:Kk パチンコ遊技機
JP2003135816A (ja) * 2001-10-31 2003-05-13 Heiwa Corp 遊技機
JP2003159464A (ja) * 2001-11-28 2003-06-03 Heiwa Corp 遊技機
JP2004265026A (ja) * 2003-02-28 2004-09-24 Matsushita Electric Ind Co Ltd アプリケーション認証システムと装置

Also Published As

Publication number Publication date
JP2009265934A (ja) 2009-11-12

Similar Documents

Publication Publication Date Title
JP4677008B2 (ja) 主制御基板、認証方法および認証プログラム
JP4677007B2 (ja) 主制御基板、認証方法および認証プログラム
JP2009093436A (ja) 電子機器、主制御基板、周辺基板、認証方法および認証プログラム
JP4995218B2 (ja) 電子機器、主制御基板、周辺基板、認証方法および認証プログラム
JP2010148606A (ja) 電子機器、主制御基板、周辺基板、認証方法および認証プログラム
JP4932867B2 (ja) 電子機器、主制御基板、周辺基板、認証方法および認証プログラム
JP4933521B2 (ja) 電子機器、遊技機、認証方法および認証プログラム
JP4933524B2 (ja) 電子機器、遊技機、認証方法および認証プログラム
JP2010172485A (ja) 電子機器、遊技機、主制御基板、周辺基板、認証方法および認証プログラム
JP5129099B2 (ja) 電子機器、遊技機、認証方法および認証プログラム
JP4933523B2 (ja) 電子機器、遊技機、認証方法および認証プログラム
JP2010125004A (ja) 電子機器、遊技機、主制御基板、周辺基板、認証方法および認証プログラム
JP2010172488A (ja) 電子機器、遊技機、主制御基板、周辺基板、認証方法および認証プログラム
JP2010172487A (ja) 電子機器、遊技機、主制御基板、周辺基板、認証方法および認証プログラム
TWI484365B (zh) 搭載於遊戲機的電子設備、主控制基板、周邊基板、認證方法及認證程序
JP4995220B2 (ja) 電子機器、主制御基板、周辺基板、認証方法および認証プログラム
JP5067741B2 (ja) 電子機器、遊技機、主制御基板、周辺基板、認証方法および認証プログラム
JP4908488B2 (ja) 電子機器、認証方法および認証プログラム
JP4876120B2 (ja) 電子機器、認証方法および認証プログラム
JP4908489B2 (ja) 電子機器、認証方法および認証プログラム
JP4995219B2 (ja) 電子機器、主制御基板、周辺基板、認証方法および認証プログラム
JP4800358B2 (ja) 電子機器、遊技機、主制御基板、周辺基板、認証方法および認証プログラム
JP4955035B2 (ja) 電子機器、遊技機、主制御基板、周辺基板、認証方法および認証プログラム
JP5032551B2 (ja) 電子機器、遊技機、主制御基板、周辺基板、認証方法および認証プログラム
JP4955033B2 (ja) 電子機器、遊技機、主制御基板、周辺基板、認証方法および認証プログラム

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100330

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100531

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20101005

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20101206

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: 20110104

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20110128

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140204

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140204

Year of fee payment: 3

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313117

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140204

Year of fee payment: 3

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees