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