(57)【要約】【課題】主制御基板を認証するために用いる期待値を簡単な方法で補正し、かつ主制御基板から周辺基板に対する不正制御や、期待値および認証に関する情報の流用を防止すること。【解決手段】主制御基板３１０と、主制御基板３１０によって送信された制御コマンドに基づいて所定の処理をおこなう周辺基板３３０とを備える電子機器において、主制御基板３１０は、周辺基板３３０に送信する制御コマンドが電源投入時の処理を実行させるコマンドの場合、主制御基板３１０から送信されたデータの照合に用いる期待値の補正データを付加し、所定のコマンドの場合、主制御基板３１０を認証するための認証データまたは認証データのダミーデータを付加する。周辺基板３３０は、ダミーデータを受信した場合は、そのまま主制御基板３１０を認証し、認証データを受信した場合は、補正された期待値を用いて主制御基板３１０を認証する。【選択図】図３
2010172488.tif 000002
【特許請求の範囲】
【請求項１】
制御コマンドを送信する主制御部と、前記主制御部によって送信された前記制御コマンドに基づいて所定の処理をおこなう周辺部と、を備える電子機器であって、
前記主制御部は、
前記周辺部に保持され、前記主制御部から送信されたデータの照合に用いる期待値を補正する補正処理のための補正データを生成する補正データ生成手段と、
前記主制御部を認証する認証処理のための認証データを生成する認証データ生成手段と、
前記認証データのダミーデータ（以下、「ダミー認証データ」という）を生成するダミー認証データ生成手段と、
前記周辺部に送信する前記制御コマンドが当該周辺部に前記電子機器の電源投入時の処理を実行させるコマンド（以下、「電源オンコマンド」という）である場合、前記補正データ生成手段によって生成された前記補正データを当該制御コマンドに付加する補正データ付加手段と、
前記補正データ付加手段によって前記周辺部に送信する前記制御コマンドが所定の制御コマンドである場合、前記認証データ生成手段によって生成された前記認証データを当該制御コマンドに付加する認証データ付加手段と、
前記補正データ付加手段または前記認証データ付加手段によって、前記認証データが付加された前記制御コマンド以外の制御コマンドに、前記ダミー認証データ生成手段によって生成されたダミー認証データを付加するダミー認証データ付加手段と、
前記補正データ付加手段によって前記補正データの付加された前記制御コマンド（以下、「補正データ付制御コマンド」という）、前記認証データ付加手段によって前記認証データの付加された前記制御コマンド（以下、「認証データ付制御コマンド」という）または前記ダミー認証データ付加手段によって前記ダミー認証データの付加された前記制御コマンド（以下、「ダミー認証データ付制御コマンド」という）を前記周辺部に送信する送信手段と、
を備え、
前記周辺部は、
前記主制御部によって送信された前記補正データ付制御コマンド、前記認証データ付制御コマンドまたは前記ダミー認証データ付制御コマンドを受信する受信手段と、
前記受信手段によって前記補正データ付制御コマンドを受信した場合、当該補正データ付制御コマンドを用いて前記周辺部に保持されている前記期待値を補正する補正手段と、
前記受信手段によって前記認証データ付制御コマンドを受信した場合、当該認証データ付制御コマンドを用いて算出された値が、前記補正手段によって補正された前記期待値と一致するか否かを判断する判断手段と、
前記判断手段によって前記認証データ付制御コマンドを用いて算出された値と、前記期待値と、が一致すると判断された場合、前記主制御部を認証する認証手段と、
を備え、
前記認証手段は、前記受信手段によって前記ダミー認証データ付制御コマンドを受信した場合、前記主制御部を認証することを特徴とする電子機器。
【請求項２】
前記補正データ付加手段は、前記周辺部に送信する前記制御コマンドが前記主制御部のリセット後の前記電源オンコマンドである場合、当該電源オンコマンドに前記補正データを付加することを特徴とする請求項１に記載の電子機器。
【請求項３】
前記認証データ付加手段は、前記電源オンコマンドによって電源が投入されてから、電源がオフされるまでの間に、少なくとも１つ以上の制御コマンドに認証データを付加することを特徴とする請求項１または２に記載の電子機器。
【請求項４】
前記認証データ付加手段は、前記周辺部に送信する前記制御コマンドが、前記送信手段によって送信された前記補正データ付制御コマンドから所定回数目の制御コマンドである場合、当該制御コマンドに前記認証データを付加することを特徴とする請求項１〜３のいずれか一つに記載の電子機器。
【請求項５】
前記ダミー認証データ付加手段は、前記周辺部に送信する前記制御コマンドが、前記送信手段によって送信された前記補正データ付制御コマンドから所定回数目の制御コマンドである場合、当該制御コマンドに前記ダミー認証データを付加することを特徴とする請求項１〜４のいずれか一つに記載の電子機器。
【請求項６】
前記認証手段は、前記受信手段によって前記ダミー認証データ付制御コマンドを受信した場合、前記判断手段による前記ダミー認証データを用いて算出された値と前記期待値とが一致するか否かの処理を省略して、前記主制御部を認証することを特徴とする請求項１〜５のいずれか一つに記載の電子機器。
【請求項７】
前記判断手段は、前記受信手段によって受信された前記ダミー認証データ付制御コマンドを用いて算出された値と前記期待値とが一致するか否かを判断し、
前記認証手段は、前記判断手段による判断結果が前記ダミー認証データを用いて算出された値と前記期待値とが一致したか否かに関わらず、前記主制御部を認証することを特徴とする請求項１〜５のいずれか一つに記載の電子機器。
【請求項８】
前記補正データ生成手段は、前記主制御部が他の前記主制御部に変更された場合、前記周辺部に保持された前記期待値を、他の前記主制御部から送信されたデータの照合に用いる期待値に補正するための補正データを生成することを特徴とする請求項１〜７のいずれか一つに記載の電子機器。
【請求項９】
前記主制御部は、
前記主制御部に設定されている固有の値を記録する記録手段を備え、
前記補正データ生成手段は、前記記録手段によって記録された前記固有の値を用いて前記補正データを生成することを特徴とする請求項１〜８のいずれか一つに記載の電子機器。
【請求項１０】
前記補正データ生成手段は、前記主制御部が他の前記主制御部に変更された場合、前記記録手段に記録された、変更される前の前記主制御部に設定されていた固有の値と、変更された後の他の前記主制御部に設定されている固有の値との差分を、前記補正データとして生成することを特徴とする請求項９に記載の電子機器。
【請求項１１】
前記補正データ生成手段は、前記固有の値とともに前記補正データを付加する前記制御コマンドを用いて当該補正データを生成することを特徴とする請求項９または１０に記載の電子機器。
【請求項１２】
前記主制御部は、
所定のプログラムコードを記録した記録手段を備え、
前記補正データ生成手段は、前記記録手段に記録されたプログラムコードを用いて前記補正データを生成することを特徴とする請求項１〜８のいずれか一つに記載の電子機器。
【請求項１３】
前記補正データ生成手段は、前記プログラムコードとともに前記補正データを付加する前記制御コマンドを用いて当該補正データを生成することを特徴とする請求項１２に記載の電子機器。
【請求項１４】
前記主制御部は、
所定のプログラムコードを記録した記録手段を備え、
前記認証データ生成手段は、前記記録手段によって記録されたプログラムコードを用いて前記認証データを生成することを特徴とする請求項１〜１３のいずれか一つに記載の電子機器。
【請求項１５】
前記認証データ生成手段は、前記プログラムコードとともに前記認証データを付加する前記制御コマンドを用いて当該認証データを生成することを特徴とする請求項１４に記載の電子機器。
【請求項１６】
前記補正手段は、前記主制御部から送信された前記制御コマンドが前記補正データ付制御コマンドの場合、前記補正データ付制御コマンドを用いて前記周辺部に保持されている前記期待値を補正することを特徴とする請求項１〜１５のいずれか一つに記載の電子機器。
【請求項１７】
前記補正手段は、前記主制御部から送信された前記制御コマンドが前記電源オンコマンドである場合、前記補正データ付制御コマンドを用いて前記周辺部に保持されている前記期待値を補正することを特徴とする請求項１〜１５のいずれか一つに記載の電子機器。
【請求項１８】
前記判断手段は、前記主制御部から送信された前記制御コマンドが前記認証データ付制御コマンドの場合、前記認証データ付制御コマンドを用いて算出された値と、前記期待値と、が一致するか否かを判断することを特徴とする請求項１〜１７のいずれか一つに記載の電子機器。
【請求項１９】
前記判断手段は、前記主制御部から送信された前記制御コマンドが前記所定の制御コマンドである場合、前記認証データ付制御コマンドを用いて算出された値と、前記期待値と、が一致するか否かを判断することを特徴とする請求項１〜１７のいずれか一つに記載の電子機器。
【請求項２０】
前記周辺部は、
前記認証手段によって前記主制御部が認証されなかった場合、報知信号を出力する出力手段を備えることを特徴とする請求項１〜１９のいずれか一つに記載の電子機器。
【請求項２１】
請求項１〜２０のいずれか一つに記載の電子機器を備え、
主制御基板は、前記認証データ付制御コマンドを送信し、周辺基板は、前記主制御基板によって送信された前記認証データ付制御コマンドに基づいて認証処理をおこなうことを特徴とする遊技機。
【請求項２２】
電子機器に搭載され、周辺基板に所定の処理をおこなわせる制御コマンドを送信する主制御基板であって、
前記周辺基板に保持され、前記主制御基板から送信されたデータの照合に用いる期待値を補正する補正処理のための補正データを生成する補正データ生成手段と、
前記主制御基板を認証する認証処理のための認証データを生成する認証データ生成手段と、
前記認証データのダミーデータ（以下、「ダミー認証データ」という）を生成するダミー認証データ生成手段と、
前記周辺基板に送信する前記制御コマンドが当該周辺基板に前記電子機器の電源投入時の処理を実行させるコマンド（以下、「電源オンコマンド」という）である場合、前記補正データ生成手段によって生成された前記補正データを当該制御コマンドに付加する補正データ付加手段と、
前記補正データ付加手段によって前記周辺基板に送信する前記制御コマンドが所定の制御コマンドである場合、前記認証データ生成手段によって生成された前記認証データを当該制御コマンドに付加する認証データ付加手段と、
前記補正データ付加手段または前記認証データ付加手段によって、前記認証データが付加された前記制御コマンド以外の制御コマンドに、前記ダミー認証データ生成手段によって生成されたダミー認証データを付加するダミー認証データ付加手段と、
前記補正データ付加手段によって前記補正データの付加された前記制御コマンド（以下、「補正データ付制御コマンド」という）、前記認証データ付加手段によって前記認証データの付加された前記制御コマンド（以下、「認証データ付制御コマンド」という）または前記ダミー認証データ付加手段によって前記ダミー認証データの付加された前記制御コマンド（以下、「ダミー認証データ付制御コマンド」という）を前記周辺基板に送信する送信手段と、
を備えることを特徴とする主制御基板。
【請求項２３】
電子機器に搭載され、主制御基板から送信された制御コマンドに応じた処理をおこなう周辺基板であって、
前記主制御基板によって送信され、前記主制御基板によって送信されたデータの照合に用いる期待値を補正するための補正データの付加された前記制御コマンド（以下、「補正データ付制御コマンド」という）、前記主制御基板を認証するための認証データの付加された前記制御コマンド（以下、「認証データ付制御コマンド」という）または前記認証データのダミーデータの付加された前記制御コマンド（以下、「ダミー認証データ付制御コマンド」という）を受信する受信手段と、
前記受信手段によって前記補正データ付制御コマンドを受信した場合、当該補正データ付制御コマンドを用いて前記周辺基板に保持されている前記期待値を補正する補正手段と、
前記受信手段によって前記認証データ付制御コマンドを受信した場合、当該認証データ付制御コマンドを用いて算出された値が、前記補正手段によって補正された前記期待値と一致するか否かを判断する判断手段と、
前記判断手段によって前記認証データ付制御コマンドを用いて算出された値と、前記期待値と、が一致すると判断された場合、前記主制御基板を認証する認証手段と、
を備え、
前記認証手段は、前記受信手段によって前記ダミー認証データ付制御コマンドを受信した場合、前記主制御基板を認証することを特徴とする周辺基板。
【請求項２４】
制御コマンドを送信する主制御部と、前記主制御部によって送信された制御コマンドに基づいて所定の処理をおこなう周辺部と、を備える電子機器における認証方法であって、
前記主制御部において、
前記周辺部に保持され、前記主制御部から送信されたデータの照合に用いる期待値を補正する補正処理のための補正データを生成する補正データ生成工程と、
前記主制御部を認証する認証処理のための認証データを生成する認証データ生成工程と、
前記認証データのダミーデータ（以下、「ダミー認証データ」という）を生成するダミー認証データ生成工程と、
前記周辺部に送信する前記制御コマンドが当該周辺部に前記電子機器の電源投入時の処理を実行させるコマンド（以下、「電源オンコマンド」という）である場合、前記補正データ生成工程によって生成された前記補正データを当該制御コマンドに付加する補正データ付加工程と、
前記補正データ付加工程によって前記周辺部に送信する前記制御コマンドが所定の制御コマンドである場合、前記認証データ生成工程によって生成された前記認証データを当該制御コマンドに付加する認証データ付加工程と、
前記補正データ付加工程または前記認証データ付加工程によって、前記認証データが付加された前記制御コマンド以外の制御コマンドに、前記ダミー認証データ生成工程によって生成されたダミー認証データを付加するダミー認証データ付加工程と、
前記補正データ付加工程によって前記補正データの付加された前記制御コマンド（以下、「補正データ付制御コマンド」という）、前記認証データ付加工程によって前記認証データの付加された前記制御コマンド（以下、「認証データ付制御コマンド」という）または前記ダミー認証データ付加工程によって前記ダミー認証データの付加された前記制御コマンド（以下、「ダミー認証データ付制御コマンド」という）を前記周辺部に送信する送信工程と、
を含み、
前記周辺部において、
前記主制御部によって送信された前記補正データ付制御コマンド、前記認証データ付制御コマンドまたは前記ダミー認証データ付制御コマンドを受信する受信工程と、
前記受信工程によって前記補正データ付制御コマンドを受信した場合、当該補正データ付制御コマンドを用いて前記周辺部に保持されている前記期待値を補正する補正工程と、
前記受信工程によって前記認証データ付制御コマンドを受信した場合、当該認証データ付制御コマンドを用いて算出された値が、前記補正工程によって補正された前記期待値と一致するか否かを判断する判断工程と、
前記判断工程によって前記認証データ付制御コマンドを用いて算出された値と、前記期待値と、が一致すると判断された場合、前記主制御部を認証する認証工程と、
を含み、
前記認証工程は、前記受信工程によって前記ダミー認証データ付制御コマンドを受信した場合、前記主制御部を認証することを特徴とする認証方法。
【請求項２５】
請求項２４に記載の認証方法をコンピュータに実行させることを特徴とする認証プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、複数の基板を備え、これらの基板間の通信の認証をおこなう電子機器、遊技機、主制御基板、周辺基板、認証方法および認証プログラムに関する。
【背景技術】
【０００２】
従来、複数の基板を備えた電子機器において、これら各基板に対する不正を防止するための様々な技術が提案されている。複数の基板を備えた電子機器としては、たとえば、ぱちんこ遊技機などがある。ぱちんこ遊技機には、電子機器全体の動作を司る主制御基板と、電子機器の各部の動作をおこなう被制御基板（周辺基板）とを備えている。この主制御基板は、周辺基板に制御コマンドを含む制御信号を出力し、その他の周辺基板は、主制御基板から送信された制御信号にしたがって動作を実行する機能を備えている。
【０００３】
主制御基板に対する不正には、たとえば、正規の主制御基板を不正な制御基板に取り替えたり、主制御基板がおこなう処理を規定したプログラムコードを改ざんしたりするなどの方法がある。このような不正を防止するため、たとえば、主制御基板内に搭載されたＲＯＭに記録されているプログラムデータをＲＯＭチェッカによってチェックして、ＲＯＭの不正交換などを防止する技術が提案されている（たとえば、下記特許文献１参照。）。
【０００４】
また、他の方法としては、表示制御部などの周辺基板内に搭載されたＲＯＭにあらかじめ、他の基板の照合をおこなうための期待値を保持させておき、この期待値と、主制御基板および他の周辺基板のＩＤ（固有の値）の和と、が一致した場合に、他の基板を認証することで、不正な基板が挿入されたことを検知する技術が提案されている（たとえば、下記特許文献２参照。）。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開平１１−３３３１０８号公報
【特許文献２】特開２００５−２１３３０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、上述した特許文献１の技術によれば、プログラムデータの改ざんは検知できるが、正規な主制御基板と被制御基板との間に不正な制御基板が接続されてしまうのを防止することができない。このため、不正な制御基板から出力される制御信号によって、被制御基板が不正な制御をおこなってしまうという問題がある。
【０００７】
ここで、図１４および図１５を用いて、従来技術による不正防止技術について説明する。図１４は、従来技術による不正防止技術の概要を示す説明図である。また、図１５は、不正な制御基板の挿入例を示す説明図である。図１４に示すように、正規の主制御基板１４０１は、周辺基板１４０２に対して正規の制御信号ＲＳを出力して、周辺基板１４０２の動作を制御する。正規の主制御基板１４０１には、検査用ポート１４０３が設けられている。この検査用ポート１４０３から正規の主制御基板１４０１の内部に設けられたＲＯＭなどに記録されたプログラムデータを検査して、正規の主制御基板１４０１に不正がおこなわれていないかを検査する。
【０００８】
ところが、図１５に示すように、正規の主制御基板１４０１と周辺基板１４０２との間に、不正な制御基板１５０１が挿入されてしまう場合がある。不正な制御基板１５０１は、正規の主制御基板１４０１から出力された正規の制御信号ＲＳを破棄または無視し、替わりに不正な制御信号ＦＳを周辺基板１４０２に出力する。ここで、周辺基板１４０２は、入力された信号が、正規の制御信号ＲＳであるか不正な制御信号ＦＳであるかを判別することができない。このため、周辺基板１４０２は、不正な制御信号ＦＳにしたがって動作してしまうという問題がある。
【０００９】
また、検査用ポート１４０３は正規の主制御基板１４０１のみに設けられているため、検査用ポート１４０３を用いた検査をおこなっても、正規の主制御基板１４０１内の処理に対する検査結果が返ってしまう。このため、検査用ポート１４０３を用いた検査をおこなっても、不正な制御基板１５０１による不正制御を検知することができないという問題がある。
【００１０】
また、上述した特許文献２の技術では、不正な制御基板が挿入されたことを検知することができる。しかしながら、基板が変更されると、ＩＤも変わるため、他の基板が変更になる度に、期待値を書き換えなければならないという問題がある。したがって、主制御基板や他の周辺基板の認証をおこなう基板の設定を、主制御基板や他の周辺基板が変更される度に変更しなければならず、手間がかかるという問題がある。
【００１１】
また、特許文献２の技術では、いずれかの基板が変更された場合、変更後の主制御基板や他の周辺基板のＩＤの和で、期待値を自動更新する異常解除スイッチが備えられている。しかしながら、たとえば不正な基板が挿入されているときに異常解除スイッチが操作されると、不正な基板を正規の基板として認証してしまうという問題がある。
【００１２】
この発明は、上述した従来技術による問題点を解消するため、主制御基板を認証するために用いる期待値を簡単な方法で補正し、かつ主制御基板から周辺基板に対する不正制御や、期待値および認証に関する情報の流用を防止することができる電子機器、遊技機、主制御基板、周辺基板、認証方法および認証プログラムを提供することを目的とする。
【課題を解決するための手段】
【００１３】
上述した課題を解決し、目的を達成するため、請求項１の発明にかかる電子機器は、制御コマンドを送信する主制御部と、前記主制御部によって送信された前記制御コマンドに基づいて所定の処理をおこなう周辺部と、を備える電子機器であって、前記主制御部は、前記周辺部に保持され、前記主制御部から送信されたデータの照合に用いる期待値を補正する補正処理のための補正データを生成する補正データ生成手段と、前記主制御部を認証する認証処理のための認証データを生成する認証データ生成手段と、前記認証データのダミーデータ（以下、「ダミー認証データ」という）を生成するダミー認証データ生成手段と、前記周辺部に送信する前記制御コマンドが当該周辺部に前記電子機器の電源投入時の処理を実行させるコマンド（以下、「電源オンコマンド」という）である場合、前記補正データ生成手段によって生成された前記補正データを当該制御コマンドに付加する補正データ付加手段と、前記補正データ付加手段によって前記周辺部に送信する前記制御コマンドが所定の制御コマンドである場合、前記認証データ生成手段によって生成された前記認証データを当該制御コマンドに付加する認証データ付加手段と、前記補正データ付加手段または前記認証データ付加手段によって、前記認証データが付加された前記制御コマンド以外の制御コマンドに、前記ダミー認証データ生成手段によって生成されたダミー認証データを付加するダミー認証データ付加手段と、前記補正データ付加手段によって前記補正データの付加された前記制御コマンド（以下、「補正データ付制御コマンド」という）、前記認証データ付加手段によって前記認証データの付加された前記制御コマンド（以下、「認証データ付制御コマンド」という）または前記ダミー認証データ付加手段によって前記ダミー認証データの付加された前記制御コマンド（以下、「ダミー認証データ付制御コマンド」という）を前記周辺部に送信する送信手段と、を備え、前記周辺部は、前記主制御部によって送信された前記補正データ付制御コマンド、前記認証データ付制御コマンドまたは前記ダミー認証データ付制御コマンドを受信する受信手段と、前記受信手段によって前記補正データ付制御コマンドを受信した場合、当該補正データ付制御コマンドを用いて前記周辺部に保持されている前記期待値を補正する補正手段と、前記受信手段によって前記認証データ付制御コマンドを受信した場合、当該認証データ付制御コマンドを用いて算出された値が、前記補正手段によって補正された前記期待値と一致するか否かを判断する判断手段と、前記判断手段によって前記認証データ付制御コマンドを用いて算出された値と、前記期待値と、が一致すると判断された場合、前記主制御部を認証する認証手段と、を備え、前記認証手段は、前記受信手段によって前記ダミー認証データ付制御コマンドを受信した場合、前記主制御部を認証することを特徴とする。
【００１４】
この請求項１の発明によれば、主制御部が周辺部に電源オンコマンドを送信する際に、制御コマンドに補正データを付加する。電源オンコマンドは、電子機器の電源の投入時やリセット時など、電子機器の初期化処理をおこなう際に送信される。初期化処理は、たとえばぱちんこ遊技機などの電子機器の場合、メインの処理である遊技（ゲーム進行）関連処理とは異なる処理区分に分類される。このように、初期化処理中に補正処理を組み込めば、遊技関連処理中に補正処理を組み込む場合と比較して、プログラム設計やテストにかかる工程（工数）を低減することができる。すなわち、初期化処理中に補正処理を組み込むことによって、開発コストの低減や品質管理上のメリットを得ることができる。
【００１５】
また、電源オンコマンドは、電源投入後の他の全ての制御コマンドの最初に送信される。したがって、たとえば電源がオフされている間に、主制御部を他の主制御部に変更した場合、認証処理より前に補正処理をおこなうことができるため、変更後の他の主制御部を誤って不正な主制御部であると判断することを防ぐことができる。さらに、電源投入後の最初に補正処理がおこなわれるため、認証処理のタイミングを設計者の所望のタイミングでおこなうことができる。したがって、電子機器の機種毎に最も好適なタイミングで認証処理をおこなわせることができるため、認証の強度を上げることができる。
【００１６】
また、補正処理や認証処理のタイミングではない場合に、制御コマンドにダミー認証データを付加することができる。これによって、補正データや認証データがいつ送信されたかを第三者に知られることを防ぐことができる。したがって、補正データや認証データが窃取されることを防ぐことができるため、認証の強度を上げることができる。
【００１７】
さらに、補正データ付制御コマンド、認証データ付制御コマンドまたはダミー認証データ付制御コマンドを周辺部に送信する送信部が１つのみであり、付加するデータの種類毎に分かれていない。そして、補正データ、認証データまたはダミー認証データを付加する付加部が付加するデータ毎に分かれている。このため、本発明をたとえば遊技機などの機器に適用する際に、プログラムコードやデータを記憶するメモリ容量を節約することができる。また、たとえば本発明を適用した遊技機などの機器の動作検証を行う際に、送信部について１つのみを検証すればよく、検証にかかる工程数を少なくすることができる。かつ、たとえば第３者にいずれかのデータを付加するタイミングが知られても、他のデータを付加するタイミングまでは知られないので、認証の強度を上げることができる。
【００１８】
また、請求項２の発明にかかる電子機器は、請求項１に記載の発明において、前記補正データ付加手段は、前記周辺部に送信する前記制御コマンドが前記主制御部のリセット後の前記電源オンコマンドである場合、当該電源オンコマンドに前記補正データを付加することを特徴とする。
【００１９】
この請求項２の発明によれば、電子機器の初期化処理（たとえば、ＲＡＭのクリア処理）の度に、補正処理をおこなうことができる。このため、初期化処理中に補正処理をおこなうことができるので、必ず認証処理の前に補正処理をおこなうこととなり、正確な認証処理をおこなうことができる。また、主制御部が正規な他の主制御部に変更されても、確実に変更後の他の主制御部を正規の基板であると認証することができる。
【００２０】
また、請求項３の発明にかかる電子機器は、請求項１または２に記載の発明において、前記認証データ付加手段は、前記電源オンコマンドによって電源が投入されてから、電源がオフされるまでの間に、少なくとも１つ以上の制御コマンドに認証データを付加することを特徴とする。
【００２１】
この請求項３の発明によれば、たとえば補正データを付加した電源オンコマンドによって電源がオンされてから電源がオフされるまでの間に、少なくとも１回以上の認証処理をおこなうことができる。したがって、補正処理をおこなったにも関わらず、認証処理をおこなわないことを防ぐことができ、無駄な補正処理をおこなうことを防ぐことができる。
【００２２】
また、請求項４の発明にかかる電子機器は、請求項１〜３のいずれか一つに記載の発明において、前記認証データ付加手段は、前記周辺部に送信する前記制御コマンドが、前記送信手段によって送信された前記補正データ付制御コマンドから所定回数目の制御コマンドである場合、当該制御コマンドに前記認証データを付加することを特徴とする。
【００２３】
この請求項４の発明によれば、認証処理の前に補正処理をおこなうことができるので、確実に変更後の主制御部を正規の基板であると認証することができる。また、補正処理をおこなった後に、必ず認証処理をおこなうことができるので、認証の強度を向上させることができる。
【００２４】
また、請求項５の発明にかかる電子機器は、請求項１〜４のいずれか一つに記載の発明において、前記ダミー認証データ付加手段は、前記周辺部に送信する前記制御コマンドが、前記送信手段によって送信された前記補正データ付制御コマンドから所定回数目の制御コマンドである場合、当該制御コマンドに前記ダミー認証データを付加することを特徴とする。
【００２５】
この請求項５の発明によれば、設計者が、ダミー認証データおよび認証データを付加する制御コマンドを、任意に設定することができる。このため、設計の自由度を広げ、かつ認証の強度を設計者の好みの強度に上げることができる。
【００２６】
また、請求項６の発明にかかる電子機器は、請求項１〜５のいずれか一つに記載の発明において、前記認証手段は、前記受信手段によって前記ダミー認証データ付制御コマンドを受信した場合、前記判断手段による前記ダミー認証データを用いて算出された値と前記期待値とが一致するか否かの処理を省略して、前記主制御部を認証することを特徴とする。
【００２７】
この請求項６の発明によれば周辺部における余計な処理を増やすことなくダミー認証データの送信処理を追加することができる。したがって、簡単な方法で、補正データや認証データが窃取されることを防ぎ、認証の強度を上げることができる。
【００２８】
また、請求項７の発明にかかる電子機器は、請求項１〜５のいずれか一つに記載の発明において、前記判断手段は、前記受信手段によって受信された前記ダミー認証データ付制御コマンドを用いて算出された値と前記期待値とが一致するか否かを判断し、前記認証手段は、前記判断手段による判断結果が前記ダミー認証データを用いて算出された値と前記期待値とが一致したか否かに関わらず、前記主制御部を認証することを特徴とする。
【００２９】
この請求項７の発明によれば周辺部がダミー認証データを受信した場合でも、認証データを受信した場合と同様の処理をおこなうことができる。このため、周辺部における処理時間、または処理によって発生する熱量などを、正規な認証データを受信しておこなう認証処理と、同程度とすることができる。したがって、第三者に、周辺部において認証処理がおこなわれているタイミングを知られることを防ぐことができるため、より認証の強度を上げることができる。
【００３０】
また、請求項８の発明にかかる電子機器は、請求項１〜７のいずれか一つに記載の発明において、前記補正データ生成手段は、前記主制御部が他の前記主制御部に変更された場合、前記周辺部に保持された前記期待値を、他の前記主制御部から送信されたデータの照合に用いる期待値に補正するための補正データを生成することを特徴とする。
【００３１】
この請求項８の発明によれば、主制御部が変更される度に、補正処理をおこなうことができる。このため、主制御部が変更されているのにも関わらず、周辺部に保持された期待値が補正されていないことを防ぐことができる。
【００３２】
また、請求項９の発明にかかる電子機器は、請求項１〜８のいずれか一つに記載の発明において、前記主制御部は、前記主制御部に設定されている固有の値を記録する記録手段を備え、前記補正データ生成手段は、前記記録手段によって記録された前記固有の値を用いて前記補正データを生成することを特徴とする。
【００３３】
この請求項９の発明によれば、主制御部が複数ある場合、各主制御部を認識可能な値によって補正データを生成することができる。これによって、期待値を各主制御部に固有の値とすることができるため、より不正な基板を検知しやすくなり、認証の強度を向上させることができる。
【００３４】
また、請求項１０の発明にかかる電子機器は、請求項９に記載の発明において、前記補正データ生成手段は、前記主制御部が他の前記主制御部に変更された場合、前記記録手段に記録された、変更される前の前記主制御部に設定されていた固有の値と、変更された後の他の前記主制御部に設定されている固有の値との差分を、前記補正データとして生成することを特徴とする。
【００３５】
この請求項１０の発明によれば、主制御部が複数ある場合、各主制御部を認識可能な値の差分によって補正データを生成することができる。これによって、期待値を各主制御部に固有の値とすることができるため、より不正な基板を検知しやすくなり、認証の強度を向上させることができる。
【００３６】
また、請求項１１の発明にかかる電子機器は、請求項９または１０に記載の発明において、前記補正データ生成手段は、前記固有の値とともに前記補正データを付加する前記制御コマンドを用いて当該補正データを生成することを特徴とする。
【００３７】
この請求項１１の発明によれば、補正データとともに送信する制御コマンド（電源オンコマンド）を用いて認証データを生成する。一般に、不正な制御基板は、正規の主制御部と異なる制御コマンドを送信することによって、周辺部に不正な動作をおこなわせようとする。したがって、今回送信する制御コマンドを用いて補正データを生成すれば、不正な制御基板によって補正データを再利用された場合であっても、補正データと制御コマンドの整合がとれず、不正を検知することができる。
【００３８】
また、請求項１２の発明にかかる電子機器は、請求項１〜８のいずれか一つに記載の発明において、前記主制御部は、所定のプログラムコードを記録した記録手段を備え、前記補正データ生成手段は、前記記録手段に記録されたプログラムコードを用いて前記補正データを生成することを特徴とする。
【００３９】
この請求項１２の発明によれば、主制御部に記録されたプログラムコードを用いて補正データを生成する。これにより、主制御部に記録されたプログラムコードの書き換えや、主制御部の交換などの不正を検知することができる。
【００４０】
また、請求項１３の発明にかかる電子機器は、請求項１２に記載の発明において、前記補正データ生成手段は、前記プログラムコードとともに前記補正データを付加する前記制御コマンドを用いて当該補正データを生成することを特徴とする。
【００４１】
この請求項１３の発明によれば、補正データとともに送信する制御コマンド（電源オンコマンド）を用いて認証データを生成する。一般に、不正な制御基板は、正規の主制御部と異なる制御コマンドを送信することによって、周辺部に不正な動作をおこなわせようとする。したがって、今回送信する制御コマンドを用いて補正データを生成すれば、不正な制御基板によって補正データを再利用された場合であっても、補正データと制御コマンドの整合がとれず、不正を検知することができる。
【００４２】
また、請求項１４の発明にかかる電子機器は、請求項１〜１３のいずれか一つに記載の発明において、前記主制御部は、所定のプログラムコードを記録した記録手段を備え、前記認証データ生成手段は、前記記録手段によって記録されたプログラムコードを用いて前記認証データを生成することを特徴とする。
【００４３】
この請求項１４の発明によれば、主制御部に記録されたプログラムコードを用いて認証データを生成する。これにより、主制御部に記録されたプログラムコードの書き換えや、主制御部の交換などの不正を検知することができる。
【００４４】
また、請求項１５の発明にかかる電子機器は、請求項１４に記載の発明において、前記プログラムコードとともに前記認証データを付加する前記制御コマンドを用いて当該認証データを生成することを特徴とする。
【００４５】
この請求項１５の発明によれば、認証データとともに送信する制御コマンド（所定の制御コマンド）を用いて認証データを生成する。したがって、今回送信する制御コマンドを用いて認証データを生成すれば、不正な制御基板によって認証データを再利用された場合であっても、認証データと制御コマンドの整合がとれず、不正を検知することができる。
【００４６】
また、請求項１６の発明にかかる電子機器は、請求項１〜１５のいずれか一つに記載の発明において、前記補正手段は、前記主制御部から送信された前記制御コマンドが前記補正データ付制御コマンドの場合、前記補正データ付制御コマンドを用いて前記周辺部に保持されている前記期待値を補正することを特徴とする。
【００４７】
この請求項１６の発明によれば、周辺部は、制御コマンドに補正データが付加されているか否かを確認するのみで、補正処理をおこなうか否かを判断することができる。よって、補正処理による周辺部の処理負荷を低減させることができる。
【００４８】
また、請求項１７の発明にかかる電子機器は、請求項１〜１５のいずれか一つに記載の発明において、前記補正手段は、前記主制御部から送信された前記制御コマンドが前記電源オンコマンドである場合、前記補正データ付制御コマンドを用いて前記周辺部に保持されている前記期待値を補正することを特徴とする。
【００４９】
この請求項１７の発明によれば、周辺部は、主制御部が送信した制御コマンドの種類を確認して、補正処理をおこなうか否かを判断することができる。よって、制御コマンドに基づく処理と補正処理とのタイミング設計をおこないやすくすることができる。
【００５０】
また、請求項１８の発明にかかる電子機器は、請求項１〜１７のいずれか一つに記載の発明において、前記判断手段は、前記主制御部から送信された前記制御コマンドが前記認証データ付制御コマンドの場合、前記認証データ付制御コマンドを用いて算出された値と、前記期待値と、が一致するか否かを判断することを特徴とする。
【００５１】
この請求項１８の発明によれば、周辺部は、制御コマンドに認証データが付加されているか否かを確認するのみで、認証処理をおこなうか否かを判断することができる。よって、認証処理による周辺部の処理負荷を低減させることができる。
【００５２】
また、請求項１９の発明にかかる電子機器は、請求項１〜１４のいずれか一つに記載の発明において、前記判断手段は、前記主制御部から送信された前記制御コマンドが前記所定の制御コマンドである場合、前記認証データ付制御コマンドを用いて算出された値と、前記期待値と、が一致するか否かを判断することを特徴とする。
【００５３】
この請求項１９の発明によれば、周辺部は、主制御部が送信した制御コマンドの種類を確認して、認証処理をおこなうか否かを判断することができる。よって、制御コマンドに基づく処理と認証処理とのタイミング設計をおこないやすくすることができる。
【００５４】
また、請求項２０の発明にかかる電子機器は、請求項１〜１９のいずれか一つに記載の発明において、前記周辺部は、前記認証手段によって前記主制御部が認証されなかった場合、報知信号を出力する出力手段を備えることを特徴とする。
【００５５】
この請求項２０の発明によれば、主制御部に不正がおこなわれた旨を、ユーザに報知することができる。
【００５６】
また、請求項２１の発明にかかる遊技機は、請求項１〜２０のいずれか一つに記載の電子機器を備え、主制御基板は、前記認証データ付制御コマンドを送信し、周辺基板は、前記主制御基板によって送信された前記認証データ付制御コマンドに基づいて認証処理をおこなうことを特徴とする。
【００５７】
この請求項２１の発明によれば、請求項１〜２０のいずれか一つに記載の電子機器の機能をたとえばぱちんこ遊技機などの遊技機に適用することができる。
【００５８】
また、請求項２２の発明にかかる主制御基板は、電子機器に搭載され、周辺基板に所定の処理をおこなわせる制御コマンドを送信する主制御基板であって、前記周辺基板に保持され、前記主制御基板から送信されたデータの照合に用いる期待値を補正する補正処理のための補正データを生成する補正データ生成手段と、前記主制御基板を認証する認証処理のための認証データを生成する認証データ生成手段と、前記認証データのダミーデータ（以下、「ダミー認証データ」という）を生成するダミー認証データ生成手段と、前記周辺基板に送信する前記制御コマンドが当該周辺基板に前記電子機器の電源投入時の処理を実行させるコマンド（以下、「電源オンコマンド」という）である場合、前記補正データ生成手段によって生成された前記補正データを当該制御コマンドに付加する補正データ付加手段と、前記補正データ付加手段によって前記周辺基板に送信する前記制御コマンドが所定の制御コマンドである場合、前記認証データ生成手段によって生成された前記認証データを当該制御コマンドに付加する認証データ付加手段と、前記補正データ付加手段または前記認証データ付加手段によって、前記認証データが付加された前記制御コマンド以外の制御コマンドに、前記ダミー認証データ生成手段によって生成されたダミー認証データを付加するダミー認証データ付加手段と、前記補正データ付加手段によって前記補正データの付加された前記制御コマンド（以下、「補正データ付制御コマンド」という）、前記認証データ付加手段によって前記認証データの付加された前記制御コマンド（以下、「認証データ付制御コマンド」という）または前記ダミー認証データ付加手段によって前記ダミー認証データの付加された前記制御コマンド（以下、「ダミー認証データ付制御コマンド」という）を前記周辺基板に送信する送信手段と、を備えることを特徴とする。
【００５９】
この請求項２２の発明によれば、主制御基板が周辺基板に電源オンコマンドを送信する際に、制御コマンドに補正データを付加する。電源オンコマンドは、電子機器の電源の投入時やリセット時など、電子機器の初期化処理をおこなう際に送信される。初期化処理は、たとえばぱちんこ遊技機などの電子機器の場合、メインの処理である遊技（ゲーム進行）関連処理とは異なる処理区分に分類される。このように、初期化処理中に補正処理を組み込めば、遊技関連処理中に補正処理を組み込む場合と比較して、プログラム設計やテストにかかる工程（工数）を低減することができる。すなわち、初期化処理中に補正処理を組み込むことによって、開発コストの低減や品質管理上のメリットを得ることができる。
【００６０】
また、電源オンコマンドは、電源投入後の他の全ての制御コマンドの最初に送信される。したがって、たとえば電源がオフされている間に、主制御基板を他の主制御基板に変更した場合、確実に認証処理より前に補正処理をおこなうことができる。このため、補正処理の前に認証処理がおこなわれ、変更後の他の主制御基板を誤って不正な主制御基板であると判断することを防ぎ、正確な認証処理をおこなうことができる。さらに、電源投入後の最初に補正処理がおこなわれるため、認証処理のタイミングを設計者の所望のタイミングでおこなうことができる。したがって、電子機器の機種毎に最も好適なタイミングで認証処理をおこなわせることができるため、認証処理の強度を上げることができる。
【００６１】
また、補正処理や認証処理のタイミングではない場合に、制御コマンドにダミー認証データを付加することができる。これによって、補正データや認証データがいつ送信されたかを第三者に知られることを防ぐことができる。したがって、補正データや認証データが窃取されることを防ぐことができるため、認証の強度を上げることができる。
【００６２】
さらに、補正データ付制御コマンド、認証データ付制御コマンドまたはダミー認証データ付制御コマンドを周辺基板に送信する送信部が１つのみであり、付加するデータの種類毎に分かれていない。そして、補正データ、認証データまたはダミー認証データを付加する付加部が付加するデータ毎に分かれている。このため、本発明をたとえば遊技機などの機器に適用する際に、プログラムコードやデータを記憶するメモリ容量を節約することができる。また、たとえば本発明を適用した遊技機などの機器の動作検証を行う際に、送信部について１つのみを検証すればよく、検証にかかる工程数を少なくすることができる。かつ、たとえば第３者にいずれかのデータを付加するタイミングが知られても、他のデータを付加するタイミングまでは知られないので、認証の強度を上げることができる。
【００６３】
また、請求項２３の発明にかかる周辺基板は、電子機器に搭載され、主制御基板から送信された制御コマンドに応じた処理をおこなう周辺基板であって、前記主制御基板によって送信され、前記主制御基板によって送信されたデータの照合に用いる期待値を補正するための補正データの付加された前記制御コマンド（以下、「補正データ付制御コマンド」という）、前記主制御基板を認証するための認証データの付加された前記制御コマンド（以下、「認証データ付制御コマンド」という）または前記認証データのダミーデータの付加された前記制御コマンド（以下、「ダミー認証データ付制御コマンド」という）を受信する受信手段と、前記受信手段によって前記補正データ付制御コマンドを受信した場合、当該補正データ付制御コマンドを用いて前記周辺基板に保持されている前記期待値を補正する補正手段と、前記受信手段によって前記認証データ付制御コマンドを受信した場合、当該認証データ付制御コマンドを用いて算出された値が、前記補正手段によって補正された前記期待値と一致するか否かを判断する判断手段と、前記判断手段によって前記認証データ付制御コマンドを用いて算出された値と、前記期待値と、が一致すると判断された場合、前記主制御基板を認証する認証手段と、を備え、前記認証手段は、前記受信手段によって前記ダミー認証データ付制御コマンドを受信した場合、前記主制御基板を認証することを特徴とする。
【００６４】
この請求項２３の発明によれば、主制御基板から送信された制御コマンドに付加された補正データや認証データを用いて補正処理や認証処理をおこなうことができ、補正データや認証データ単体で送信する場合と比較して、主制御基板と周辺基板との間の通信負荷を抑えることができる。また、補正データや認証データ単体で送信する場合と比較して、通信データ中から補正データや認証データが抽出され、解析されてしまう可能性を低減することができる。また、補正処理がおこなわれるのは電源オンコマンドの送信時のみであり、認証処理がおこなわれるのは所定の制御コマンドの送信時のみであるので、全ての制御コマンドの送信時に補正処理や認証処理をおこなうのに比べると、主制御基板や周辺基板の処理負荷を抑えることができる。
【００６５】
また、主制御基板の照合に用いる最終期待値（補正後の期待値）そのものである固定値を周辺基板に保持させないことで、照合に用いる最終期待値を知り得る者を限定することができる。この場合、具体的には、たとえば製造時から、期待値の補正処理をおこなわないと、ダミー認証処理においては認証が成立となり、認証処理においては認証が不成立となるように設計する。これにより、期待値に関する情報の流出などのリスクを軽減することができる。
【００６６】
また、請求項２４の発明にかかる認証方法は、制御コマンドを送信する主制御部と、前記主制御部によって送信された制御コマンドに基づいて所定の処理をおこなう周辺部と、を備える電子機器における認証方法であって、前記主制御部において、前記周辺部に保持され、前記主制御部から送信されたデータの照合に用いる期待値を補正する補正処理のための補正データを生成する補正データ生成工程と、前記主制御部を認証する認証処理のための認証データを生成する認証データ生成工程と、前記認証データのダミーデータ（以下、「ダミー認証データ」という）を生成するダミー認証データ生成工程と、前記周辺部に送信する前記制御コマンドが当該周辺部に前記電子機器の電源投入時の処理を実行させるコマンド（以下、「電源オンコマンド」という）である場合、前記補正データ生成工程によって生成された前記補正データを当該制御コマンドに付加する補正データ付加工程と、前記補正データ付加工程によって前記周辺部に送信する前記制御コマンドが所定の制御コマンドである場合、前記認証データ生成工程によって生成された前記認証データを当該制御コマンドに付加する認証データ付加工程と、前記補正データ付加工程または前記認証データ付加工程によって、前記認証データが付加された前記制御コマンド以外の制御コマンドに、前記ダミー認証データ生成工程によって生成されたダミー認証データを付加するダミー認証データ付加工程と、前記補正データ付加工程によって前記補正データの付加された前記制御コマンド（以下、「補正データ付制御コマンド」という）、前記認証データ付加工程によって前記認証データの付加された前記制御コマンド（以下、「認証データ付制御コマンド」という）または前記ダミー認証データ付加工程によって前記ダミー認証データの付加された前記制御コマンド（以下、「ダミー認証データ付制御コマンド」という）を前記周辺部に送信する送信工程と、を含み、前記周辺部において、前記主制御部によって送信された前記補正データ付制御コマンド、前記認証データ付制御コマンドまたは前記ダミー認証データ付制御コマンドを受信する受信工程と、前記受信工程によって前記補正データ付制御コマンドを受信した場合、当該補正データ付制御コマンドを用いて前記周辺部に保持されている前記期待値を補正する補正工程と、前記受信工程によって前記認証データ付制御コマンドを受信した場合、当該認証データ付制御コマンドを用いて算出された値が、前記補正工程によって補正された前記期待値と一致するか否かを判断する判断工程と、前記判断工程によって前記認証データ付制御コマンドを用いて算出された値と、前記期待値と、が一致すると判断された場合、前記主制御部を認証する認証工程と、を含み、前記認証工程は、前記受信工程によって前記ダミー認証データ付制御コマンドを受信した場合、前記主制御部を認証することを特徴とする。
【００６７】
この請求項２４の発明によれば、主制御部が周辺部に電源オンコマンドを送信する際に、制御コマンドに補正データを付加する。電源オンコマンドは、電子機器の電源の投入時やリセット時など、電子機器の初期化処理をおこなう際に送信される。初期化処理は、たとえばぱちんこ遊技機などの電子機器の場合、メインの処理である遊技（ゲーム進行）関連処理とは異なる処理区分に分類される。このように、初期化処理中に補正処理を組み込めば、遊技関連処理中に補正処理を組み込む場合と比較して、プログラム設計やテストにかかる工程（工数）を低減することができる。すなわち、初期化処理中に補正処理を組み込むことによって、開発コストの低減や品質管理上のメリットを得ることができる。
【００６８】
また、電源オンコマンドは、電源投入後の他の全ての制御コマンドの最初に送信される。したがって、たとえば電源がオフされている間に、主制御部を他の主制御部に変更した場合、確実に認証処理より前に補正処理をおこなうことができる。このため、補正処理の前に認証処理がおこなわれ、変更後の他の主制御部を誤って不正な主制御部であると判断することを防ぎ、正確な認証処理をおこなうことができる。さらに、電源投入後の最初に補正処理がおこなわれるため、認証処理のタイミングを設計者の所望のタイミングでおこなうことができる。したがって、電子機器の機種毎に最も好適なタイミングで認証処理をおこなわせることができるため、認証処理の強度を上げることができる。
【００６９】
また、補正処理や認証処理のタイミングではない場合に、制御コマンドにダミー認証データを付加することができる。これによって、補正データや認証データがいつ送信されたかを第三者に知られることを防ぐことができる。したがって、補正データや認証データが窃取されることを防ぐことができるため、認証の強度を上げることができる。
【００７０】
さらに、補正データ付制御コマンド、認証データ付制御コマンドまたはダミー認証データ付制御コマンドを周辺部に送信する送信部が１つのみであり、付加するデータの種類毎に分かれていない。そして、補正データ、認証データまたはダミー認証データを付加する付加部が付加するデータ毎に分かれている。このため、本発明をたとえば遊技機などの機器に適用する際に、プログラムコードやデータを記憶するメモリ容量を節約することができる。また、たとえば本発明を適用した遊技機などの機器の動作検証を行う際に、送信部について１つのみを検証すればよく、検証にかかる工程数を少なくすることができる。かつ、たとえば第３者にいずれかのデータを付加するタイミングが知られても、他のデータを付加するタイミングまでは知られないので、認証の強度を上げることができる。
【００７１】
また、請求項２５の発明にかかる認証プログラムは、請求項２４に記載の認証方法をコンピュータに実行させることを特徴とする。
【００７２】
この請求項２５の発明によれば、請求項２４に記載の認証方法をコンピュータに実行させることができる。
【発明の効果】
【００７３】
本発明にかかる電子機器、遊技機、主制御基板、周辺基板、認証方法および認証プログラムによれば、主制御基板を認証するために用いる期待値を簡単な方法で補正し、かつ主制御基板から周辺基板に対する不正制御や、期待値の流用を防止することができるという効果を奏する。
【図面の簡単な説明】
【００７４】
【図１】本発明のぱちんこ遊技機の遊技盤の一例を示す正面図である。
【図２】ぱちんこ遊技機の制御部の内部構成を示すブロック図である。
【図３】主制御基板および周辺基板の機能的構成を示すブロック図である。
【図４】主制御部による演出制御部の制御処理の手順を示すフローチャートである。
【図５】主制御部による演出制御部の制御処理の手順を示すフローチャートである。
【図６】大当たり関連コマンドの送信タイミングを示すタイムチャートである。
【図７】演出制御部による図柄変動処理の手順を示すフローチャートである。
【図８】演出制御部による大当たり時の処理の手順を示すフローチャートである。
【図９】ランプ制御部による図柄変動時のランプ制御処理の手順を示すフローチャートである。
【図１０】主制御部が出力する制御信号のデータフォーマットを模式的に示す説明図である。
【図１１】主制御部による制御信号の送信処理の手順を示すフローチャートである。
【図１２】演出制御部による制御信号の受信処理の手順を示すフローチャートである。
【図１３】制御部間の制御信号の流れの一例を示すシーケンス図である。
【図１４】従来技術による不正防止技術の概要を示す説明図である。
【図１５】従来技術による不正防止技術の概要を示す説明図である。
【発明を実施するための形態】
【００７５】
（実施の形態）
以下に添付図面を参照して、この発明にかかる電子機器の機能を有したぱちんこ遊技機と、このぱちんこ遊技機に搭載されている複数の基板間（主制御基板および周辺基板）の制御信号に含まれる制御コマンドを認証する認証方法および認証プログラムの好適な実施の形態を詳細に説明する。
【００７６】
（ぱちんこ遊技機の基本構成）
図１は、本発明のぱちんこ遊技機の遊技盤の一例を示す正面図である。遊技盤１０１の下部位置に配置された発射部（図２参照）の駆動によって発射された遊技球は、レール１０２ａ，１０２ｂ間を上昇して遊技盤１０１の上部位置に達した後、遊技領域１０３内を落下する。遊技領域１０３には、図示を省略する複数の釘が設けられ、遊技球を各種の方向に向けて落下させるとともに、落下途中の位置には、遊技球の落下方向を変化させる風車や、入賞口が配設されている。
【００７７】
遊技盤１０１の遊技領域１０３の中央部分には、図柄表示部１０４が配置されている。図柄表示部１０４としては、たとえば液晶表示器（ＬＣＤ）が用いられる。なお、図柄表示部１０４としては、ＬＣＤに限らずＣＲＴなどを用いることもできる。図柄表示部１０４の下方には、始動入賞させるための始動入賞口１０５が配設されている。図柄表示部１０４の左右には、それぞれ入賞ゲート１０６が配設されている。
【００７８】
入賞ゲート１０６は、遊技球の通過を検出し、始動入賞口１０５を一定時間だけ開放させる抽選をおこなうために設けられる。図柄表示部１０４の側部や下方などには普通入賞口１０７が配設されている。普通入賞口１０７に遊技球が入賞すると、普通入賞時の賞球数（たとえば１０個）の払い出しをおこなう。遊技領域１０３の最下部には、どの入賞口にも入賞しなかった遊技球を回収する回収口１０８が設けられている。
【００７９】
上述した図柄表示部１０４は、特定の入賞口に遊技球が入賞したとき（始動入賞時）に、複数の図柄の表示の変動を開始させ、所定時間後に図柄が停止する。この停止時に特定図柄（たとえば「７７７」）に揃ったとき、大当たり状態となる。大当たり状態のとき、下方に位置する大入賞口１０９が一定の期間開放を所定ラウンド（たとえば１５ラウンド）繰り返し、入賞した遊技球に対応した賞球数を払い出す。
【００８０】
図２は、ぱちんこ遊技機の制御部の内部構成を示すブロック図である。制御部２００は、複数の制御部により構成されている。図示の例では、主制御部２０１と、周辺部（演出制御部２０２、賞球制御部２０３）とを有する。主制御部２０１は、ぱちんこ遊技機の遊技にかかる基本動作を制御する。演出制御部２０２は、遊技中の演出動作を制御する。賞球制御部２０３は、払い出す賞球数を制御する。
【００８１】
主制御部２０１は、ＲＯＭ２１２に記憶されたプログラムデータに基づき、遊技内容の進行に伴う基本処理を実行するＣＰＵ２１１と、ＣＰＵ２１１の演算処理時におけるデータのワークエリアとして機能するＲＡＭ２１３、各検出部２２１〜２２４から各種データを受信するとともに、演出制御部２０２および賞球制御部２０３への各種データの送信をおこなうインタフェース（Ｉ／Ｆ）２１４などを備えて構成される。主制御部２０１は、たとえばいわゆる主制御基板によってその機能を実現する。
【００８２】
この主制御部２０１の入力側には、始動入賞口１０５に入賞した入賞球を検出する始動入賞口検出部２２１と、入賞ゲート１０６を通過した遊技球を検出するゲート検出部２２２と、普通入賞口１０７に入賞した遊技球を検出する普通入賞口検出部２２３と、大入賞口１０９に入賞した入賞球を検出する大入賞口検出部２２４とがＩ／Ｆ２１４を介して接続されている。これらの検出部としては、近接スイッチなどを用いて構成できる。
【００８３】
この主制御部２０１の出力側には、大入賞口開閉部２３１が接続され、この大入賞口開閉部２３１の開閉を制御する。大入賞口開閉部２３１は、大当たり時に大入賞口１０９を一定期間開放する機能であり、ソレノイドなどを用いて構成される。この大当たりは、生成した乱数（大当たり判定用乱数）に基づいて所定の確率（たとえば３００分の１など）で発生するようあらかじめプログラムされている。
【００８４】
演出制御部２０２は、主制御部２０１から各種の制御コマンドを含む制御信号を受け取り、このコマンドに基づいてＲＯＭ２４２に記憶されたプログラムデータを実行して遊技中における演出制御をおこなう。この演出制御部２０２は、演出処理を実行するＣＰＵ２４１と、ＣＰＵ２４１の演算処理時におけるデータのワークエリアとして機能するＲＡＭ２４３、図柄表示部１０４に表示させる画像データを書き込むＶＲＡＭ２４４、主制御部２０１からの各種データの受信およびランプ制御部２５１や音声制御部２５２への各種データの送信をおこなうインタフェース（Ｉ／Ｆ）２４５などを備えて構成される。演出制御部２０２は、たとえばいわゆる演出基板によってその機能を実現する。また、演出制御部２０２の出力側には、上述した図柄表示部（ＬＣＤ）１０４、ランプ制御部２５１、音声制御部２５２がＩ／Ｆ２４５を介して接続されている。
【００８５】
賞球制御部２０３は、主制御部２０１から各種の制御コマンドを含む制御信号を受け取り、このコマンドに基づいてＲＯＭ２８２に記憶されたプログラムデータを実行して賞球制御をおこなう。この賞球制御部２０３は、賞球制御の処理を実行するＣＰＵ２８１と、ＣＰＵ２８１の演算処理時におけるデータのワークエリアとして機能するＲＡＭ２８３、主制御部２０１からの各種データの受信および発射部２９２との各種データの送受信をおこなうインタフェース（Ｉ／Ｆ）２８４などを備えて構成される。賞球制御部２０３は、たとえばいわゆる賞球基板によってその機能を実現する。
【００８６】
賞球制御部２０３は、接続される払出部２９１に対して入賞時の賞球数を払い出す制御をおこなう。また、発射部２９２に対する遊技球の発射の操作を検出し、遊技球の発射を制御する。払出部２９１は、遊技球の貯留部から所定数を払い出すためのモータなどからなる。賞球制御部２０３は、この払出部２９１に対して、各入賞口（始動入賞口１０５、普通入賞口１０７、大入賞口１０９）に入賞した遊技球に対応した賞球数を払い出す制御をおこなう。
【００８７】
発射部２９２は、遊技のための遊技球を発射するものであり、遊技者による遊技操作を検出するセンサと、遊技球を発射させるソレノイドなどを備える。賞球制御部２０３は、発射部２９２のセンサにより遊技操作を検出すると、検出された遊技操作に対応してソレノイドなどを駆動させて遊技球を間欠的に発射させ、遊技盤１０１の遊技領域１０３に遊技球を送り出す。
【００８８】
上記構成の主制御部２０１と、演出制御部２０２と、賞球制御部２０３は、それぞれ異なるプリント基板（主制御基板、演出基板、賞球基板）に設けられる。これに限らず、たとえば、賞球制御部２０３は、主制御部２０１と同一のプリント基板上に設けることもできる。
【００８９】
（主制御基板および周辺基板の機能的構成）
図３は、主制御基板（主制御部）および周辺基板（演出制御部、賞球制御部）の機能的構成を示すブロック図である。まず、主制御部２０１としての機能を有する主制御基板３１０の機能的構成について説明する。図３に示すように、主制御基板３１０は、周辺基板３３０を動作させるための制御コマンドを送信する機能部であり、制御コマンド格納部３１１、記録部３１２、補正データ生成部３１３、認証データ生成部３１４、ダミー認証データ生成部３１５、補正データ付加部３１６、認証データ付加部３１７、ダミー認証データ付加部３１８、送信部３１９によって構成される。
【００９０】
制御コマンド格納部３１１は、周辺基板３３０に送信する制御コマンドのデータ（制御コマンドデータ）を格納する。また、記録部３１２は、主制御基板３１０に固有の値や所定のプログラムコードを記録する。主制御部２０１に固有の値とは、たとえば主制御基板３１０が複数ある場合に、それぞれの主制御基板３１０を識別可能な値である。
【００９１】
主制御基板３１０は、たとえば、記録部３１２に記録された所定のプログラムコードにしたがって、制御コマンド格納部３１１から周辺基板３３０に送信する制御コマンドを選択して、周辺基板３３０に制御コマンドを送信する。なお、制御コマンド格納部３１１と記録部３１２とを別個に設けるのではなく、一体としてもよい。たとえば、記録部３１２に制御コマンドデータとプログラムコードと主制御基板３１０に固有の値とを格納してもよい。
【００９２】
補正データ生成部３１３は、主制御基板３１０から送信されたデータの照合に用いる期待値を補正するための補正データを生成する。期待値とは、たとえば周辺基板３３０にあらかじめ（製造時など）保持されている値であり、周辺基板３３０において主制御基板３１０から送信されたデータの照合をおこなう際に用いる値である。また、期待値は、固定した値ではなく、たとえば基本値から演算により生成される値でもよい。なお、主制御基板３１０が複数ある場合、それぞれの主制御基板３１０に対して期待値は異なることとする。このため、たとえば主制御基板３１０が他の主制御基板３１０に変更された場合、他の主制御基板３１０が正当な主制御基板３１０であっても、周辺基板３３０の期待値が補正されないと、周辺基板３３０においては照合がおこなえなくなってしまったり、正当な主制御基板３１０を不正な主制御部と判断してしまったりする。このような照合の不具合を防ぐために、主制御基板３１０は、周辺基板３３０に保持されている期待値を補正するための補正データを周辺基板３３０に送信する。
【００９３】
補正データ生成部３１３が補正データを生成するタイミングは、たとえば主制御基板３１０が他の主制御基板３１０に変更された場合である。この場合、補正データ生成部３１３は、周辺基板３３０に保持された変更前の主制御基板３１０に対応する期待値を、変更後の他の主制御基板３１０から送信されたデータの照合に用いる期待値に補正するための補正データを生成する。
【００９４】
補正データ生成部３１３による補正データの生成方法としては、記録部３１２によって記録された固有の値を用いて補正データを生成してもよい。具体的には、補正データ生成部３１３は、たとえば主制御基板３１０が他の主制御基板３１０に変更された場合、変更後の他の主制御基板３１０に設定されている固有の値と、記録部３１２に記録されている変更前の主制御基板３１０に設定されていた固有の値との差分を、補正データとして生成する。さらに、補正データ生成部３１３は、固有の値とともに、今回送信する制御コマンドを用いて補正データを生成してもよい。また、補正データ生成部３１３は、記録部３１２に記録されたプログラムコードを用いて補正データを生成してもよい。さらに、補正データ生成部３１３は、プログラムコードとともに、今回送信する制御コマンドを用いて補正データを生成してもよい。また、補正データ生成部３１３は、生成された補正データを暗号化してもよい。
【００９５】
認証データ生成部３１４は、主制御基板３１０を認証するための認証データを生成する。認証データ生成部３１４は、たとえば記録部３１２によって記録されたプログラムコードを用いて認証データを生成する。さらに、認証データ生成部３１４は、プログラムコードとともに、今回送信する制御コマンドを用いて認証データを生成してもよい。認証データは、認証者（周辺基板３３０）が、周辺基板３３０に保持されている期待値を用いて照合をおこなうことにより、主制御基板３１０を正規の主制御基板３１０であると認証するための情報である。
【００９６】
ダミー認証データ生成部３１５は、認証データのダミーデータ（以下、「ダミー認証データ」という）を生成する。ダミー認証データは、認証者（周辺基板３３０）が、周辺基板３３０に保持されている期待値を用いた照合をおこなわずに、主制御基板３１０を正規の主制御基板３１０であると仮に認証するための情報である。また、ダミー認証データは、周辺基板３３０に保持されている期待値を用いて照合をおこない、照合の結果が一致しても不一致でも主制御基板３１０を正規の主制御基板３１０であると仮に認証するための情報である。さらに、ダミー認証データは、上述の補正データおよび認証データを用いた認証とは別種類の認証に用いる認証データであってもよい。
【００９７】
補正データ付加部３１６は、周辺基板３３０に送信する制御コマンドがその周辺基板３３０にぱちんこ遊技機の電源投入時の処理を実行させるコマンド（以下、「電源オンコマンド」という）である場合、補正データ生成部３１３によって生成された補正データをこの電源オンコマンドに付加して制御信号を生成する。また、補正データ付加部３１６は、周辺基板３３０に送信する制御コマンドが主制御基板３１０のリセット後の電源オンコマンドである場合、この電源オンコマンドに補正データを付加してもよい。
【００９８】
なお、電源オンコマンドは、ぱちんこ遊技機の電源が投入された場合に限らず、ぱちんこ遊技機の動作をリセットする場合（リセットボタンの押下時）など、ぱちんこ遊技機の初期化処理をおこなう際に送信される。ここで、リセットとは、たとえばぱちんこ遊技機の備えるＲＡＭ２１３を初期化（クリア）するなどの処理である。
【００９９】
このように、補正データ付加部３１６は、主制御部２０１が周辺基板に電源オンコマンドを送信する際にのみ、制御信号に補正データを付加する。電源オンコマンドは、ぱちんこ遊技機の電源の投入時やリセット時など、ぱちんこ遊技機の初期化処理をおこなう際に送信される。初期化処理は、ぱちんこ遊技機のメインの処理である遊技（ゲーム進行）関連処理とは異なる処理区分に分類される。初期化処理中に期待値の補正処理を組み込めば、遊技関連処理中に補正処理を組み込む場合と比較して、プログラム設計やテストにかかる工程（工数）を低減することができる。すなわち、初期化処理中に補正処理を組み込むことによって、開発コストの低減や品質管理上のメリットを得ることができる。
【０１００】
また、初期化処理中に補正処理を組み込めば、周辺基板３３０において、ぱちんこ遊技機の起動直後に補正処理をおこなうため、ぱちんこ店が閉店した後に不正がおこなわれた場合などであっても、客が入店する前に不正を検出することができる。よって、不正による被害が発生する可能性を低減することができる。
【０１０１】
また、電源が投入された直後に補正処理をおこなうため、確実に認証処理の前に補正処理をおこなうことができる。具体的には、バージョンアップやマイナーチェンジなどによるぱちんこ遊技機の主制御基板３１０の変更は、ぱちんこ遊技機の電源がオフされた後におこなわれる。したがって、主制御基板３１０が他の正規な主制御基板３１０に変更された場合であっても、主制御基板３１０の電源が投入された直後に、周辺基板３３０において期待値の補正処理をおこなうことができる。このため、周辺基板３３０においては、ぱちんこ遊技機の電源が投入された直後に、変更された他の正規な主制御基板３１０に対応する期待値に補正することができるので、補正処理をおこなった後に、変更後の主制御基板に３１０に対応した認証処理をおこなうことができる。
【０１０２】
認証データ付加部３１７は、後述する送信部３１９によって補正データ付制御コマンドが周辺基板３３０に送信された後に、この周辺基板３３０に送信する制御コマンドが所定の制御コマンドである場合、認証データ生成部３１４によって生成された認証データを制御コマンドに付加する。ここで、所定の制御コマンドは、たとえば大当たりリーチコマンドや大当たり開始コマンド、大当たりコマンド、大当たり終了コマンド、客待ちデモコマンド、はずれコマンドなどのうち、いずれか（複数でも可）である。
【０１０３】
認証データ付加部３１７は、電源オンコマンドによって電源が投入されてから、電源がオフされるまでの間に、少なくとも１つ以上の制御コマンドに認証データを付加すればよい。好適には、たとえば、大当たり状態などの不正がおこなわれる可能性の高い状態になる前の制御コマンドに認証データを付加すればよい。
【０１０４】
認証データ付加部３１７は、周辺基板３３０に送信する制御コマンドが、送信部３１９によって送信された補正データ付制御コマンドから所定回数目の制御コマンドである場合、この制御コマンドに認証データを付加する。この場合、認証データ付加部３１７は、たとえば制御コマンドの種類に関わらず、電源オンコマンドから数えて所定回数目の制御コマンドに付加してもよいし、所定の種類の制御コマンドに対して、電源オンコマンドから数えて所定回数目の制御コマンドに付加してもよい。
【０１０５】
なお、たとえば、後述する判断部に３２４おいて、制御コマンドに認証データを含んでいるか否かを判断可能な場合、認証データ付加部３１７は、ランダムに認証データを付加してもよい。
【０１０６】
また、ダミー認証データ付加部３１８は、ダミー認証データ生成部３１５によって生成されたダミー認証データを、認証データが付加された制御コマンド以外の制御コマンドに付加する。ダミー認証データ付加部３１８は、認証データの付加された制御コマンド以外の制御コマンドには、ランダムにダミー認証データを付加してもよいし、あらかじめ設定された順番または種類の制御コマンドにダミー認証データを付加してもよい。
【０１０７】
送信部３１９は、補正データ付加部３１６によって補正データの付加された制御コマンド（以下、「補正データ付制御コマンド」という）、認証データ付加部３１７によって認証データの付加された制御コマンド（以下、「認証データ付制御コマンド」という）またはダミー認証データ付加部３１８によってダミー認証データの付加された制御コマンド（以下、「ダミー認証データ付制御コマンド」という）を周辺基板３３０に送信する。送信部３１９は、今回送信するコマンドが電源オンコマンドである場合は、補正データ付制御コマンドを周辺基板３３０に送信し、今回送信するコマンドが所定の制御コマンドである場合は、認証データ付制御コマンドを周辺基板３３０に送信してもよい。また、送信部３１９は、今回送信するコマンドが電源オンコマンドおよび所定の制御コマンドでない場合は、補正データや認証データが付加されていない制御コマンドまたはダミー認証データ付制御コマンドを認証データ付制御コマンドを周辺基板３３０に送信する。なお、送信部３１９は、今回送信するコマンドが所定の制御コマンドであっても、認証データが付加されていない場合、ダミー認証データ付制御コマンドを周辺基板３３０に送信してもよい。
【０１０８】
このように、認証データ付加部３１７および送信部３１９は、補正データ付制御コマンドが周辺基板３３０に送信された後に、認証データを付加して認証データ付制御コマンドを周辺基板３３０に送信する。したがって、周辺基板３３０においては、期待値の補正処理をおこなってから、認証処理をおこなうことができる。このため、たとえば主制御基板３１０が他の主制御基板３１０に変更された場合に、期待値が補正される前に認証処理がおこなわれるのを防ぐことができる。これによって、周辺基板３３０における認証処理において、正当な主制御基板３１０が不当な主制御基板３１０であると認証されるのを防ぐことができる。
【０１０９】
また、周辺基板３３０に電源オンコマンドを送信する際に、補正データ付加部３１６によって補正データを付加し、所定の制御コマンドを送信する際に、認証データ付加部３１７によって認証データを付加する。電源オンコマンドは、すべての制御コマンドの最初に送信されるため、確実に認証処理の前に補正処理をおこなうことができる。
【０１１０】
また、主制御基板３１０から周辺基板３３０に期待値の補正データを送信するため、主制御基板３１０が変更された際に、周辺基板３３０を変更したり周辺基板３３０に保持されている期待値の設定を変更したりしなくても、変更後の主制御基板３１０に対応した期待値に簡単に補正することができる。また、送信部３１９は、期待値をそのまま送信せず、補正値のみを送信する。したがって、たとえば第三者によって送信したデータが窃取されても、期待値が解読されないため、認証処理の強度を向上させることができる。
【０１１１】
また、ダミー認証データ付加部３１８および送信部３１９は、補正データ付制御コマンドが周辺基板３３０に送信された後に、認証データの付加されていない制御コマンドに、ダミー認証データを付加してダミー認証データ付制御コマンドを周辺基板３３０に送信することができる。このようにすることで、主制御基板３１０から周辺基板３３０へ認証データがいつ送信されたのかを、第三者に知られることを防ぎ、認証データが窃取されることを防ぐことができる。
【０１１２】
また、補正データ付加部３１６および認証データ付加部３１７は、主制御基板３１０に電源オンコマンドを送信する際にのみ、制御信号に補正データを付加し、主制御基板３１０に所定の制御コマンドを送信する際にのみ、制御信号に認証データを付加する。このため、たとえば補正データや認証データを付加しない制御信号のみを送信するような従来の主制御基板を、補正データや認証データを付加した制御信号を送信するような本実施の形態にかかる主制御基板３１０に変更する場合、全ての制御コマンドの送信処理に補正データまたは認証データの付加処理を追加する手間を省くことができる。このように、所定の制御コマンドの送信処理のみに付加処理を追加すればよいため、処理を追加するための設定の難易度が容易であり、設定にかかる時間を短縮することができる。
【０１１３】
さらに、補正データ付制御コマンド、認証データ付制御コマンドまたはダミー認証データ付制御コマンドを周辺部に送信する送信部３１９が１つのみであり、送信するデータの種類毎に分かれていない。そして、補正データ、認証データまたはダミー認証データを付加する付加部が付加するデータ毎に分かれている。このため、本発明をたとえば遊技機などの機器に適用する際に、プログラムコードやデータを記憶するメモリ容量を節約することができる。また、たとえば本発明を適用した遊技機などの機器の動作検証を行う際に、送信部について１つのみを検証すればよく、検証にかかる工程数を少なくすることができる。かつ、たとえば第３者にいずれかのデータを付加するタイミングが知られても、他のデータを付加するタイミングまでは知られないので、認証の強度を上げることができる。
【０１１４】
つぎに、演出制御部２０２や賞球制御部２０３などの周辺部としての機能を有する周辺基板３３０の機能的構成について説明する。図３に示すように、演出制御部２０２、賞球制御部２０３などの周辺基板３３０は、受信部３３１、補正部３３２、判断部３３３、認証部３３４、報知信号出力部３３５によって構成される。
【０１１５】
受信部３３１は、主制御基板３１０によって送信された補正データ付制御コマンド、認証データ付制御コマンドまたはダミー認証データ付制御コマンドを含む制御信号を受信する。受信部３３１は、あらかじめ定められた順序によって、受信した制御信号が、補正データ付制御コマンド、認証データ付制御コマンドまたはダミー認証データ付制御コマンドのうちのいずれかのコマンドを含んだ制御信号であるかを判断してもよい。
【０１１６】
補正部３３２は、受信部３３１によって受信された補正データ付制御コマンドを用いて周辺基板３３０に保持されている期待値を補正する。補正部３３２は、受信した補正データが暗号化されている場合、この補正データを復元した値を用いて期待値を補正する。
【０１１７】
補正部３３２は、たとえば、制御コマンドに補正データが付加されているか否かを判断し、制御コマンドに補正データが付加されている場合、補正データを用いて周辺基板３３０の期待値を補正する。また、補正部３３２は、制御コマンドが電源オンコマンドであるか否かを判断し、制御コマンドが電源オンコマンドである場合、補正データを用いて周辺基板３３０の期待値を補正することとしてもよい。
【０１１８】
判断部３３３は、受信部３３１によって認証データ付制御コマンドを受信した場合、この認証データ付制御コマンドを用いて算出された値が、補正部３３２によって補正された期待値と一致するか否かを判断する。
【０１１９】
判断部３３３は、たとえば、制御コマンドに認証データが付加されているか否かを判断し、主制御基板３１０から送信された制御コマンドに認証データが付加されている場合、認証データ付制御コマンドを用いて算出された値と、期待値と、が一致するか否かを判断する。また、判断部３３３は、制御コマンドが所定の制御コマンドであるか否かを判断し、主制御基板３１０から送信された制御コマンドが所定の制御コマンドである場合、認証データ付制御コマンドを用いて算出された値と、期待値と、が一致するか否かを判断してもよい。この場合、所定の制御コマンドか否かの判断は、たとえば所定の種類の制御コマンドか否かを判断してもよいし、電源オンコマンドから所定回数目の制御コマンドか否かを判断してもよい。
【０１２０】
なお、判断部３３３は、たとえば、制御コマンドにダミー認証データが付加されているか否かを判断し、主制御基板３１０から送信された制御コマンドにダミー認証データが付加されている場合、ダミー認証データ付制御コマンドを用いて算出された値と期待値とが一致するか否かを判断してもよい。
【０１２１】
認証部３３４は、判断部３３３によって認証データ付制御コマンドを用いて算出された値と、期待値と、が一致すると判断された場合、主制御基板３１０を認証する。また、認証部３３４は、受信部３３１によってダミー認証データ付制御コマンドを受信した場合、主制御基板３１０を認証する。具体的には、認証部３３４は、判断部３３３によるダミー認証データを用いて算出された値と期待値とが一致するか否かの処理を省略して、主制御基板３１０を認証する。
【０１２２】
また、認証部３３４は、判断部３３３によって、ダミー認証データ付制御コマンドを用いて算出された値と期待値とが一致するか否かを判断し、一致したか否かに関わらず、主制御基板３１０を認証してもよい。このようにすることで、正規の認証データを受信した場合と処理時間または処理の際に生じる熱量などが同程度となるので、周辺基板３３０において正規な認証データを受信したタイミングを第三者に知られることを防ぐことができる。これによって、より認証の強度を上げることができる。
【０１２３】
報知信号出力部３３５は、認証部３３４によって主制御基板３１０が認証されなかった場合、報知信号を出力する。周辺基板３３０が演出制御部２０２の場合、報知信号出力部３３５は、たとえば、図柄表示部１０４やランプ制御部２５１、音声制御部２５２（図２参照）などに出力する。また、報知信号出力部３３５は、ぱちんこ遊技機を管理するセンター制御装置などに報知信号を出力することとしてもよい。
【０１２４】
報知信号出力部３３５によって出力された報知信号に基づいて、図柄表示部１０４やランプ制御部２５１、音声制御部２５２は、主制御基板３１０に不正がおこなわれた可能性がある旨を報知する演出を実行する。この演出は、たとえば、図柄表示部１０４に通常出現しないキャラクタを出現させたり、通常出現するキャラクタを通常とは異なる方法で出現させたりするなどである。また、図柄表示部１０４の輝度を変えたり、色を変えたり、ランプ制御部２５１に対して所定のランプを表示制御するようにしてもよい。いずれにせよ、当該ぱちんこ遊技機の前を通過した際に、従業員がその状態に気がつくようにしてあればよい。また、この演出は、顧客がその状態に気がつかないような演出でもよく、また、顧客が容易に気がつく演出であってもよい。顧客が容易に気がつく演出にすれば、不正行為を効率的に抑止することができる。
【０１２５】
また、報知信号に「大当たり中」や「確率変動中」などのぱちんこ遊技機の遊技状態に関する情報を含めてもよい。これらの遊技状態に関する情報に基づいて、ぱちんこ遊技機を管理するセンター制御装置などによって不正行為がおこなわれているか否かの判断をおこなってもよい。たとえば、大当たり中や確率変動中は入賞が集中していても正常である場合がある。よって、大当たり中や確率変動中は、その他の状態とは異なる条件で不正行為のおそれがあるかについて判断するのがよい。また、遊技状態に関する情報は、報知信号に含めずに別信号として出力するようにしてもよい。この場合、従業員は、報知信号と遊技状態に関する情報の両方に基づいて、不正行為のおそれがあるか否かについて判断する。
【０１２６】
なお、図３において、期待値は、他の構成部から周辺基板３３０に送信されることとしてもよい。他の構成部とは、たとえば、他の周辺部や期待値を生成するための専用の処理部（以下、「期待値算出部」という）などである。主制御部や期待値算出部は、あらかじめ記録されている期待値を周辺基板３３０に送信してもよいし、照合処理ごとに期待値を生成してもよい。また、外部接続用Ｉ／Ｆ（図示なし）を介して、外部の機器から周辺基板３３０や期待値算出部に期待値を算出するために必要な係数などを送信してもよい。このように、周辺基板３３０に、あらかじめ期待値を記録させずに、他の構成部から取得する場合、補正部３３２は、受信部３３１によって受信された補正データから補正値を取得し、判断部３３３は、取得された期待値および補正値を用いて算出された値が、受信部３３１によって受信された認証データ付制御コマンドを用いて算出された値と一致するか否かを判断してもよい。
【０１２７】
また、周辺基板３３０は、補正後の期待値（最終期待値）そのものを固定値として保持しなくてもよい。この場合、たとえば製造時から、補正データによる補正処理をおこなわないと、ダミー認証データを受信した場合は認証が成立となり、認証データを受信した場合は認証が不成立となるように設計する。このようにすることで、最終期待値を知り得る者を限定することができ、期待値に関する情報の流出などのリスクを低減することができる。
【０１２８】
また、補正データ生成部３１３や認証データ生成部３１４は、補正データや認証データに、複数回の暗号化処理をおこなってもよい。この場合、周辺基板３３０においては、複数回の復号処理によって補正データや認証データを復号化する。また、認証データ生成部３１４は、２種類以上の暗号化方法のいずれかを選んで暗号化処理をおこなってもよい。この場合、周辺基板３３０においては、２種類以上の復号方法によって復号して誤り検査値を取得し、判断部３３３によって、取得されたいずれかの誤り検査値が期待値と一致するか否かを判断してもよい。そして、認証部３３４は、取得された誤り検査値のうちのいずれかが期待値と一致した場合に、主制御基板３１０を認証してもよい。
【０１２９】
（ぱちんこ遊技機の基本動作）
上記構成によるぱちんこ遊技機の基本動作の一例を説明する。主制御部２０１は、各入賞口に対する遊技球の入賞状況を制御コマンドとして賞球制御部２０３に出力する。賞球制御部２０３は、主制御部２０１から出力された制御コマンドに応じて、入賞状況に対応した賞球数の払い出しをおこなう。
【０１３０】
また、主制御部２０１は、始動入賞口１０５に遊技球が入賞するごとに、対応する制御コマンドを演出制御部２０２に出力し、演出制御部２０２は、図柄表示部１０４の図柄を変動表示させ、停止させることを繰り返す。大当たりの発生が決定しているときには、対応する制御コマンドを演出制御部２０２に出力し、演出制御部２０２は、所定の図柄で揃えて停止させる。このとき同時に、大入賞口１０９を開放する制御をおこなう。演出制御部２０２は、大当たり発生期間中、および大当たり発生までの間のリーチ時や、リーチ予告時などには、図柄表示部１０４に対して、図柄の変動表示に加えて各種の演出表示をおこなう。このほか、各種役物に対して特定の駆動をおこなったり、ランプ２６１の表示状態を変更したりするなどの演出をおこなう。
【０１３１】
そして、大当たり発生時には、大入賞口１０９が複数回開放される。１回の開放が１ラウンドとして、たとえば１５回のラウンドが繰り返し実行される。１ラウンドの期間は、遊技球がたとえば１０個入賞したとき、あるいは所定期間（たとえば３０秒）とされている。この際、賞球制御部２０３は、大入賞口１０９に対する遊技球１個の入賞あたり、たとえば１５個の賞球数で払い出しをおこなう。大当たり終了後は、この大当たり状態が解除され、通常の遊技状態に復帰する。
【０１３２】
（各制御部による処理の詳細）
つぎに、各制御部がおこなう各種処理の詳細について説明する。はじめに、主制御部２０１による演出制御部２０２の制御処理について説明する。図４および図５は、主制御部による演出制御部の制御処理の手順を示すフローチャートである。なお、図４〜９においては、演出制御部２０２の制御処理の手順を明確にするため、補正データ、認証データおよび付随データについては考慮しないものとする。すなわち、図４〜図９の説明において、「コマンドを送信する」とは、「当該コマンドを示すデータ（制御コマンドデータ）を含む制御信号を送信する」との意味であり、たとえば補正データや認証データや付随データ（図１０参照）の有無は考慮しないものとする。
【０１３３】
図４および図５のフローチャートにおいて、主制御部２０１は、まず、ぱちんこ遊技機の電源がオンにされるまで待機する（ステップＳ４０１：Ｎｏのループ）。ぱちんこ遊技機の電源がオンにされると（ステップＳ４０１：Ｙｅｓ）、主制御部２０１は、演出制御部２０２や賞球制御部２０３などの周辺基板に対して電源オンコマンドを送信する（ステップＳ４０２）。電源オンコマンドが送信されると、演出制御部２０２は、ランプ制御部２５１や音声制御部２５２、図柄表示部１０４に対して、それぞれに対して電源オン時の演出用の制御コマンド（具体的には、ランプの点灯や音声の出力、デモ画面の表示などを指示する制御コマンド）を送信する。
【０１３４】
なお、ステップＳ４０１においては、ぱちんこ遊技機がリセットされたか否かを判断してもよい。ここで、リセットとは、たとえばぱちんこ遊技機の備えるＲＡＭ２１３を初期化（クリア）するなどの処理である。
【０１３５】
つぎに、主制御部２０１は、ＲＯＭ２１２またはＲＡＭ２１３に記録されている未抽選入賞回数データを参照して、未抽選入賞回数が０回か否かを判断する（ステップＳ４０３）。未抽選入賞回数とは、始動入賞口に検出された入賞球の数（入賞回数）から、入賞球に対応する抽選がおこなわれた回数（既抽選回数）を減じた数である。未抽選入賞回数が０回の場合（ステップＳ４０３：Ｙｅｓ）、主制御部２０１は、デモが開始されてから経過した時間を計測する（ステップＳ４０４）。
【０１３６】
デモが開始されてから所定時間が経過すると（ステップＳ４０５：Ｙｅｓ）、主制御部２０１は、演出制御部２０２に客待ちデモコマンドを送信して（ステップＳ４０６）、ステップＳ４０７に移行する。デモが開始されてから所定時間が経過しない場合は（ステップＳ４０５：Ｎｏ）、そのままステップＳ４０７に移行する。ステップＳ４０６で客待ちデモコマンドが送信されると、演出制御部２０２は、ランプ制御部２５１や音声制御部２５２、図柄表示部１０４に対して客待ちデモ用の制御信号を送信する。また、ステップＳ４０３で、未抽選入賞回数が０回ではない場合は（ステップＳ４０３：Ｎｏ）、ステップＳ４１０に移行する。
【０１３７】
つぎに、主制御部２０１は、始動入賞口検出部２２１によって始動入賞口への入賞球が検出されたか否か判断する（ステップＳ４０７）。始動入賞口への入賞球が検出されると（ステップＳ４０７：Ｙｅｓ）、主制御部２０１は、デモが開始されてから計測していた時間をクリアして（ステップＳ４０８）、未抽選入賞回数に１を加える（ステップＳ４０９）。つづいて、主制御部２０１は、大当たり判定用乱数を取得して（ステップＳ４１０）、未抽選入賞回数から１を減算し（ステップＳ４１１）、図５のステップＳ４１２に移行する。また、ステップＳ４０７で、始動入賞口への入賞球が検出されない場合は（ステップＳ４０７：Ｎｏ）、ステップＳ４０４に戻り、以降の処理を継続する。
【０１３８】
つぎに、主制御部２０１は、ステップＳ４１０で取得した大当たり判定用乱数が、あらかじめ定められた大当たり乱数であるか否かを判断する（ステップＳ４１２）。大当たり判定用乱数が大当たり乱数である場合（ステップＳ４１２：Ｙｅｓ）、主制御部２０１は、演出制御部２０２に大当たりリーチコマンド（図柄変動コマンド）を送信する（ステップＳ４１３）。主制御部２０１は、図柄変動時間が経過するまで待機して（ステップＳ４１４：Ｎｏのループ）、図柄変動時間が経過すると（ステップＳ４１４：Ｙｅｓ）、演出制御部２０２に図柄停止コマンドを送信する（ステップＳ４１５）。
【０１３９】
つぎに、主制御部２０１は、演出制御部２０２に大当たり開始コマンドを送信し（ステップＳ４１６）、つづけて、大当たり中の各ラウンドに対応するコマンド（大当たりコマンド）を順次送信する（ステップＳ４１７）。そして、主制御部２０１は、全てのラウンドの大当たりコマンドの送信が終わると、大当たり終了コマンドを送信して（ステップＳ４１８）、ステップＳ４２２に移行する。
【０１４０】
一方、ステップＳ４１２で、大当たり判定用乱数が大当たり乱数でなかった場合（ステップＳ４１２：Ｎｏ）、主制御部２０１は、演出制御部２０２にはずれリーチコマンド（図柄変動コマンド）を送信する（ステップＳ４１９）。主制御部２０１は、図柄変動時間が経過するまで待機して（ステップＳ４２０：Ｎｏのループ）、図柄変動時間が経過すると（ステップＳ４２０：Ｙｅｓ）、演出制御部２０２に図柄停止コマンドを送信する（ステップＳ４２１）。
【０１４１】
主制御部２０１は、ぱちんこ遊技機の電源がオフにされるまでは（ステップＳ４２２：Ｎｏ）、図４のステップＳ４０３に戻り、以降の処理を繰り返す。そして、ぱちんこ遊技機の電源がオフにされると（ステップＳ４２２：Ｙｅｓ）、主制御部２０１は、演出制御部２０２に終了処理コマンドを送信して（ステップＳ４２３）、本フローチャートによる処理を終了する。
【０１４２】
図６は、大当たり関連コマンド（大当たりリーチコマンド、大当たり開始コマンド、大当たりコマンド、大当たり終了コマンド）の送信タイミングを示すタイムチャートである。大当たりリーチコマンドは、実際に大当たりが発生するよりも頻繁に、かつランダムに送信される。また、大当たり開始コマンドは、実際に大当たりが発生した場合に、大当たり状態に移行する際に１度だけ送信される。また、大当たりコマンドは、大当たり状態に移行した後、ラウンドごとに継続的に送信される。また、大当たり終了コマンドは、大当たり状態の全てのラウンドが終了し、通常の状態に移行する際に１度だけ送信される。
【０１４３】
つぎに、演出制御部２０２による処理について説明する。以下では、図柄変動時（大当たりリーチコマンド（図５のステップＳ４１３参照）または、はずれリーチコマンド（図５のステップＳ４１９参照）を受信した場合）および、大当たり時の演出制御部２０２の処理について説明する。
【０１４４】
図７は、演出制御部による図柄変動処理の手順を示すフローチャートである。図７のフローチャートにおいて、演出制御部２０２は、まず、図柄変動コマンドである大当たりリーチコマンド（図５のステップＳ４１３参照）、または、はずれリーチコマンド（図５のステップＳ４１９参照）を受信するまで待機する（ステップＳ７０１：Ｎｏのループ）。図柄変動コマンドを受信すると（ステップＳ７０１：Ｙｅｓ）、演出制御部２０２は、変動演出選択用の乱数を取得して（ステップＳ７０２）、取得した乱数に基づいて変動演出の種類を選択する（ステップＳ７０３）。そして、演出制御部２０２は、ランプ制御部２５１や音声制御部２５２に対して変動演出別の演出開始コマンドを送信する（ステップＳ７０４）。
【０１４５】
演出制御部２０２は、変動演出の演出時間が経過したか否かや（ステップＳ７０５）、主制御部２０１から図柄停止コマンド（図５のステップＳ４１５，Ｓ４２１参照）を受信したか否かを判断する（ステップＳ７０６）。演出時間が経過した場合（ステップＳ７０５：Ｙｅｓ）、または図柄停止コマンドを受信した場合（ステップＳ７０６：Ｙｅｓ）、演出制御部２０２は、ランプ制御部２５１や音声制御部２５２に対して演出停止コマンドを送信する（ステップＳ７０７）。また、演出時間が経過せず（ステップＳ７０５：Ｎｏ）、かつ図柄停止コマンドを受信しない場合は（ステップＳ７０６：Ｎｏ）、ステップＳ７０５に戻り、以降の処理を繰り返す。
【０１４６】
つぎに、演出制御部２０２の大当たり時の処理について説明する。図８は、演出制御部による大当たり時の処理の手順を示すフローチャートである。図８のフローチャートにおいて、演出制御部２０２は、まず、主制御部２０１から大当たり開始コマンド（図５のステップＳ４１６参照）を受信するまで待機する（ステップＳ８０１：Ｎｏのループ）。大当たり開始コマンドを受信すると（ステップＳ８０１：Ｙｅｓ）、演出制御部２０２は、ランプ制御部２５１や音声制御部２５２に対して大当たり開始処理コマンドを送信する（ステップＳ８０２）。
【０１４７】
つぎに、演出制御部２０２は、主制御部２０１からラウンド別の大当たりコマンド（図５のステップＳ４１７参照）を受信するまで待機する（ステップＳ８０３：Ｎｏのループ）。大当たりコマンドを受信すると（ステップＳ８０３：Ｙｅｓ）、演出制御部２０２は、ランプ制御部２５１や音声制御部２５２に対して受信したラウンド別の大当たりコマンドに対応するラウンド別処理コマンドを送信する（ステップＳ８０４）。
【０１４８】
つづいて、演出制御部２０２は、主制御部２０１から大当たり終了コマンド（図５のステップＳ４１８参照）を受信するまで待機する（ステップＳ８０５：Ｎｏのループ）。大当たり終了コマンドを受信すると（ステップＳ８０５：Ｙｅｓ）、演出制御部２０２は、ランプ制御部２５１や音声制御部２５２に対して大当たり終了処理コマンドを送信して（ステップＳ８０６）、本フローチャートによる処理を終了する。
【０１４９】
つづいて、ランプ制御部２５１によるランプ制御処理について説明する。ここでは、演出制御部２０２から図柄変動コマンドを受信した場合（図柄変動時）の処理について説明する。図９は、ランプ制御部による図柄変動時のランプ制御処理の手順を示すフローチャートである。図９のフローチャートにおいて、ランプ制御部２５１は、まず、演出制御部２０２から演出開始コマンドを受信するまで待機する（ステップＳ９０１：Ｎｏのループ）。
【０１５０】
演出制御部２０２から演出開始コマンドを受信すると（ステップＳ９０１：Ｙｅｓ）、ランプ制御部２５１は、コマンド別に用意されているデータを読み出して（ステップＳ９０２）、コマンド別の選択ルーチンを実行し（ステップＳ９０３）、ランプデータをセットする（ステップＳ９０４）。そして、ランプ制御部２５１は、ランプ２６１に対してランプデータを出力する（ステップＳ９０５）。ランプ制御部２５１から出力されたランプデータに基づいて、ランプ２６１は点灯または消灯する。
【０１５１】
ランプ制御部２５１は、演出制御部２０２から演出停止コマンドを受信するまでは（ステップＳ９０６：Ｎｏ）、ステップＳ９０５に戻り、ランプデータの出力を継続する。演出停止コマンドを受信すると（ステップＳ９０６：Ｙｅｓ）、ランプ制御部２５１は、ランプデータの出力を停止して（ステップＳ９０７）、本フローチャートによる処理を終了する。
【０１５２】
なお、図９にはランプ制御部２５１の処理を記載したが、音声制御部２５２による音声制御も、図９の処理とほぼ同様である。音声制御部２５２による音声制御処理は、図９の処理において、ステップＳ９０４，Ｓ９０５，Ｓ９０７の「ランプデータ」を「音声データ」と読み替えればよい。
【０１５３】
このように、演出制御部２０２や賞球制御部２０３などの周辺部は、主制御部２０１によって出力された制御コマンドに基づいて各種の処理をおこなう。一方、たとえば、主制御部２０１と周辺部との間に不正な制御基板が接続された場合（図１５参照）などのように、制御コマンドの出力元が正規の主制御部２０１ではない場合、周辺部は不正な制御基板から出力された不正な制御コマンドによって不正な動作をおこなってしまう。
【０１５４】
この不正な動作を防止するため、本実施の形態にかかる電子機器では、たとえばぱちんこ遊技機において、主制御部２０１から出力される制御コマンドが所定の制御コマンドである場合、主制御部２０１と周辺部との間で認証処理をおこなう。所定の制御コマンドとは、具体的には、大当たりリーチコマンドや大当たり開始コマンド、大当たりコマンド、大当たり終了コマンド、客待ちデモコマンド、はずれコマンドなどである。具体的には、これらのうちの所定の種類の制御コマンド、または種類に関わらず電源オンコマンドから所定回数目の制御コマンドである。この認証処理によって、主制御部２０１が不正な制御基板に交換されたり、主制御部２０１と周辺基板との間に不正な制御基板が取り付けられたりするなどの不正を検知して、ぱちんこ遊技機への不正を防止することができる。
【０１５５】
一方、周辺部においては、主制御部２０１に対する認証処理をおこなう際に、周辺部に保持されている期待値によって、主制御部２０１から出力されたデータを照合し、このデータを用いて算出された値と、期待値とが一致する場合に、主制御部２０１を認証する。このとき、たとえばぱちんこ遊技機の仕様が変更されたり、賞球数や確率の変更があったりした場合に、主制御部２０１を他の主制御部２０１に変更すると、周辺部には変更前の主制御部２０１に応じた期待値が保持されているため、変更後の他の主制御部２０１を認証することができない。このため、変更後の他の主制御部２０１を、正規な制御基板であるにも関わらず不正な制御基板と認証してしまい、認証処理を誤ってしまう。
【０１５６】
この認証処理の誤りを防止するため、本実施の形態にかかる電子機器では、たとえばぱちんこ遊技機において、主制御部２０１から出力される制御コマンドが所定の制御コマンドである場合、主制御部２０１から周辺部へ、期待値の補正をおこなうための補正データを送信する。そして、周辺部においては、この補正データを用いて期待値の補正処理をおこなう。所定の制御コマンドとは、具体的には、周辺部にぱちんこ遊技機の電源投入時の処理を実行させる電源オンコマンドである。この補正処理によって、主制御部２０１が他の主制御部２０１に変更されても、周辺部を変更したり、期待値を変更したりせずに、変更後の他の主制御部２０１に応じた期待値に補正することができる。したがって、認証処理の誤りを防止し、たとえば主制御部２０１が変更されても、変更後の他の主制御部２０１を正規の制御基板であると認証することができる。
【０１５７】
また、補正値のみを送信し、期待値そのものは送信しないため、第三者に期待値が窃取されにくく、ぱちんこ遊技機への不正を防止することができる。さらに、電源オンコマンドは、すべての制御コマンドの最初に送信されるため、確実に認証処理の前に補正処理をおこなうことができる。
【０１５８】
（制御信号のデータフォーマット）
つづいて、主制御部２０１が周辺基板に出力する制御信号のデータフォーマットについて説明する。図１０は、主制御部が出力する制御信号のデータフォーマットを模式的に示す説明図である。図１０に示すように、主制御部２０１が出力する通常の制御信号１０１０には、制御コマンドデータ１００１および付随データ１００２が含まれている。制御コマンドデータ１００１は、たとえば大当たりリーチコマンドや大当たり開始コマンド、ラウンド別コマンドなどの各コマンド固有のデータである。また、付随データ１００２は、制御コマンドデータ１００１に付随するデータであり、たとえば、入賞した遊技球の数など制御コマンドデータ１００１に基づく処理に必要なデータである。
【０１５９】
一方、主制御部２０１は、制御信号内の制御コマンドデータ１００１が特定の種類のコマンドである場合、制御コマンドデータ１００１および付随データ１００２に加え、認証データ１００３または補正データ１００４、ダミー認証データ１００５を含んだ、認証データ付制御信号１０２０または補正データ付制御信号１０３０、ダミー認証データ付制御信号１０４０を周辺基板に出力する。具体的には、主制御部２０１は、制御コマンドデータ１００１が電源オンコマンドである場合に、補正データ１００４を含んだ制御信号を周辺基板に出力し、制御コマンドデータ１００１が所定の制御コマンドである場合に、認証データ１００３またはダミー認証データ１００５を含んだ制御信号を周辺基板に出力する。
【０１６０】
なお、認証データ１００３またはダミー認証データ１００５を含んだ制御信号を出力するのは、所定の種類の制御コマンドでもよいし、コマンドの種類に関わらず電源オンコマンドから所定回数目のコマンドでもよい。また、所定の制御コマンドの全てに認証データ１００３またはダミー認証データ１００５を付加してもよいし、所定の制御コマンドのうちのいずれかに認証データ１００３またはダミー認証データ１００５を付加してもよい。具体的には、たとえば、補正データ１００４の付加された電源オンコマンドによって電源が投入されてから、電源がオフされるまでの間に、少なくとも１つ以上の制御コマンドに認証データ１００３を付加すればよい。好適には、たとえば、大当たり状態などの不正がおこなわれる可能性の高い状態になる前の制御コマンドに認証データ１００３を付加すればよい。
【０１６１】
このように、認証データ１００３または補正データ１００４を制御信号に含めることによって、認証データ単体または補正データ単体で送信する場合と比較して、主制御部２０１と周辺部との間の通信負荷を減らすことができる。また、認証データ１００３または補正データ１００４を制御信号に含めることによって、認証データ１００３または補正データ１００４を単体で送信する場合と比較して、通信データ中から認証データまたは補正データが抽出され、解析されてしまう可能性を低減することができる。また、認証処理は、所定の制御コマンドを送信するときにのみおこなわれるため、全ての制御コマンドを送信するときに認証処理をおこなうのと比べると、認証処理による主制御基板や周辺基板の処理負荷を減らすことができる。
【０１６２】
認証データ１００３は、周辺部が保持している期待値と照合することで、制御コマンドデータ１００１および付随データ１００２が正規の主制御部２０１から出力されたものであることを、認証するためのデータである。認証データ１００３は、たとえば、主制御部２０１のＲＯＭ２１２に記録されたプログラムデータを元に生成された値である。より具体的には、認証データ１００３は、たとえば、ＲＯＭ２１２に記録されたプログラムデータの全てまたは一部に対して、ハッシュ関数による演算やパリティチェック、巡回冗長検査（Ｃｙｃｌｉｃ  Ｒｅｄｕｎｄａｎｃｙ  Ｃｈｅｃｋ：ＣＲＣ）、チェックサムなどの、誤り検出演算をおこなって得られた値（以下、「プログラムコード認証値」という）を、所定の暗号化方式で暗号化した値である。
【０１６３】
このように、認証データ１００３は、主制御部２０１のＲＯＭ２１２に記録されたプログラムデータを用いて生成される。このため、周辺部は、認証データ１００３を期待値と照合させることで認証をおこなうことによって、制御信号の出力元が正規の主制御部２０１であるか否かを判断することができる。また、主制御部２０１のＲＯＭ２１２に記録されたプログラムコードの不正な書き換えや、主制御部２０１のＲＯＭ２１２の不正な取り替えなどを検出することができる。
【０１６４】
なお、主制御部２０１は、それぞれの制御信号に対して異なる認証データ１００３を生成するものとする。具体的には、たとえば、認証データ１００３を生成するために用いるＲＯＭ２１２内のプログラムコードの範囲を異ならせたり、認証データ１００３を生成するための誤り検出演算を異ならせるようにする。また、認証データ１００３を生成するにあたって用いるデータは、プログラムコードに限らず、ＲＯＭ２１２に記録された任意のデータであってもよい。
【０１６５】
また、補正データ１００４は、周辺部において主制御部２０１から送信されたデータの照合に用いる期待値を補正するためのデータである。補正データ１００４は、たとえば主制御部２０１に固有の値を元に生成された値である。具体的には、補正データ１００４は、主制御部２０１が複数ある場合、それぞれの主制御部２０１を識別可能な値であり、たとえば、主制御部２０１が他の主制御部２０１に変更された場合、周辺部に保持された変更前の主制御部２０１に応じた期待値を、変更後の他の主制御部２０１に応じた期待値に補正するための値である。より具体的には、補正データ１００４は、主制御部２０１が他の主制御部２０１に変更された場合、変更される前の主制御部２０１に設定されていた固有の値と、変更された後の他の主制御部２０１に設定されている固有の値との差分である。なお、補正データ１００４は、たとえば、認証データ１００３と同様に、主制御部２０１のＲＯＭ２１２に記録されたプログラムデータを元に生成された値でもよい。
【０１６６】
また、認証データ１００３や補正データ１００４には、認証データ１００３や補正データ１００４とともに送信される制御コマンドデータ１００１や付随データ１００２に関するデータを含ませてもよい。制御コマンドデータ１００１や付随データ１００２に関するデータとは、制御コマンドデータ１００１や付随データ１００２そのものや、制御コマンドデータ１００１や付随データ１００２に対して上述したような誤り検出方式を用いた演算をおこなって得られた値などである。
【０１６７】
一般に、不正な制御基板は、正規の主制御部２０１と異なる制御コマンドを送信することによって、周辺部に不正な動作をおこなわせようとする。認証データ１００３や補正データ１００４とともに送信する制御コマンドデータ１００１や付随データ１００２を用いて認証データ１００３や補正データ１００４を生成すれば、不正な制御基板によって認証データ１００３や補正データ１００４が再利用された場合であっても、認証データ１００３や補正データ１００４と制御コマンドデータ１００１の整合がとれず、不正を検知することができる。
【０１６８】
認証データ１００３や補正データ１００４に制御コマンドデータ１００１や付随データ１００２に関するデータを含ませる場合、主制御部２０１は制御コマンドデータ１００１や付随データ１００２に関するデータとプログラムコード認証値とを合わせて暗号化して、認証データ１００３や補正データ１００４を生成する。
【０１６９】
ここで、通常の制御信号１０１０は、認証データ１００３や補正データ１００４が含まれていないため、認証データ付制御信号１０２０や補正データ付制御信号１０３０より、データサイズが小さくなる。このため、認証データ１００３や補正データ１００４の付加された制御信号が見破られやすくなり、これらのデータが窃取されやすくなる。
【０１７０】
このような問題を防ぐために、認証データ１００３や補正データ１００４を含まない通常の制御信号１０１０に、補正データ１００４や認証データ１００３と同程度のサイズのダミー認証データ１００５を付加し、ダミー認証データ付制御信号１０４０としてもよい。
【０１７１】
ここで、ダミー認証データ１００５は、認証データ１００３のダミーデータであり、周辺部において補正処理や認証処理に無効なデータである。すなわち、ダミー認証データ１００５は、周辺部が保持している期待値との照合をおこなわずに、制御コマンドデータ１００１および付随データ１００２が正規の主制御部２０１から出力されたものであることを、仮に認証するためのデータである。また、ダミー認証データ１００５は、周辺部が保持している期待値と照合をおこない、照合の結果が一致または不一致のいずれでも、制御コマンドデータ１００１および付随データ１００２が正規の主制御部２０１から出力されたものであることを、仮に認証するためのデータである。ダミー認証データ１００５は、たとえば認証データ１００３と同様の値によって生成されてもよい。また、ダミー認証データ１００５は、他の（別種類の）認証処理に用いる認証データであってもよい。他の認証処理とは、たとえば期待値の補正処理が必要のない認証処理である。
【０１７２】
なお、制御コマンドデータ１００１と、付随データ１００２と、認証データ１００３または補正データ１００４、ダミー認証データ１００５と、の並び方は、図１０に示す順番に限らず、たとえば認証データ１００３または補正データ１００４、ダミー認証データ１００５を制御信号の先頭にしたり、制御コマンドデータ１００１と付随データ１００２との間に認証データ１００３または補正データ１００４、ダミー認証データ１００５を挿入してもよい。また、制御コマンドデータ１００１および付随データ１００２とは別個に認証データ１００３または補正データ１００４、ダミー認証データ１００５を出力することとしてもよい。たとえば、電源オンコマンドデータを含む制御信号を送信した後、３回目の制御信号送信時に補正データ１００４を付加し、所定の制御コマンドデータを含む制御信号を送信した後、３回目の制御信号送信時にダミー認証データ１００５を付加して、５回目の制御信号送信時に認証データ１００３を付加する、などとしてもよい。
【０１７３】
また、ダミー認証データ１００５は、認証データ１００３を含まない通常の制御信号１０１０の全てに付加しても良いし、所定の制御コマンドデータを含む制御信号のうちの、認証データ１００３を含まない通常の制御信号１０１０にダミー認証データ１００５を付加してもよい。このようにすることで、通常の制御信号１０１０のデータサイズを、認証データ付制御信号１０２０や補正データ付制御信号１０３０と同程度とすることができる。このため、第三者に、データサイズの違いによって認証データ１００３や補正データ１００４が付加されている制御信号を見破られることを防ぐことができる。
【０１７４】
なお、制御コマンドデータ１００１、付随データ１００２、認証データ１００３または補正データ１００４の並び方は、図１０に示す順番に限らず、たとえば認証データ１００３または補正データ１００４を制御信号の先頭にしたり、制御コマンドデータ１００１と付随データ１００２との間に認証データ１００３または補正データ１００４を挿入したりしてもよい。また、制御コマンドデータ１００１および付随データ１００２とは別個に補正データ１００４や認証データ１００３を出力することとしてもよい。たとえば、電源オンコマンドデータを含む制御信号を送信した後、３回目の制御信号送信時に補正データ１００４を付加し、所定の制御コマンドデータを含む制御信号を送信した後、５回目の制御信号送信時に認証データ１００３を付加する、などとしてもよい。
【０１７５】
さらに、認証データ１００３や補正データ１００４を含まない通常の制御信号１０１０に、補正データ１００４や認証データ１００３と同程度のサイズのダミーデータ（不図示）を付加してもよい。ここで、ダミーデータは、補正処理や認証処理に用いないデータである。このようにすることで、通常の制御信号１０１０のデータサイズを、認証データ付制御信号１０２０や補正データ付制御信号１０３０と同程度とすることができる。このため、第三者にデータサイズの違いによって認証データ１００３や補正データ１００４が付加されている制御信号を見破られることを防ぐことができる。
【０１７６】
（制御信号の送受信処理）
つづいて、図１１、図１２を用いて、主制御部２０１と周辺部との間でおこなう制御信号の送受信処理について説明する。以下、主制御部２０１と演出制御部２０２との間の制御信号の送受信処理について説明するが、主制御部２０１と賞球制御部２０３との間の制御信号の送受信処理も同様の手順でおこなわれる。
【０１７７】
図１１は、主制御部による制御信号の送信処理の手順を示すフローチャートである。図１１のフローチャートにおいて、主制御部２０１は、まず、主制御部２０１の電源がオンにされるまで待機する（ステップＳ１１０１：Ｎｏのループ）。主制御部２０１の電源がオンにされた場合（ステップＳ１１０１：Ｙｅｓ）、補正データを生成する（ステップＳ１１０２）。そして、制御コマンドの送信タイミングとなるまで待機する（ステップＳ１１０３：Ｎｏのループ）。制御コマンドの送信タイミングとなった場合（ステップＳ１１０３：Ｙｅｓ）、主制御部２０１は、今回送信する制御コマンドが電源オンコマンドか否かを判断する（ステップＳ１１０４）。
【０１７８】
今回送信する制御コマンドが電源オンコマンドである場合（ステップＳ１１０４：Ｙｅｓ）、主制御部２０１は、制御コマンドデータ１００１（電源オンコマンドデータ）および付随データ１００２をセットする（ステップＳ１１０５）。つぎに、主制御部２０１は、ステップＳ１１０２，Ｓ１１０５で生成した制御コマンドデータ１００１、付随データ１００２、補正データ１００４からなる制御信号（補正データ付制御信号１０３０）を演出制御部２０２に送信する（ステップＳ１１０６）。そして、主制御部２０１の電源がオフにされたか否かを判断して（ステップＳ１１０７）、主制御部２０１の電源がオフにされない場合（ステップＳ１１０７：Ｎｏ）、ステップＳ１１０３に戻り、次の制御コマンドの送信タイミングまで待機して、以降の処理を繰り返しおこなう。
【０１７９】
一方、ステップＳ１１０４において、電源オンコマンド以外のコマンドである場合（ステップＳ１１０４：Ｎｏ）、今回送信する制御コマンドが所定の制御コマンドか否かを判断する（ステップＳ１１０８）。今回送信する制御コマンドが所定の制御コマンドである場合（ステップＳ１１０８：Ｙｅｓ）、主制御部２０１は、認証処理のタイミングか否かを判断する（ステップＳ１１０９）。ステップＳ１１０９において、認証処理のタイミングでない場合（ステップＳ１１０９：Ｎｏ）、制御コマンドデータ１００１（所定の制御コマンドデータ）および付随データ１００２をセットする（ステップＳ１１１０）。また、主制御部２０１は、ダミー認証データ１００５を生成する（ステップＳ１１１１）。このとき、ステップＳ１１１０とステップＳ１１１１の順序を入れ替えてもよい。つぎに、主制御部２０１は、ステップＳ１１１０，Ｓ１１１１で生成した制御コマンドデータ１００１、付随データ１００２、ダミー認証データ１００５からなる制御信号（ダミー認証データ付制御信号１０４０）を演出制御部２０２に送信する（ステップＳ１１１２）。そして、ステップＳ１１０７に進み、主制御部２０１の電源がオフにされない場合、ステップＳ１１０３に戻り、次の制御コマンドの送信タイミングまで待機して、以降の処理を繰り返しおこなう。
【０１８０】
一方、ステップＳ１１０９において認証処理のタイミングである場合（ステップＳ１１０９：Ｙｅｓ）、主制御部２０１は、制御コマンドデータ１００１（所定の制御コマンド）および付随データ１００２をセットする（ステップＳ１１１３）。また、主制御部２０１は、認証データ１００３を生成する（ステップＳ１１１４）。このとき、ステップＳ１１１３とステップＳ１１１４の順序を入れ替えてもよい。つぎに、主制御部２０１は、ステップＳ１１１３，Ｓ１１１４で生成した制御コマンドデータ１００１、付随データ１００２、認証データ１００３からなる制御信号（認証データ付制御信号１０２０）を演出制御部２０２に送信する（ステップＳ１１１５）。そして、ステップＳ１１０７に進み、主制御部２０１の電源がオフにされない場合、ステップＳ１１０３に戻り、次の制御コマンドの送信タイミングまで待機して、以降の処理を繰り返しおこなう。
【０１８１】
また、ステップＳ１１０８において今回送信する制御コマンドが所定の制御コマンド以外のコマンドである場合（ステップＳ１１０８：Ｎｏ）、主制御部２０１は、制御コマンドデータ１００１（電源オンコマンドおよび所定の制御コマンド以外のコマンド）および付随データ１００２をセットする（ステップＳ１１１６）。つぎに、ステップＳ１１１６でセットした制御コマンドデータ１００１および付随データ１００２からなる制御信号（通常の制御信号１０１０）を演出制御部２０２に送信する（ステップＳ１１１７）。そして、ステップＳ１１０７に進み、電源がオフにされない場合、ステップＳ１１０３に戻り、次の制御コマンドの送信タイミングまで待機して、以降の処理を繰り返しおこなう。また、ステップＳ１１０７において電源がオフにされた場合（ステップＳ１１０７：Ｙｅｓ）、本フローチャートによる処理を終了する。
【０１８２】
なお、図１１のフローチャートにおいては、ステップＳ１１０２において補正データを生成するとしているが、これに限らず、ステップＳ１１０６において補正データ付制御信号１０３０を送信する前に補正データ１００４を生成してもよい。具体的には、たとえば補正データ１００４をプログラムコードや制御コマンドを用いて生成する場合、ステップＳ１１０４：Ｙｅｓにおいて電源オンコマンドであると判断された後で、ステップＳ１１０５において制御コマンドデータ１００１および付随データ１００２をセットする前に、補正データ１００４を生成してもよい。また、ステップＳ１１０５において制御コマンドデータ１００１および付随データ１００２をセットした後で、ステップＳ１１０６において補正データ付制御信号１０３０を送信する前に、補正データ１００４を生成してもよい。
【０１８３】
また、図１１のフローチャートにおいては、ステップＳ１１０９：Ｎｏにおいて認証処理のタイミング１１０９ではない場合、ステップＳ１１１０〜ステップＳ１１１２の処理をおこなってダミー認証データ付制御信号１０４０を送信するとしているが、これに限るものではない。たとえば、ステップＳ１１０５，ステップＳ１１０６の処理をおこなって、再度補正データ付制御信号１０３０を送信する構成でもよいし、ステップＳ１１１６，ステップＳ１１１７の処理をおこなって通常の制御信号１０１０を送信する構成でもよい。すなわち、好適には、ステップＳ１１０６において補正データ付制御信号１０３０を送信してから、電源がオフされるまでの間に、少なくとも１回以上、認証データ付制御信号１０２０を送信すればよい。さらに好適には、たとえば、大当たり状態などの不正がおこなわれる可能性の高い状態になる前の所定の制御コマンドに認証データ１００３を付加すればよい。
【０１８４】
また、図１１のフローチャートにおいては、ステップＳ１１０８：Ｎｏにおいて所定の制御コマンドではない場合、ステップＳ１１１６，ステップＳ１１１７の処理をおこなって、通常の制御信号１０１０を送信するとしているが、これに限るものではない。たとえば、ステップＳ１１１６，ステップＳ１１１７の処理をおこなって、再度補正データ付制御信号１０３０を送信する構成でもよい。また、ステップＳ１１１０〜ステップＳ１１１２の処理をおこなってダミー認証データ１００５そを送信してもよいし、ステップＳ１１１３〜ステップＳ１１１５の処理をおこなって認証データ付制御信号１０２０を送信してもよい。
【０１８５】
このように、主制御部２０１は、周辺基板に電源オンコマンドを送信する際にのみ、制御コマンドデータ１００１に補正データ１００４を付加する。電源オンコマンドは、ぱちんこ遊技機の電源の投入時やリセット時など、ぱちんこ遊技機の初期化処理をおこなう際に送信される。初期化処理は、ぱちんこ遊技機のメインの処理である遊技（ゲーム進行）関連処理とは異なる処理区分に分類される。初期化処理中に補正処理を組み込めば、遊技関連処理中に補正処理を組み込む場合と比較して、プログラム設計やテストにかかる工程（工数）を低減することができる。すなわち、初期化処理中に補正処理を組み込むことによって、開発コストの低減や品質管理上のメリットを得ることができる。
【０１８６】
また、電源オンコマンドは、電源投入後の他の全ての制御コマンドの最初に送信される。したがって、たとえば電源がオフされている間に、主制御部２０１を他の主制御部２０１に変更した場合、確実に認証処理より前に補正処理をおこなうことができる。このため、補正処理の前に認証処理がおこなわれ、変更後の他の主制御部２０１を誤って不正な主制御部２０１であると判断することを防ぎ、正確な認証処理をおこなうことができる。
【０１８７】
また、電源投入後の最初に補正処理がおこなわれるため、認証処理のタイミングを設計者の所望のタイミングでおこなうことができる。したがって、機種毎に最も好適なタイミングで認証処理をおこなわせることができるため、認証処理の強度を上げることができる。
【０１８８】
さらに、補正処理や認証処理のタイミングではない場合でも、制御信号に補正データ１００４または認証データ１００３と同程度のサイズのダミー認証データ１００５を付加することができる。これによって、補正データ１００４や認証データ１００３の付加された制御信号が、いつ送信されたのかを第三者に見破られることを防ぐことができるので、より補正データ１００４または認証データ１００３が抽出される可能性を低減することができる。
【０１８９】
つぎに、演出制御部２０２による制御信号の受信処理について説明する。図１２は、演出制御部２０２による制御信号の受信処理の手順を示すフローチャートである。図１２のフローチャートにおいて、演出制御部２０２は、まず、主制御部２０１から制御信号を受信するまで待機する（ステップＳ１２０１：Ｎｏのループ）。主制御部２０１から制御信号を受信すると（ステップＳ１２０１：Ｙｅｓ）、演出制御部２０２は、受信した制御信号に補正データ１００４が含まれているか否かを判断する（ステップＳ１２０２）。制御信号に補正データ１００４が含まれているか否かの判断は、たとえば、データ量が通常の制御信号よりも多い制御信号のうちの、周辺部の電源が投入されてからｎ番目の制御信号か否かを判断したり、補正データ１００４が含まれていることを示すフラグが制御信号に立てられているか否かを判断することによっておこなう。
【０１９０】
ステップＳ１２０２において、制御信号に補正データ１００４が含まれている場合（ステップＳ１２０２：Ｙｅｓ）、演出制御部２０２は、制御信号から補正データ１００４を抽出し、この補正データ１００４を用いて演出制御部２０２に保持されている期待値を補正する（ステップＳ１２０３）。
【０１９１】
また、ステップＳ１２０２において、演出制御部２０２は、受信した制御信号に補正データ１００４が含まれているか否かではなく、制御信号に含まれる制御コマンドデータ１００１が電源オンコマンドのデータであるか否かを判断してもよい。この場合、演出制御部２０２は、制御信号に含まれる制御コマンドデータ１００１が電源オンコマンドのデータである場合に、制御信号から補正データ１００４を抽出し、ステップＳ１２０３に進む。
【０１９２】
つぎに、制御信号に含まれている制御コマンドデータ１００１および付随データ１００２に基づく処理をおこなって（ステップＳ１２０４）、ステップＳ１２０１に戻り、次の制御信号を受信するまで待機し、以降の処理を繰り返しおこなう。
【０１９３】
一方、ステップＳ１２０２において、制御信号に補正データ１００４が含まれていない場合（ステップＳ１２０２：Ｎｏ）、演出制御部２０２は、ステップＳ１２０１において受信した制御信号に、認証データ１００３やダミー認証データ１００５などの認証に関するデータが含まれているか否かを判断する（ステップＳ１２０５）。制御信号に認証に関するデータが含まれているか否かの判断は、たとえば、制御信号のデータ量が通常の制御信号よりも多いか否かを判断することによっておこなう。
【０１９４】
また、ステップＳ１２０５において、演出制御部２０２は、受信した制御信号に認証に関するデータが含まれているか否かではなく、制御信号に含まれる制御コマンドデータ１００１が所定の制御コマンドのデータであるか否かを判断してもよい。この場合、演出制御部２０２は、制御信号に含まれる制御コマンドデータ１００１が所定の制御コマンドのデータである場合に、制御信号に認証に関するデータが含まれていると判断し、ステップＳ１２０６に進む。また、ステップＳ１２０５において、演出制御部２０２は、たとえば電源が投入（または、リセット）されてから、所定回数目の所定の制御コマンドのデータであるか否かを判断してもよい。この場合、演出制御部２０２は、電源が投入（または、リセット）されてから、所定回数目の所定の制御コマンドのデータである場合に、制御信号に認証に関するデータが含まれていると判断してもよい。
【０１９５】
制御信号に認証に関するデータが含まれている場合（ステップＳ１２０５：Ｙｅｓ）、演出制御部２０２は、認証に関するデータがダミー認証データ１００５か否かを判断する（ステップＳ１２０６）。認証に関するデータがダミー認証データ１００５か否かの判断は、たとえば、制御信号のデータ量が通常の制御信号よりも多い制御信号のうちの、周辺部の電源が投入されてから所定回数目の制御信号か否かを判断したり、ダミー認証データ１００５が含まれていることを示すフラグが制御信号に立てられているか否かを判断したりすることによっておこなう。
【０１９６】
また、ステップＳ１２０６において、演出制御部２０２は、認証に関するデータがダミー認証データ１００５か否かではなく、制御信号に含まれる制御コマンドデータ１００１が所定の制御コマンドのデータであるか否かを判断してもよい。この場合、演出制御部２０２は、制御信号に含まれる制御コマンドデータ１００１が所定の制御コマンドのデータ以外である場合に、ダミー認証データ１００５であると判断し、所定の制御コマンドのデータである場合に、認証データ１００３であると判断してもよい。また、ステップＳ１２０６において、演出制御部２０２は、たとえば電源が投入（または、リセット）されてから、ｎ回目の所定の制御コマンドのデータであるか否かを判断してもよい。この場合、演出制御部２０２は、電源が投入（または、リセット）されてから、ｎ回目の所定の制御コマンドのデータである場合に、認証に関するデータをダミー認証データ１００５であると判断する。また、認証データとダミー認証データを付加する制御コマンドの種類が異なる場合、それぞれの種類の制御コマンドを受信した場合に、対応するデータが付加していると判断してもよい。
【０１９７】
ステップＳ１２０６において認証に関するデータがダミー認証データ１００５であると判断された場合（ステップＳ１２０６：Ｙｅｓ）、期待値との照合をおこなわず、ステップＳ１２０４に進み、制御信号に含まれている制御コマンドデータ１００１および付随データ１００２に基づく処理をおこなう。
【０１９８】
一方、ステップＳ１２０６において認証に関するデータが認証データ１００３であると判断された場合（ステップＳ１２０６：Ｎｏ）、演出制御部２０２は、制御信号から認証データ１００３を抽出し、ステップＳ１２０３において補正された期待値を取得して（ステップＳ１２０７）、制御信号に含まれている認証データ１００３と期待値とが一致するか否かを判断する（ステップＳ１２０８）。このとき、演出制御部２０２は、認証データ１００３と期待値とが一致するか否かではなく、認証データ１００３と期待値とが所定の関係にあるか否かを判断してもよい。所定の関係とは、たとえば、認証データ１００３に所定の演算をおこなって得た値が期待値と一致する、などの関係である。
【０１９９】
認証データと期待値とが一致する場合（ステップＳ１２０８：Ｙｅｓ）、演出制御部２０２は、制御信号を送信した主制御部２０１の正当性を認証し、ステップＳ１２０４に進み、制御信号に含まれている制御コマンドデータ１００１および付随データ１００２に基づく処理をおこなう。一方、認証データと期待値とが一致しない場合（ステップＳ１２０８：Ｎｏ）、演出制御部２０２は、制御信号を送信した主制御部２０１の正当性を認証せず、制御コマンドデータ１００１および付随データ１００２を破棄するとともに、報知信号出力部３３５（図３参照）から報知信号を出力して（ステップＳ１２０９）、本フローチャートによる処理を終了する。なお、ステップＳ１２０８では、データの破棄と報知のいずれかのみをおこなうこととしてもよい。
【０２００】
また、ステップＳ１２０５において、制御信号に認証に関するデータが含まれていない場合（ステップＳ１２０５：Ｎｏ）、すなわち制御信号が通常の制御信号１０１０の場合、演出制御部２０２は、期待値との照合をおこなわず、そのままステップＳ１２０４に進み、制御コマンドデータ１００１および付随データ１００２に基づく処理をおこなってもよい。
【０２０１】
なお、図１２のフローチャートにおいては、演出制御部２０２があらかじめ期待値を保持せず、期待値が他の構成部から送信される場合、ステップＳ１２０３においては期待値を補正せず、補正データ１００４を抽出して記録部などに記録しておく。そして、ステップＳ１２０７において期待値を他の構成部から取得した後に、記録された補正データ１００４を用いて期待値を補正し、ステップＳ１２０８に進み、補正された期待値が認証データ１００３と一致するか否かを判断してもよい。
【０２０２】
また、図１２のフローチャートにおいては、ステップＳ１２０６において認証に関するデータがダミー認証データ１００５であるか否かを判断するとしているが、これに限るものではない。たとえばステップＳ１２０５：Ｙｅｓにおいて認証に関するデータが含まれていると判断された場合、ステップＳ１２０７およびステップＳ１２０８の処理をおこなってもよい。そして、認証に関するデータがダミー認証データ１００５の場合は、ステップＳ１２０８においてダミー認証データ１００５と期待値とが一致してもしなくても、ステップＳ１２０４に進む構成としてもよい。
【０２０３】
このようにすることで、演出制御部２０２が認証データ１００３またはダミー認証データ１００５のいずれを受信した場合でも、演出制御部２０２における処理量や処理時間を変わらなくすることができる。これによって、正規な認証処理に用いる認証データ１００３をいつ受信したのかを第三者に見破られることを防ぎ、認証データ１００３が窃取されることを防ぐことができる。
【０２０４】
（制御部間の制御信号の流れの一例）
つぎに、主制御部２０１と周辺部との間の制御信号の流れを、図１３のシーケンス図を用いて説明する。ここで、周辺部は、たとえば演出制御部２０２や賞球制御部２０３（図２）である。図１３は、制御部間の制御信号の流れの一例を示すシーケンス図である。図１３において、点線Ａに囲まれた部分が１回分の補正処理のステップであり、点線Ｂに囲まれた部分が１回分のダミー認証処理のステップであり、点線Ｃに囲まれた部分が１回分の認証処理のステップである。ダミー認証処理は、周辺部において、期待値との照合を行わず、仮に認証を成立させる認証処理である。なお、図１３のシーケンス図においては、補正処理および認証処理を明確にするため、電源オンコマンドおよび所定の制御コマンド以外のコマンドの際の制御信号の流れを省略して記載している。
【０２０５】
図１３に示すように、まず、主制御部２０１は、補正値Ｍを生成する（ステップＳ１３０１）。補正値Ｍは、主制御部２０１の照合用の期待値を補正する値であり、補正データ１００４の元となる値である。補正値Ｍは、好適には、実際の補正値とソルト値との演算結果値がよい。
【０２０６】
そして、制御コマンドデータ１００１が電源オンコマンドである場合、主制御部２０１は、制御コマンドデータ１００１（電源オンコマンドデータ）および付随データ１００２をセットする（ステップＳ１３０２）。また、主制御部２０１は、補正データ１００４（Ｖｍ）を生成する（ステップＳ１３０３）。ステップＳ１３０３においては、たとえば下記（１）式によって補正データ１００４（Ｖｍ）を生成する。ここで、Ｆ１は、電源がオンされた際に、ステップＳ１３０２においてセットされた電源オンコマンドデータおよび付随データ１００２をあらわす。また、Ｅｃ（Ａ，Ｂ）は、暗号化演算式をあらわす。なお、暗号化演算による暗号化処理を、２回以上おこなってもよい。
【０２０７】
Ｖｍ＝Ｅｃ（Ｍ，Ｆ１）  ・・・（１）
【０２０８】
ここで、具体的には、たとえばＭ＝０ｘ３５、Ｆ１＝０ｘ２２であり、Ｅｃ（Ａ，Ｂ）が、Ａ  ｘｏｒ  Ｂ（排他的論理和）の場合、Ｖｍは下記（２）式によって、０ｘ１７となる。
【０２０９】
Ｖｍ＝Ｅｃ（０ｘ３５，０ｘ２２）
＝０ｘ３５  ｘｏｒ  ０ｘ２２
＝０ｘ１７                    ・・・（２）
【０２１０】
つぎに、主制御部２０１は、制御コマンドデータ１００１、付随データ１００２、補正データ１００４を含む補正データ付制御信号１０３０（Ｆ１，Ｖｍ）を周辺部に送信する（ステップＳ１３０４）。なお、ステップＳ１３０４においては、電源オン時に付随データ１００２がセットされた制御コマンドデータ１００１（Ｆ１）と、補正データ１００４（Ｖｍ）とを、別々に周辺部に送信してもよい。また、この場合、送信順序は、順不同でよい。
【０２１１】
演出制御部２０２は、ステップＳ１３０４で送信された補正データ付制御信号（Ｆ１，Ｖｍ）を受信する（ステップＳ１３０５）。つぎに、演出制御部２０２は、補正データ１００４（Ｖｍ）を復元する（ステップＳ１３０６）。ステップＳ１３０６においては、下記（３）式によって補正データ１００４（Ｖｍ）を復元し、補正値Ｍを取得する。ここで、Ｄｃ（Ａ，Ｂ）は、復号化演算式をあらわす。
【０２１２】
Ｍ＝Ｄｃ（Ｖｍ，Ｆ１）  ・・・（３）
【０２１３】
ここで、具体的には、たとえばＶｍ＝０ｘ１７、Ｆ１＝０ｘ２２であり、Ｄｃ（Ａ，Ｂ）が、Ａ  ｘｏｒ  Ｂの場合、Ｍは下記（４）式によって、０ｘ３５となる。
【０２１４】
Ｍ＝Ｄｃ（０ｘ１７，０ｘ２２）
＝０ｘ１７  ｘｏｒ  ０ｘ２２
＝０ｘ３５                    ・・・（４）
【０２１５】
つぎに、ステップＳ１３０６において取得された補正値Ｍを用いて期待値補正処理をおこなう（ステップＳ１３０７）。なお、たとえば周辺部にあらかじめ期待値が保持されていない場合、ステップＳ１３０７において、周辺部は、他の制御部から期待値を取得し、取得された期待値に期待値補正処理をおこなう。そして、周辺部は、制御コマンドデータ１００１および付随データ１００２に基づく処理をおこなう（ステップＳ１３０８）。
【０２１６】
なお、具体的には、ステップＳ１３０７において、あらかじめ保持されていた期待値（旧期待値）が、０ｘＡＣの場合、補正処理によって補正された期待値（新期待値）は、下記（５）式によって０ｘ７７となる。そして、周辺部は、この０ｘ７７を主制御部２０１の照合用の期待値として保持する。
【０２１７】
０ｘＡＣ（旧期待値）−０ｘ３５（補正値）＝０ｘ７７（新期待値）  ・・・（５）
【０２１８】
つぎに、制御コマンドデータ１００１が周辺部の電源が投入されてからｘ番目の所定の制御コマンドの場合、主制御部２０１は、制御コマンドデータ１００１（所定の制御コマンドデータ）および付随データ１００２をセットする（ステップＳ１３１１）。また、主制御部２０１は、誤り検査値Ｃｂ’を生成する（ステップＳ１３１２）。ここで、誤り検査値Ｃｂ’は、主制御部２０１の備える記録部などに記録された所定のプログラムコードなどから生成した誤り検出可能な数値である。誤り検査値Ｃｂ’は、好適には、実際の誤り検査値とソルト値との演算結果値がよい。また、ｂ’は、ダミー認証処理の処理順序をあらわし、たとえば周辺部の電源がオンされてから１回目のダミー認証処理の場合、ｂ’＝１となる。
【０２１９】
さらに、主制御部２０１は、認証データ１００３（Ｖｃｂ’）を生成する（ステップＳ１３１３）。ステップＳ１３１３においては、たとえば下記（６）式によって認証データ１００３（Ｖｃｂ’）を生成する。なお、ステップＳ１３１３において、暗号化演算をおこなう方式は、１種類でもよいし、２種類以上でもよい。暗号化方式が２種類以上の場合、ステップＳ１３１３においては、複数の暗号化方式の中から１種類の暗号化方式を選択し、選択した暗号化方式によって暗号化演算をおこなう。また、暗号化演算による暗号化処理を、２回以上おこなってもよい。ｘは、所定の制御コマンドの処理順序をあらわし、Ｆｘは、たとえば主制御部２０１の電源がオンされてからｘ番目の所定の制御コマンドの際に、ステップＳ１３１２においてセットされた制御コマンドデータ１００１および付随データ１００２をあらわす。
【０２２０】
Ｖｃｂ’＝Ｅｃ（Ｃｂ’，Ｆｘ）  ・・・（６）
【０２２１】
つぎに、主制御部２０１は、制御コマンドデータ１００１、付随データ１００２、認証データ１００３を含む認証データ付制御信号１０２０（Ｆｘ，Ｖｃｂ’）を周辺部に送信する（ステップＳ１３１４）。なお、ステップＳ１３１４においては、周辺部に電源が投入されてからｘ番目に付随データ１００２がセットされた制御コマンドデータ１００１（Ｆｘ）と、認証データ１００３（Ｖｃｂ’）とを、別々に周辺部に送信してもよい。また、この場合、送信順序は、順不同でよい。
【０２２２】
周辺部は、ステップＳ１３１４で送信された認証データ付制御信号（Ｆｘ，Ｖｃｂ’）を受信する（ステップＳ１３１５）。そして、期待値との照合を行わずに、主制御部２０１を認証し、制御コマンドデータ１００１および付随データ１００２に基づく処理をおこなう（ステップＳ１３１６）。
【０２２３】
つぎに、制御コマンドデータ１００１が周辺部の電源が投入されてからｙ番目（ｘ≠ｙ）の所定の制御コマンドの場合、主制御部２０１は、制御コマンドデータ１００１（所定の制御コマンドデータ）および付随データ１００２をセットする（ステップＳ１３２１）。また、主制御部２０１は、誤り検査値Ｃｂを生成する（ステップＳ１３２２）。ここで、誤り検査値Ｃｂは、主制御部２０１の備える記録部などに記録された所定のプログラムコードなどから生成した誤り検出可能な数値である。誤り検査値Ｃｂは、好適には、実際の誤り検査値とソルト値との演算結果値がよい。また、ｂは、認証処理の処理順序をあらわし、たとえば電源がオンされてから１回目の認証処理の場合、ｂ＝１となる。
【０２２４】
さらに、主制御部２０１は、認証データ１００３（Ｖｃｂ）を生成する（ステップＳ１３２３）。ステップＳ１３２３においては、たとえば下記（７）式によって認証データ１００３（Ｖｃｂ）を生成する。ここで、ｙは、所定の制御コマンドによっておこなわれる所定の制御の処理順序をあらわし、たとえば主制御部２０１の電源がオンされてから１番目の所定の制御の場合、ｙ＝１となる。Ｆｙは、たとえば主制御部２０１の電源がオンされてからｙ番目の所定の制御の際に、ステップＳ１３２１においてセットされた制御コマンドデータ１００１および付随データ１００２をあらわす。なお、ステップＳ１３２３において、暗号化演算をおこなう方式は、１種類でもよいし、２種類以上でもよい。暗号化方式が２種類以上の場合、ステップＳ１３２３においては、複数の暗号化方式の中から１種類の暗号化方式を選択し、選択した暗号化方式によって暗号化演算をおこなう。また、暗号化演算による暗号化処理を、２回以上おこなってもよい。
【０２２５】
Ｖｃｂ＝Ｅｃ（Ｃｂ，Ｆｙ）  ・・・（７）
【０２２６】
ここで、具体的には、たとえばＣｂ＝０ｘ７７、Ｆｙ＝０ｘ２２であり、Ｅｃ（Ａ，Ｂ）が、Ａ  ｘｏｒ  Ｂの場合、Ｖｃｂは下記（８）式によって、０ｘ５５となる。
【０２２７】
Ｖｃｂ＝Ｅｃ（０ｘ７７，０ｘ２２）
＝０ｘ７７  ｘｏｒ  ０ｘ２２
＝０ｘ５５                    ・・・（８）
【０２２８】
つぎに、主制御部２０１は、制御コマンドデータ１００１、付随データ１００２、認証データ１００３を含む認証データ付制御信号１０２０（Ｆｙ，Ｖｃｂ）を周辺部に送信する（ステップＳ１３２４）。なお、ステップＳ１３２４においては、所定の制御のｙ番目に付随データ１００２がセットされた制御コマンドデータ１００１（Ｆｙ）と、認証データ１００３（Ｖｃｂ）とを、別々に周辺部に送信してもよい。また、この場合、送信順序は、順不同でよい。
【０２２９】
周辺部は、ステップＳ１３２４で送信された認証データ付制御信号（Ｆｙ，Ｖｃｂ）を受信する（ステップＳ１３２５）。つぎに、演出制御部２０２は、認証データ１００３（Ｖｃｂ）を復元する（ステップＳ１３２６）。ステップＳ１３２６においては、下記（９）式によって認証データ１００３（Ｖｃｂ）を復元し、誤り検査値Ｃｂを取得する。なお、ステップＳ１３２６においては、ステップＳ１３２２において複数の暗号化方式の中から１種類の暗号化方式が選択されて暗号化処理された場合、複数の復号化方式によって復号化する。
【０２３０】
Ｃｂ＝Ｄｃ（Ｖｃｂ，Ｆｙ）  ・・・（９）
【０２３１】
ここで、具体的には、たとえばＶｃｂ＝０ｘ５５、Ｆｙ＝０ｘ２２であり、Ｄｃ（Ａ，Ｂ）が、Ａ  ｘｏｒ  Ｂの場合、誤り検査値Ｃｂは下記（１０）式によって、０ｘ７７となる。
【０２３２】
Ｃｂ＝Ｄｃ（０ｘ５５，０ｘ２２）
＝０ｘ５５  ｘｏｒ  ０ｘ２２
＝０ｘ７７                    ・・・（１０）
【０２３３】
つぎに、ステップＳ１３０７において補正された期待値（新期待値）と、ステップＳ１３２６において取得された誤り検査値Ｃｂと、を用いて認証処理をおこなう（ステップＳ１３２７）。ステップＳ１３２７においては、たとえば期待値と誤り検査値Ｃｂとが一致する場合に、主制御部２０１を認証する。なお、ステップＳ１３２７においては、ステップＳ１３２６において複数の復号化方式によって復号化され、取得された誤り検査値Ｃｂのいずれかが期待値と一致する場合に、主制御部２０１を認証してもよい。
【０２３４】
ここで、具体的には、新期待値は、上述の（５）式によって算出されたように０ｘ７７であり、誤り検査値Ｃｂは、上述の（１０）式によって算出されたように０ｘ７７である。したがって、新期待値と誤り検査値Ｃｂとが一致するため、この場合、認証が成立することとなる。
【０２３５】
ステップＳ１３２７において、認証が成立した場合、周辺部は制御コマンドデータ１００１および付随データ１００２に基づく処理をおこなう（ステップＳ１３２８）。なお、ステップＳ１３２７において、認証が成立しなかった場合は、制御コマンドデータ１００１および付随データ１００２を破棄する（図１２のステップＳ１２０８参照）。
【０２３６】
なお、図１３のシーケンス図においては、一例として電源オンコマンドのときに補正データ付制御信号１０３０を送信し、ｘ番目の所定の制御コマンドのときにダミー認証データ付制御信号１０４０を送信し、ｙ番目の所定の制御コマンドのときに認証データ付制御信号１０２０を送信することとしているが、これに限るものではない。具体的には、たとえば補正データ付制御信号１０３０を送信した後には、ダミー認証データ付制御信号１０４０や認証データ付制御信号１０２０や通常の制御信号１０１０を送信してもよい。また、再度補正データ付制御信号１０３０を送信してもよい。すなわち、図１３のシーケンス図においては、補正処理の後に、少なくとも１回の認証処理がおこなわれていればよい。したがって、図１３に示す認証処理の後には、主制御部２０１は、補正データ付制御信号１０３０を送信してもよいし、認証データ付制御信号１０２０を送信してもよいし、ダミー認証データ付制御信号１０４０を送信してもよい。また、補正データ１００４または認証データ１００３、ダミー認証データ１００５の付加されていない通常の制御信号１０１０を送信してもよい。
【０２３７】
また、図１３のシーケンス図において、周辺部は、ステップＳ１３０７において期待値補正をおこなった後に、補正後の期待値（最終期待値）そのものを固定値として保持しなくてもよい。この場合、たとえば製造時から、補正データ１００４による補正処理（Ａ）をおこなわないと、ダミー認証処理（Ｂ）においては認証が成立となり、認証処理（Ｃ）においては認証が不成立となるように設計する。このようにすることで、最終期待値を知り得る者を限定することができ、期待値に関する情報の流出などのリスクを低減することができる。
【０２３８】
また、図１３のシーケンス図における具体例においては、暗号化演算式および復号化演算式に、排他的論理和を用いたが、四則や暗号演算など、他の演算式を用いてもよい。すなわち、主制御部２０１および周辺部において、あらかじめ相互で定められている認証方式や演算式であればよい。
【０２３９】
また、認証データを用いた認証処理は、認証データを受信する度におこなうのではなく、複数の認証データを受信した時点でおこなうこととしてもよい。この場合、周辺部は、たとえば、第１の所定の制御コマンドデータおよび第１の制御データとともに第１の認証データを受信した場合、認証処理をおこなわずに、第１の所定の制御コマンドデータおよび第１の制御データに基づく処理をおこなう。そして、周辺部は、第２の所定の制御コマンドデータおよび第２の制御データとともに第２の認証データを受信した場合、第２の所定の制御コマンドデータおよび第２の制御データに基づく処理をおこなう前に、第１の認証データを用いた認証処理をおこなう。このとき、周辺部は、第１の認証データと第２の認証データの両方を用いて認証処理をおこなってもよい。このように、複数の認証データを受信した時点で認証処理をおこなえば、エラーによって制御信号に余分なデータが付加されてしまった場合などに、誤って認証処理をおこなってしまうことを防ぐことができる。
【０２４０】
以上説明したように、本実施の形態にかかる電子機器では、所定の制御コマンドを送信する際、周辺部において主制御部の照合に用いる期待値を補正するための補正データを用いて期待値補正処理をおこなう。また、補正データを送信した後で、所定の制御コマンドを送信する際、主制御部の正当性を認証するための認証データを用いて認証処理をおこなう。補正データは、主制御部に固有の値によって生成される。たとえば、補正データは主制御部が変更された場合、変更前の主制御部に固有の値と、変更後の主制御部に固有の値との差分によって生成される。また、認証データは、正規の主制御部に格納されたプログラムデータによって生成される。そして、認証データを用いて算出された値と、補正データを用いて補正された期待値とが一致する場合、主制御部を正規の主制御部と認証することができる。
【０２４１】
このため、正規の主制御部が不正な基板に交換されたり、正規の主制御部と周辺部との間に不正な基板が取り付けられたことを検知することができる。また、主制御部が他の正規の主制御部に変更された場合、誤って変更後の主制御部を不正な基板と認証することを防ぐことができる。さらに、今回送信する制御コマンドデータや付随データを含めて補正データや認証データを生成することとすれば、不正な制御基板による補正データや認証データの再利用を防止して、電子機器への不正を防止することができる。
【０２４２】
また、主制御部の照合に用いる最終期待値（補正後の期待値）そのものである固定値を周辺部に保持させないことで、照合に用いる最終期待値を知り得る者を限定することができる。この場合、具体的には、たとえば製造時から、期待値の補正処理をおこなわないと、ダミー認証処理においては認証が成立となり、認証処理においては認証が不成立となるように設計する。これにより、期待値に関する情報の流出などのリスクを軽減することができる。
【０２４３】
また、認証処理をおこなうタイミング以外の場合、所定の制御コマンドを送信する際に、ダミー認証データを付加することができる。ダミー認証データは、認証データのダミーデータであり、補正処理や認証処理に用いられないデータである。したがって、認証データの送信されるタイミング、すなわち認証処理のおこなわれるポイントが第３者に見破られることを防ぎ、認証に関する情報の流出などのリスクをより軽減することができる。
【０２４４】
また、本実施の形態にかかる電子機器（たとえば、ぱちんこ遊技機）では、主制御部が周辺部に電源オンコマンドを送信する際に、制御コマンドに補正データを付加する。電源オンコマンドは、ぱちんこ遊技機の電源の投入時やリセット時など、ぱちんこ遊技機の初期化処理をおこなう際に送信される。初期化処理は、ぱちんこ遊技機のメインの処理である遊技（ゲーム進行）関連処理とは異なる処理区分に分類される。本実施の形態にかかるぱちんこ遊技機のように、初期化処理中に補正処理を組み込めば、遊技関連処理中に補正処理を組み込む場合と比較して、プログラム設計やテストにかかる工程（工数）を低減することができる。すなわち、初期化処理中に補正処理を組み込むことによって、開発コストの低減や品質管理上のメリットを得ることができる。
【０２４５】
また、初期化処理中に補正処理を組み込めば、周辺部において、ぱちんこ遊技機の起動直後に補正処理をおこなうため、ぱちんこ店が閉店した後に不正がおこなわれた場合などであっても、客が入店する前に不正を検出することができる。よって、不正による被害が発生する可能性を低減することができる。
【０２４６】
また、電源オンコマンドは、電源投入後の他の全ての制御コマンドの最初に送信される。したがって、たとえば電源がオフされている間に、主制御部を他の主制御部に変更した場合、認証処理より前に補正処理をおこなうことができるため、変更後の他の主制御部を誤って不正な主制御部であると判断することを防ぐことができる。
【０２４７】
また、電源投入後の最初に補正処理がおこなわれるため、認証処理のタイミングを設計者の所望のタイミングでおこなうことができる。したがって、ぱちんこ遊技機の機種毎に最も好適なタイミングで認証処理をおこなわせることができるため、認証の強度を上げることができる。
【０２４８】
なお、本実施の形態で説明した主制御部および周辺部の制御方法は、あらかじめ用意されたプログラムをパーソナル・コンピュータやワークステーション等のコンピュータで実行することにより実現することができる。このプログラムは、ハードディスク、フレキシブルディスク、ＣＤ−ＲＯＭ、ＭＯ、ＤＶＤ等のコンピュータで読み取り可能な記録媒体に記録され、コンピュータによって記録媒体から読み出されることによって実行される。またこのプログラムは、インターネット等のネットワークを介して配布することが可能な伝送媒体であってもよい。
【産業上の利用可能性】
【０２４９】
以上のように、本発明は、制御部への不正が懸念される電子機器やその電子機器に搭載される制御基板に有用であり、特に、ぱちんこ遊技機、スロット遊技機、その他各種の遊技機に適している。
【符号の説明】
【０２５０】
３０１  主制御基板
３１１  制御コマンド格納部
３１２  記録部
３１３  補正データ生成部
３１４  認証データ生成部
３１５  ダミー認証データ生成部
３１６  補正データ付加部
３１７  認証データ付加部
３１８  ダミー認証データ付加部
３１９  送信部
３３０  周辺基板
３３１  受信部
３３２  補正部
３３３  判断部
３３４  認証部
３３５  放置信号出力部
【図１】
2010172488.tif 000003
【図２】
2010172488.tif 000004
【図３】
2010172488.tif 000005
【図４】
2010172488.tif 000006
【図５】
2010172488.tif 000007
【図６】
2010172488.tif 000008
【図７】
2010172488.tif 000009
【図８】
2010172488.tif 000010
【図９】
2010172488.tif 000011
【図１０】
2010172488.tif 000012
【図１１】
2010172488.tif 000013
【図１２】
2010172488.tif 000014
【図１３】
2010172488.tif 000015
【図１４】
2010172488.tif 000016
【図１５】
2010172488.tif 000017