(57)【特許請求の範囲】
【請求項１】
サーバと複数のクライアントとが通信回線を介して接続され、前記サーバと各クライアントとの間で情報の授受を行う通信ゲームシステムであって、
前記サーバは、前記通信回線を介して通信を行うサーバ通信手段と、ゲームを実行するゲーム手段と、サーバ制御手段とを有し、
前記各クライアントは、情報の表示を行う表示手段と、前記通信回線を介して通信を行うクライアント通信手段と、
乱数を発生する乱数生成手段と、
前記乱数のハッシュデータを生成するハッシュデータ生成手段と、
前記乱数を所定ビット数毎に区切ってゲーム用データを生成するゲーム用データ生成手段と、
クライアント制御手段とを有し、
前記サーバのゲーム手段によるゲームの実行は、前記各クライアント通信手段から前記サーバ通信手段に送信される前記ゲーム用データを用いて行なわれ、
前記各クライアント通信手段は、前記ハッシュデータを前記サーバに送信するように構成され、
前記サーバ制御手段は、前記サーバ通信手段で全ての前記ハッシュデータを受信すると、全ての前記ハッシュデータを前記各クライアント通信手段に送信するように構成され、
前記各クライアント制御手段は、前記クライアント通信手段で受信した全ての前記ハッシュデータを前記表示手段によって表示させた後、前記クライアント通信手段によって前記ゲーム用データを前記サーバに送信させるように構成され、
前記サーバの前記ゲーム手段によって実行される前記ゲームは、前記各クライアントの送信手段から送信される前記ゲーム用データの全てを用いた演算を行うことでなされる、
ことを特徴とする通信ゲームシステム。
【請求項２】
複数のクライアントと通信回線を介して接続されるサーバであって、
前記サーバは、前記通信回線を介して通信を行うサーバ通信手段と、ゲームを実行するゲーム手段と、サーバ制御手段とを有し、
前記ゲーム手段は、前記各クライアントから前記サーバ通信手段に送信されるゲーム用データを用いてゲームを行なうように構成され、
前記サーバ制御手段は、前記各クライアントが乱数から生成したハッシュデータの全てを前記サーバ通信手段で受信すると、全ての前記ハッシュデータを前記各クライアントに送信するように構成され、
前記サーバ通信手段は、前記各クライアントが、受信した全ての前記ハッシュデータを表示させた後、前記乱数を所定ビット数毎に区切ることで生成したゲーム用データを前記クライアントから受信するように構成され、
前記ゲーム手段による前記ゲームの実行は、前記各クライアントの送信手段から送信されるゲーム用データの全てを用いた演算を行うことでなされる、
ことを特徴とするサーバ。
【請求項３】
前記サーバと複数のクライアントの情報の授受は公開鍵暗号化方式に基づいて行われ、前記各クライアントのゲーム用データ生成手段は、前記公開鍵暗号化方式に基づいて公開鍵および秘密鍵を生成する鍵生成手段を有し、前記ゲーム用データ生成手段による前記乱数の生成は、前記各クライアントの前記鍵生成手段による前記公開鍵および秘密鍵の生成過程で行なわれることを特徴とする請求項２記載のサーバ。
【請求項４】
前記サーバ制御手段は、サーバ通信手段によって、前記各クライアント通信手段から受信した前記ゲーム用データの全てを前記各クライアントに送信させるように構成され、前記各クライアントの表示手段によって前記サーバ通信手段から受信した前記ゲーム用データの全てが表示されることを特徴とする請求項２記載のサーバ。
【請求項５】
前記ゲームは、前記各クライアントにより賭け金に相当する賭けデータが前記サーバに対してビットされること、すなわち提示されることによって進行するものであり、前記サーバ通信手段が前記クライアントから前記ゲーム用データを受信するに先立って前記各クライアントが前記サーバに前記賭けデータを送信し、前記サーバは、前記ゲームの結果に基づいて前記賭けデータの処理を行なうように構成されていることを特徴とする請求項２記載のサーバ。
【請求項６】
前記サーバのゲーム手段によって実行されるゲームは、ダイスを用いたゲームであり、前記ゲーム用データの全てを用いた演算は、ダイスの目の数を決定するために行なわれることを特徴とする請求項２記載のサーバ。
【請求項７】
前記サーバのゲーム手段によって実行されるゲームは、カードを用いたゲームであり、前記ゲーム用データの全てを用いた演算は、カードの絵柄および数字を決定するために行なわれることを特徴とする請求項２記載のサーバ。
【請求項８】
前記サーバのゲーム手段によって実行されるゲームは、ルーレットであり、前記ゲーム用データの全てを用いた演算は、ルーレットで決定される数を決定するために行なわれることを特徴とする請求項２記載のサーバ。
【請求項９】
前記通信回線はインターネットを含むことを特徴とする請求項２記載のサーバ。
【請求項１０】
前記ハッシュデータ生成手段によるハッシュデータの生成時に、前記ハッシュデータに対するタイムスタンプ付のデジタルサインがなされるように構成されていることを特徴とする請求項２記載のサーバ。
【請求項１１】
サーバと通信回線を介して接続されるクライアントであって、
前記クライアントは、情報の表示を行う表示手段と、前記通信回線を介して通信を行うクライアント通信手段と、
乱数を発生する乱数生成手段と、
前記乱数のハッシュデータを生成するハッシュデータ生成手段と、
前記乱数を所定ビット数毎に区切ってゲーム用データを生成するゲーム用データ生成手段と、
クライアント制御手段とを有し、
前記クライアント通信手段は、前記ハッシュデータを前記サーバに送信するように構成され、
前記クライアント制御手段は、前記サーバが該サーバに接続されている全てのクライアントから全ての前記ハッシュデータを受信したことをもって全ての前記ハッシュデータを前記クライアント通信手段に送信すると、前記クライアント通信手段で受信した全ての前記ハッシュデータを前記表示手段によって表示させた後、前記クライアント通信手段によって前記ゲーム用データを前記サーバに送信させるように構成され、
前記クライアント通信手段によって前記サーバに送信される前記ゲーム用データは、それらゲーム用データの全てを用いた演算が前記サーバのゲーム手段で行われることでゲームが実行されるものである、
ことを特徴とするクライアント。
【請求項１２】
前記サーバと複数のクライアントの情報の授受は公開鍵暗号化方式に基づいて行われ、前記各クライアントのゲーム用データ生成手段は、前記公開鍵暗号化方式に基づいて公開鍵および秘密鍵を生成する鍵生成手段を有し、前記ゲーム用データ生成手段による前記乱数の生成は、前記各クライアントの前記鍵生成手段による前記公開鍵および秘密鍵の生成過程で行なわれることを特徴とする請求項１１記載のクライアント。
【請求項１３】
前記サーバが前記各クライアント通信手段から受信した前記ゲーム用データの全てを前記サーバから受信して前記各クライアントの表示手段によって表示することを特徴とする請求項１１記載のクライアント。
【請求項１４】
前記各クライアント制御手段は、前記クライアント通信手段で受信した前記全てのハッシュデータと、前記クライアント通信手段で受信した全てのゲーム用データとを比較して前記ゲーム用データが改ざんされているか否かを判定するように構成されていることを特徴とする請求項１１記載のクライアント。
【請求項１５】
前記ゲームは、前記各クライアントにより賭け金に相当する賭けデータが前記サーバに対してビットされること、すなわち提示されることによって進行するものであり、前記サーバ通信手段が前記クライアントから前記ゲーム用データを受信するに先立って前記各クライアントが前記サーバに前記賭けデータを送信し、前記サーバは、前記ゲームの結果に基づいて前記賭けデータの処理を行なうように構成されていることを特徴とする請求項１１記載のクライアント。
【請求項１６】
前記通信回線はインターネットを含むことを特徴とする請求項１１記載のクライアント。
【請求項１７】
前記ハッシュデータ生成手段によるハッシュデータの生成時に、前記ハッシュデータに対するタイムスタンプ付のデジタルサインがなされるように構成されていることを特徴とする請求項１１記載のクライアント。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、通信を介してゲームを行う通信ゲームシステム、サーバおよびクライアントに関する。
【０００２】
【従来の技術】
サーバと複数のクライアントとがインターネットを介して接続されたシステムにおいて、前記サーバと各クライアントの間でゲームを行う技術が既に実用化されている。
近い将来、このようなシステムを用いてギャンブルを行うことが予想されている。
【０００３】
【発明が解決しようとする課題】
ところが、このようなインターネットを介してゲームを行うシステムでは、プレーヤが互いに離れた場所にいる状態でゲームを行うため、インターネットを介して情報を授受する過程で、情報の伝達時間を利用するなどしてデータを改竄するなどして不正行為（いかさま）を行うチャンスがある。
また、このようなゲームを行なう際、情報管理装置と複数の情報処理装置が通信回線を介して情報の通信を行なう構成において、前記複数の情報処理装置と情報管理装置の間で情報が伝達されることで情報処理を行なう場合、前記情報の改ざんがなされた場合にこの改ざんを確実に発見することが要請されている。
本発明はこのような事情に鑑みてなされたものであり、その目的は、ゲームを行うプレーヤの不正行為を防止することができ、ゲームをギャンブルとして行う場合に有利な通信ゲームシステム、サーバおよびクライアントを提供することにある。
【０００４】
【課題を解決するための手段】
本発明は、前記目的を達成するため、サーバと複数のクライアントとが通信回線を介して接続され、前記サーバと各クライアントとの間で情報の授受を行う通信ゲームシステムであって、前記サーバは、前記通信回線を介して通信を行うサーバ通信手段と、ゲームを実行するゲーム手段と、サーバ制御手段とを有し、前記各クライアントは、情報の表示を行う表示手段と、前記通信回線を介して通信を行うクライアント通信手段と、乱数を発生する乱数生成手段と、前記乱数のハッシュデータを生成するハッシュデータ生成手段と、前記乱数を所定ビット数毎に区切ってゲーム用データを生成するゲーム用データ生成手段と、クライアント制御手段とを有し、前記サーバのゲーム手段によるゲームの実行は、前記各クライアント通信手段から前記サーバ通信手段に送信される前記ゲーム用データを用いて行なわれ、前記各クライアント通信手段は、前記ハッシュデータを前記サーバに送信するように構成され、前記サーバ制御手段は、前記サーバ通信手段で全ての前記ハッシュデータを受信すると、全ての前記ハッシュデータを前記各クライアント通信手段に送信するように構成され、前記各クライアント制御手段は、前記クライアント通信手段で受信した全ての前記ハッシュデータを前記表示手段によって表示させた後、前記クライアント通信手段によって前記ゲーム用データを前記サーバに送信させるように構成され、前記サーバの前記ゲーム手段によって実行される前記ゲームは、前記各クライアントの送信手段から送信される前記ゲーム用データの全てを用いた演算を行うことでなされることを特徴とする。
【０００５】
また、本発明は、複数のクライアントと通信回線を介して接続されるサーバであって、前記サーバは、前記通信回線を介して通信を行うサーバ通信手段と、ゲームを実行するゲーム手段と、サーバ制御手段とを有し、前記ゲーム手段は、前記各クライアントから前記サーバ通信手段に送信されるゲーム用データを用いてゲームを行なうように構成され、前記サーバ制御手段は、前記各クライアントが乱数から生成したハッシュデータの全てを前記サーバ通信手段で受信すると、全ての前記ハッシュデータを前記各クライアントに送信するように構成され、前記サーバ通信手段は、前記各クライアントが、受信した全ての前記ハッシュデータを表示させた後、前記乱数を所定ビット数毎に区切ることで生成したゲーム用データを前記クライアントから受信するように構成され、前記ゲーム手段による前記ゲームの実行は、前記各クライアントの送信手段から送信されるゲーム用データの全てを用いた演算を行うことでなされることを特徴とする。
【０００６】
また、本発明は、サーバと通信回線を介して接続されるクライアントであって、前記クライアントは、情報の表示を行う表示手段と、前記通信回線を介して通信を行うクライアント通信手段と、乱数を発生する乱数生成手段と、前記乱数のハッシュデータを生成するハッシュデータ生成手段と、前記乱数を所定ビット数毎に区切ってゲーム用データを生成するゲーム用データ生成手段と、クライアント制御手段とを有し、前記クライアント通信手段は、前記ハッシュデータを前記サーバに送信するように構成され、前記クライアント制御手段は、前記サーバが該サーバに接続されている全てのクライアントから全ての前記ハッシュデータを受信したことをもって全ての前記ハッシュデータを前記クライアント通信手段に送信すると、前記クライアント通信手段で受信した全ての前記ハッシュデータを前記表示手段によって表示させた後、前記クライアント通信手段によって前記ゲーム用データを前記サーバに送信させるように構成され、前記クライアント通信手段によって前記サーバに送信される前記ゲーム用データは、それらゲーム用データの全てを用いた演算が前記サーバのゲーム手段で行われることでゲームが実行されるものであることを特徴とする。
【０００７】
そのため、前記ハッシュデータが前記表示手段によって表示された後、前記ゲーム用データが前記サーバに送信される。前記ゲーム用データに対する改竄などの不正行為があると、前記ハッシュ用データと前記ゲーム用データとの関係が矛盾することになり、不正行為を発見することが可能となる。
【０００８】
【発明の実施の形態】
本発明の通信ゲームシステム、サーバおよびクライアントの実施の形態について説明する前に、第１乃至第３の参考例について説明する。
なお、以下に説明する第１乃至第３の参考例および実施の形態では、ゲームをギャンブルとして行う場合について説明する。
図２は、通信ゲームシステムの概略構成を示す構成図である。
情報処理システムとしての通信ゲームシステム１００は、情報管理装置としてのサーバ装置１０と、情報処理装置を構成する複数のクライアント装置２０（２０−１〜２０−ｍ）と、前記サーバ装置１０と各クライアント装置２０とを接続する通信回線としてのインターネット３０とを備えて構成されている。
そして、前記サーバ装置１０と各クライアント装置２０の情報の授受を公開鍵暗号化方式に基づいて行うことが可能に構成されている。すなわち、前記サーバ装置１０と各クライアント装置２０によって公開鍵基盤：ＰＫＩ（Ｐｕｂｌｉｃ  Ｋｅｙ  ｉｎｆｒａｓｔｒｕｃｔｕｒｅ）が構成されている。
【０００９】
図１は、前記サーバ装置１０およびクライアント装置２０の概略構成を示すブロック図である。
図１に示すように、前記サーバ装置１０は、コンピュータによって構成され、サーバ通信手段１００２、サーバ制御手段１００４、表示手段１００６、入力手段１００８、ゲーム手段１０１０などを備えて構成されている。
前記サーバ通信手段１００２は、前記インターネット３０を介して前記各クライアント装置２０との通信を行うように構成されている。
前記サーバ制御手段１００４は、前記各部の制御を司るものである。
前記表示手段１００６は、モニタ装置などから構成され、ゲームを行う上で必要な画像を画面に表示するように構成されている。
前記入力手段１００８は、マウスやキーボードなどから構成され、ゲームを行う上で必要な操作や情報の入力を行うように構成されている。
前記ゲーム手段１０１０は、ゲームを実行するものであり、ゲームのソフトウェアをＣＰＵが実行することによって実現されるものである。
なお、前記ゲーム手段１０１０が行うゲームの細かい処理内容は、本発明の要旨と直接関連しないので説明を省き、後述する動作説明の中で必要な処理内容について簡単に説明することにする。
また、前記サーバ装置１０は、前記コンピュータに設けられた記憶手段であるハードディスク装置にインストールされたサーバ用プログラムをＣＰＵが実行することによって前記各手段を機能させるように構成されている。
なお、前記サーバ用プログラムのサーバ装置１０に対するインストールは、前記インターネットを介したダウンロードで行なわれてもよいし、ＣＤ−ＲＯＭなどの記録媒体に記録されたサーバ用プログラムをＣＤ−ＲＯＭドライブ装置を介して読み取ることによって行なわれてもよい。
また、前記サーバ装置１０に前記サーバ用プログラムがプリインストールされていてもかまわない。
また、前記サーバ装置１０を構成する前記各手段をハードウェアによって実現してもよいことは勿論である。
【００１０】
前記クライアント装置２０は、後述する個人認証装置２２と接続可能に構成されている。
前記クライアント装置２０は、コンピュータによって構成され、クライアント通信手段２００２、クライアント制御手段２００４、表示手段２００６、入力手段２００８を備えている。
前記クライアント通信手段２００２は、前記インターネット３０を介して前記サーバ装置１０との通信を行うように構成されている。
前記クライアント制御手段２００４は、前記各部の制御を司るものである。
前記表示手段２００６は、モニタ装置などから構成され、ゲームを行う上で必要な画像を画面に表示するように構成されている。
前記入力手段２００８は、マウスやキーボードなどから構成され、ゲームを行う上で必要な操作や情報の入力を行うように構成されている。
また、前記クライアント装置２０は、前記コンピュータに設けられた記憶手段であるハードディスク装置にインストールされたクライアント用プログラムをＣＰＵが実行することによって動作するように構成されている。
なお、前記クライアント用プログラムのクライアント装置２０に対するインストールは、前記インターネットを介したダウンロードで行なわれてもよいし、ＣＤ−ＲＯＭなどの記録媒体に記録されたクライアント用プログラムをＣＤ−ＲＯＭドライブ装置を介して読み取ることによって行なわれてもよい。
また、前記クライアント装置２０に前記サーバ用プログラムがプリインストールされていてもかまわない。
また、前記クライアント装置２０を構成する前記各手段をハードウェアによって実現してもよいことは勿論である。
【００１１】
前記クライアント装置２０には、個人認証装置２２が接続可能に設けられている。
前記個人認証装置２２は、各クライアント装置２０を操作するプレーヤが予め登録された人であることを認証するものである。プレーヤの個人認証は、未成年者がギャンブルをすることを防止するために必要である。
図３に示すように、前記個人認証装置２０は、筐体２００１の外側に面した箇所に指紋照合センサ２２０２が設けられており、ケーブル２２０３を介してクライアント装置２０と情報の授受が可能に構成されている。前記情報の授受は例えばＵＳＢ規格に基づいて行なわれる。
【００１２】
図４に示すように、前記個人認証装置２２は、前記指紋照合センサ２２０２の他に、Ａ／Ｄコンバータ２２０４、指紋照合用ＬＳＩ２２０６、ＰＫＩエンジン２２０８（ゲーム用データ生成手段）、フラッシュメモリ２２１０、プログラム用ＲＯＭおよびＲＡＭ２２１２、ＣＰＵ２２１４、ＵＳＢコントローラ２２１６などを備えている。
また、前記指紋照合用ＬＳＩ２２０６、ＰＫＩエンジン２２０８、フラッシュメモリ２２１０、プログラム用ＲＯＭおよびＲＡＭ２２１２、ＣＰＵ２２１４、ＵＳＢコントローラ２２１６は、バスによって共通に接続されている。
前記指紋照合センサ２２０２は、該指紋照合センサ２２０２上におかれた指先から指紋を読み取って指紋データ（グレースケールデータ）を出力するものである。
前記Ａ／Ｄコンバータ２２０４は、前記指紋データをアナログ信号からデジタル信号に変換するものである。
前記指紋照合用ＬＳＩ２２０６は、前記デジタルデータから特徴部分のテンプレートデータを生成して前記フラッシュメモリ２２１０に保存するものである。
前記ＰＫＩエンジン２２０８は、公開鍵暗号化方式に基づく通信を行うために必要な公開鍵、秘密鍵を生成するともに、これら公開鍵と秘密鍵に基づいて暗号化／複合化を行うものである。なお、公開鍵、秘密鍵の生成については後で説明する。
前記フラッシュメモリ２２１０は、前記テンプレートデータと、賭け金と引き換えにプレーヤに与えられるチップデータとを記憶するように構成されている。
前記プログラム用ＲＯＭおよびＲＡＭ２２１２は、この個人認証装置２０の制御用プログラムを格納するものである。
前記ＵＳＢコントローラ２２１６は、前記クライアント装置２０との間で情報を送受信するためのインターフェースである。
前記ＣＰＵ２２１４は、前記制御プログラムに基づいて、前記各部を制御するものである。
【００１３】
次に、前記個人認証装置２２の動作について説明する。
まず、前記クライアント装置２０を使用するプレーヤを登録する登録動作について説明する。
プレーヤは、指を前記個人認証装置２２の前記指紋照合センサ２２０２上におく。これにより、指紋データが前記Ａ／Ｄコンバータ２２０４を介して前記指紋照合用ＬＳＩ２２０６に読み取られ、前記テンプレートデータが前記フラッシュメモリ２２１０に保存される。これによりプレーヤの指紋データが登録される。
次に、プレーヤを認証する認証動作について説明する。
プレーヤは、指を前記個人認証装置２２の前記指紋照合センサ２２０２上におく。これにより、指紋データが前記Ａ／Ｄコンバータ２２０４を介して前記指紋照合用ＬＳＩ２２０６に読み取られ、前記フラッシュメモリ２２１０に保存されているテンプレートデータと照合される。その結果が前記ＣＰＵ２２１４に通知される。
前記ＣＰＵ２２１４は、前記照合結果が合格ならば認証が正常に行われた旨をクライアント装置２０に通知する。これにより、クライアント装置２０の使用が可能となる。一方、前記照合結果が不合格ならば認証が行なわれなった旨をクライアント装置２０に通知する。これにより、クライアント装置２０の使用は不能となる。
【００１４】
次に、前記ＰＫＩエンジン２２０８によるＲＡＳ方式に基づく公開鍵、秘密鍵の生成動作について説明する。
前記クライアント装置２０から前記個人認証装置２２に公開鍵、秘密鍵の生成を指示するコマンドが送信される。
前記ＰＫＩエンジン２２０８は、前記コマンドに応じて乱数を生成する。前記乱数の生成は、非素数が得られるまで繰り返して行なわれる。
前記ＰＫＩエンジン２２０８は、非素数の乱数が得られたら、式（１）に示すように、この乱数を合成数ｎとし、合成数ｎをその積で示す２つの素数、すなわち第１素数ｐ、第２素数ｑに分解する。前記合成数ｎはモジュラスともいう。言い替えると、前記合成数ｎは、前記第１素数ｐと第２素数ｑに基づき不可逆的かつ一意に生成されることになる。
ｎ＝ｐ・ｑ                                          （１）
次に、式（２）に基づいてｙを求める。
（ｐ−１）・（ｑ−１）＋１＝ｙ                        （２）
次に、式（３）に基づいてｙを積で示す公開鍵ｅと秘密鍵ｄを求める。
ｅ・ｄ＝ｙ                                          （３）
例えば、合成数ｎ＝３３とすれば、式（１）、式（２）、式（３）は次のとおりとなる。
３３＝３・１１                                      （１）
（３−１）・（１１−１）＋１＝２１                    （２）
３・７＝２１                                        （３）
すなわち、
合成数ｎ：３３
公開鍵ｅ：３
秘密鍵ｄ：７
となる。
【００１５】
次に、ゲームを行う際の動作について図５のフローチャートを参照して説明する。なお、第１の参考例では、ゲームがクラップスである場合について説明する。
ゲームを行なうプレーヤは、ゲームの進行を司る役割を有する１人の親プレーヤと、親プレーヤの進行にしたがってゲームに参加する１人以上の子プレーヤとからなる。
本参考例では、親プレーヤがクライアント装置１０を介してサーバ装置１０を操作し、子プレーヤがクライアント装置２０を操作するものとして説明する。
【００１６】
まず、各子プレーヤは、ギャンブルを提供するサービス提供会社の登録場所に出向いて、自らの年齢証明を行って前記個人認証装置２２に指紋データを登録して個人登録を行う（ステップＳ１０）。次に、各子プレーヤは賭け金を支払うことにより、その賭け金に見合う前記チップデータを前記フラッシュメモリ２２１０に保存してもらう（ステップＳ１２）。
なお、前記チップデータには前記サービス提供会社によるデジタルサインが施されている。
その後、各子プレーヤに前記個人認証装置２２が貸与される（ステップＳ１４）。
各子プレーヤは、貸与された個人認証装置２２を前記クライアント装置２０に接続して、個人認証動作を行う（ステップＳ１６）。個人認証動作が正常に行われることにより、ゲームに参加する準備が完了する。
【００１７】
ゲーム参加準備が完了することによって、図６に示すように、クライアント装置２０の表示手段２００６の画面には、ゲーム選択を行うためのメニューＧ１が表示される（ステップＳ１８）。
クラップスを選択してクライアント装置２０の入力手段２００８のキーボードの実行キーを押すことで、図７に示すように、クラップスを行うための画面が表示される（ステップＳ２０）。
前記画面には、クラップスを行うテーブルの画像Ｇ２（詳細な画面内容は省略する）が表示されるとともに、ゲームに参加している全ての子プレーヤのクライアント装置２０から送信される前記合成数ｎ（ｎ１〜ｎｘ）、第１素数ｐ（ｐ１〜ｐｘ）、第２素数ｑ（ｑ１〜ｑｘ）が表示されるようになっている。
また、ダイスを振るためのダイスボタンＢ１、合成数ｎを送信するためのｎ送信ボタンＢ２、第１素数ｐを送信するためのｐ送信ボタンＢ３、第２素数ｑを送信するためのｑ送信ボタンＢ４も表示されている。
これらのボタンは、初期状態では操作が不能な状態に設定されている。なお、各ボタンは、操作が可能な状態（レディ状態）か否かに応じて異なる色で表示されるようになっており、例えば操作が可能な状態では緑色に、操作が不能な状態では赤色になるように構成されている。
【００１８】
子プレーヤは、前記テーブルの画像を見ながらチップを賭ける（ステップＳ２２）。すなわち、前記入力手段２００８のマウスを操作することにより画像のテーブル上の所望の場所に画像のチップをドラッグアンドドロップする。この画像はリアルタイムで各クライアントのモニタ装置に表示される。なお、前記チップを賭けるということは、前記各クライアント装置２０により賭け金に相当する賭けデータが前記サーバ装置１０に対してビットされること、すなわち提示されることになる。
なお、このようなチップをテーブル上に置くなどの操作とその操作に対応する表示は、前記サーバ装置１０のゲーム手段１０１０およびサーバ制御手段１００４の制御によって前記サーバ装置１０と各クライアント装置２０との間でインターネット３０を介して情報が相互に通信されることによって実現されるものである。
【００１９】
子プレーヤ全員がチップを賭け終わると、親プレーヤは、子プレーヤのクライアント装置２０の全てをダイスレディ状態にするための操作を親プレーヤのクライアント装置２０の入力手段１００８に対して行なう。この操作情報は、インターネット３０を介して前記サーバ装置１０に送信され、前記操作情報を認識したサーバ制御手段１００４によって、ダイスレディ状態にする旨の指示が前記サーバ制御手段１００４からサーバ通信手段１００２を介して子プレーヤの各クライアント装置２０に送信され、各クライアント装置２０のクライアント制御手段１００４は、前記表示手段２００６のダイスボタンＢ１の色が操作不能を示す赤色から可能を示す緑色に変化させる（ステップＳ２４）。
これに応じて、各子プレーヤがダイスボタンＢ１をクリックすると、前記各クライアント装置２０のクライアント制御手段２００４は、前記個人認証装置２２に公開鍵、秘密鍵の生成を指示する（ステップＳ２６）。
前記個人認証装置２２は、前述した動作に従って前記合成数ｎ、第１素数ｐ、第２素数ｑを生成してクライアント制御手段２００４に与える（ステップＳ２８）。
前記クライアント制御手段２００４は、まず、前記ｎ送信ボタンＢ２を操作可能な状態にする。例えば、このボタンの色を赤色から緑色に変化させる（ステップＳ３０）。
各子プレーヤが前記ｎ送信ボタンＢ２を操作することで、前記サーバ装置１０に全ての合成数ｎが送信されると、前記サーバ装置１０のゲーム手段１０１０は前記全ての合成数ｎを各クライアント装置２０に送信する。これにより、各クライアント装置２０の表示手段２００６に前記全ての合成数ｎが表示される（ステップＳ３２）。
したがって、各子プレーヤは自らの合成数ｎと、他の子プレーヤの合成数ｎとを視認することができる。
【００２０】
次に、前記全ての合成数ｎが各クライアント装置２０に送信された後、前記サーバ装置１０のゲーム手段１０１０は、第１素数ｐ、第２素数ｑを送信するためのボタンを操作可能な状態にする旨の指示を各クライアント装置２０に送信する。
これにより、前記クライアント制御手段２００４は、前記ｐ送信ボタンＢ３、ｑ送信ボタンＢ４を操作可能な状態にする。例えば、これらボタンＢ３、Ｂ４の色を赤色から緑色に変化させる（ステップＳ３４）。
各子プレーヤがｐ送信ボタンＢ３とｑ送信ボタンＢ４の双方を操作することで、前記サーバ装置１０に全クライアント装置２０における第１素数ｐおよび第２素数ｑがゲーム用データとして送信される（ステップＳ３６）。
次いで、前記サーバ装置１０のゲーム手段１０１０は、前記全ての第１素数ｐおよび第２素数ｑを各クライアント装置２０に送信する。これにより、各クライアント装置２０の表示手段２００６に前記全ての第１素数ｐおよび第２素数ｑが表示される（ステップＳ３８）。
したがって、各子プレーヤは自らの第１素数ｐおよび第２素数ｑと、他の子プレーヤの第１素数ｐおよび第２素数ｑとを視認することができる。
そして、このステップＳ３８において、前記各クライアント制御手段２００４は、前記クライアント通信手段２００２で受信した前記全ての合成数ｎと、前記クライアント通信手段２００２で受信した全ての第１、第２素数ｐ、ｑとをベリファイ、すなわち比較して前記第１、第２素数ｐ、ｑが改ざんされているか否かを判定する（ステップＳ３９）。この確認結果で改ざんなしと判定されば次ステップに移行し、改ざんが判明した場合にはその旨をサーバ装置１０に伝達し、該サーバ装置１０によって各クライアント装置２０に対してゲームの中止を指示する（ステップＳ４１）。
【００２１】
そして、前記サーバ装置１０のゲーム手段１０１０は、受信したこれらの素数に基づいて２つのダイスの目（１〜６までのいずれかの数）を決定する。
すなわち、前記サーバ装置１０のゲーム手段１０１０が受信した第１素数ｐがｐ１〜ｐｘ、第２素数がｑ１〜ｑｘであったとする。
まず、第１、第２素数のＬＳＢ（最下位ビット）側から所定ビットを削除する。これは素数が必ず奇数から構成されているためである。
次いで、式（４）のように各第１素数ｐ１〜ｐｘ（所定ビットの削除後）の排他的論理和ｐ０を演算する。
ｐ０＝ｐ１＊ｐ２＊ｐ３＊……＊ｐｘ                  （４）
（本明細書において＊は排他的論理和の演算記号を示すものとする）
次に、ｐ０を６で割ってその余りを１つめのダイスの目とする（ただし余り０はダイスの目６とする）。
そして、前記サーバ装置１０のゲーム手段１０１０は、１つめのダイスの目のデータを各クライアント装置２０に送信することにより、各クライアント装置２０の表示手段２００６に１つめのダイスの目を表示させる（ステップＳ４０）。
【００２２】
同様に、式（５）のように各第２素数ｑ１〜ｑｘ（所定ビットの削除後）の排他的論理和ｑ０を演算する。
ｑ０＝ｑ１＊ｑ２＊ｑ３＊……＊ｑｘ                  （５）
次に、ｑ０を６で割ってその余りを２つめのダイスの目とする（ただし余り０はダイスの目を６とする）。
そして、前記サーバ装置１０のゲーム手段１０１０は、２つめのダイスの目のデータを各クライアント装置２０に送信することにより、各クライアント装置２０の表示手段２００６に２つめのダイスの目を表示させる（ステップＳ４２）。
【００２３】
このように２つのダイスの目が決定してクラップスの勝敗が決定すると（ステップＳ４４で“Ｙ”）、賭け金の配当などの処理が実行される（ステップＳ４６）。
クラップスの勝敗が決定しないと（ステップＳ４４で“Ｎ”）、ステップＳ３４に戻る。
ゲームを続行するか否かの選択を行い（ステップＳ４８）、続行する場合（ステップＳ４８で“Ｙ”）にはステップＳ２２に移行し、続行しない場合（ステップＳ４８で“Ｎ”）には終了する。
【００２４】
以上説明したように、第１の参考例によれば、前記合成数ｎが前記各クライアント装置２０の表示手段２００６によって表示された後、前記第１、第２素数ｐ、ｑの双方が前記ゲーム用データとして前記サーバ装置１０に送信される。前記第１、第２素数ｐ、ｑに対する改竄などの不正行為があると、前記合成数ｎと前記第１、第２素数ｐ、ｑとの関係が矛盾することになり、すなわち、ｎ＝ｐ・ｑが不成立となり、これにより不正行為を発見することが可能となる。
【００２５】
また、ダイスの目を決定するための演算の過程で各クライアント装置２０の個人認証装置２２で生成された第１素数ｐ、第２素数ｑの全てが使用されるため、各プレーヤに対して公平性を保つことができる。
また、前記個人認証装置２２を用いてプレーヤの認証を行うことにより、ギャンブルを行うプレーヤの制限（年齢制限）を容易に行うことができる。
【００２６】
また、ステップＳ４０、Ｓ４２の動作において、各クライアント装置２０の表示手段２００６においてダイスが転がる様子を示す画像を表示すれば、視覚的な効果を向上させる上で好ましい。
なお、第１の参考例では、前記合成数ｎに基づく第１、第２素数ｐ、ｑの生成を前記ＰＫＩエンジン２２０８で行ったが、この動作は前記ＣＰＵ２２１４で行っても、あるいは前記クライアント制御手段２００４で行ってもかまわない。
また、上述の説明では、前記第１、第２素数ｐ、ｑ全てを使用したが、これらの最上位ビットから８ビット分でダイスの目を決定するようにしてもよい。このようにすることで、合成数ｎを１度生成しただけで、複数回ダイスを転がした分のダイスの目を得ることができる利点がある。
【００２７】
次に、第２の参考例について説明する。
第２の参考例では、ゲームがルーレットであるものとして説明する。
第２の参考例が第１の参考例と異なる部分は、前記各クライアント装置２０の表示手段２００６に表示される画面と、前記第１、第２素数ｐ、ｑを用いてルーレットで出る目を決定する演算内容である。
図８は、ルーレットが選択されたときにクライアント装置２０の表示手段２００６に表示される画面の説明図である。
図８に示すように、前記表示手段２００６の画面には、ルーレットを行うテーブルの画像が表示されるとともに、ゲームに参加している全ての子プレーヤのクライアント装置２０から送信される前記合成数ｎ（ｎ１〜ｎｘ）、第１素数ｐ（ｐ１〜ｐｘ）、第２素数ｑ（ｑ１〜ｑｘ）が表示されるようになっている。
また、各子プレーヤが操作するレディボタンＢ１１、合成数ｎを送信するためのｎ送信ボタンＢ２、第１素数ｐを送信するためのｐ送信ボタンＢ３、第２素数ｑを送信するためのｑ送信ボタンＢ４も表示されている。
これらのボタンは、初期状態では操作が不能な状態に設定されている。なお、各ボタンは、操作が可能な状態（レディ状態）か否かに応じて異なる色で表示されるようになっており、例えば操作が可能な状態では緑色に、操作が不能な状態では赤色になるように構成されている。
【００２８】
図９は、第２の参考例の動作を示すフローチャートである。
なお、図９において図５と同一動作のステップについては、同一のステップ番号を付してその説明を省略する。
ステップＳ１０乃至Ｓ１８までは第１の参考例と同様である。
ステップＳ２０でルーレットを選択することにより、図８に示すルーレット用の画面Ｇ３（詳細な画面内容は省略する）が表示される。
子プレーヤは、前記テーブルの画像を見ながらチップを賭ける（ステップＳ２２）。すなわち、前記入力手段２００８のマウスを操作することにより画像のテーブル上の所望の場所に画像のチップをドラッグアンドドロップする。この画像はリアルタイムで各クライアントのモニタ装置に表示される。本参考例においても、前記チップを賭けるということは、前記各クライアント装置２０により賭け金に相当する賭けデータが前記サーバ装置１０に対してビットされること、すなわち提示されることになる。
【００２９】
子プレーヤ全員がチップを賭け終わると、親プレーヤは、子プレーヤのクライアント装置２０の全てのレディボタンＢ１１をレディ状態にするための操作を親プレーヤのクライアント装置２０の入力手段１００８に対して行なう。この操作情報は、インターネット３０を介して前記サーバ装置１０に送信され、前記操作情報を認識したサーバ制御手段１００４によって、レディボタンＢ１１をレディ状態にする旨の指示が前記サーバ制御手段１００４かサーバ通信手段１００２を介して各クライアント装置２０に送信され、各クライアント装置２０のクライアント制御手段１００４は、前記表示手段２００６のレディボタンＢ１１の色を操作不能を示す赤色から可能を示す緑色に変化させる（ステップＳ１２４）。
これに応じて、各子プレーヤがレディボタンＢ１１をクリックすると、前記各クライアント装置２０のクライアント制御手段２００４は、前記個人認証装置２２に公開鍵、秘密鍵の生成を指示する（ステップＳ１２６）。
以下、前記個人認証装置２２による前記合成数ｎ、第１素数ｐ、第２素数ｑの生成、表示の動作は、図５におけるステップＳ２８乃至Ｓ４１と同様である。
【００３０】
そして、ルーレットの目を決定する演算は次のような手順で行われる。
すなわち、前記サーバ装置１０のゲーム手段１０１０が受信した第１素数ｐがｐ１〜ｐｘ、第２素数がｑ１〜ｑｘであったとする。
次いで、式（６）のように各第１素数ｐ１〜ｐｘ、第２素数がｑ１〜ｑｘの排他的論理和ｐｑ０を演算する。
ｐｑ０＝ｐ１＊ｐ２＊ｐ３＊……＊ｐｘ
＊ｑ１＊ｑ２＊ｑ３＊……＊ｑｘ              （６）
次に、ｐｑ０を３８で割ってその余り（１乃至３６）をルーレットの目とする（合成情報生成ステップ）。ただし余り０はルーレットの目を０、余り３７はルーレットの目を００とする。
そして、前記サーバ装置１０のゲーム手段１０１０は、ルーレットのデータを各クライアント装置２０に送信することにより、各クライアント装置２０の表示手段２００６にルーレットの目を表示させる（ステップＳ１４０）。
【００３１】
このようにルーレットの目が決定することで、ルーレットの勝敗が決定すると（ステップＳ１４２で“Ｙ”）と、賭け金の配当などの処理が実行される（ステップＳ１４４）。
次いで、ゲームを続行するか否かの選択を行い（ステップＳ１４６）、続行する場合（ステップＳ４６で“Ｙ”）にはステップＳ２２に移行し、続行しない場合（ステップＳ４６で“Ｎ”）には終了する。
【００３２】
以上説明したように、第２の参考例によれば、前記合成数ｎが前記各クライアント装置２０の表示手段２００６によって表示された後、前記第１、第２素数ｐ、ｑの双方が前記ゲーム用データとして前記サーバ装置１０に送信される。前記第１、第２素数ｐ、ｑに対する改竄などの不正行為があると、前記合成数ｎと前記第１、第２素数ｐ、ｑとの関係が矛盾することになり、すなわち、ｎ＝ｐ・ｑが不成立となり、これにより不正行為を発見することが可能となる。
【００３３】
また、ルーレットの目を決定するための演算の過程で各クライアント装置２０の個人認証装置２２で生成された第１素数ｐ、第２素数ｑの全てが使用されるため、各プレーヤに対して公平性を保つことができる。
また、前記個人認証装置２２を用いてプレーヤの認証を行うことにより、ギャンブルを行うプレーヤの制限（年齢制限）を容易に行うことができることは第１の参考例と同様である。
【００３４】
また、ステップＳ１４０の動作において、各クライアント装置２０の表示手段２００６においてルーレットが回転する様子を示す画像を表示すれば、視覚的な効果を向上させる上で好ましい。
また、上述の説明では、前記第１、第２素数ｐ、ｑ全てを使用したが、これらの最上位ビットから８ビット分でルーレットの目を決定するようにしてもよい。このようにすることで、合成数ｎを１度生成しただけで、複数回ルーレットを回転させた分のルーレットの目を得ることができる利点がある。
【００３５】
次に、第３の参考例について説明する。
第３の参考例では、ゲームがカードゲームの１つであるブラックジャックであるものとして説明する。
第３の参考例が第１の参考例と異なる部分は、前記各クライアント装置２０の表示手段２００６に表示される画面と、前記第１、第２素数ｐ、ｑを用いてカードの数字を決定する演算内容である。
図１０は、ブラックジャックが選択されたときにクライアント装置２０の表示手段２００６に表示される画面の説明図である。
図１０に示すように、前記表示手段２００６の画面には、ブラックジャックを行うテーブルの画像が表示されるとともに、ゲームに参加している全ての子プレーヤのクライアント装置２０から送信される前記合成数ｎ（ｎ１〜ｎｘ）、第１素数ｐ（ｐ１〜ｐｘ）、第２素数ｑ（ｑ１〜ｑｘ）が表示されるようになっている。
また、各子プレーヤが操作するスタートボタンＢ２１、合成数ｎを送信するためのｎ送信ボタンＢ２、第１素数ｐを送信するためのｐ送信ボタンＢ３、第２素数ｑを送信するためのｑ送信ボタンＢ４も表示されている。
これらのボタンは、初期状態では操作が不能な状態に設定されている。なお、各ボタンは、操作が可能な状態（レディ状態）か否かに応じて異なる色で表示されるようになっており、例えば操作が可能な状態では緑色に、操作が不能な状態では赤色になるように構成されている。
【００３６】
図１１は、第３の参考例の動作を示すフローチャートである。
なお、図１１において図５と同一動作のステップについては、同一のステップ番号を付してその説明を省略する。
ステップＳ１０乃至Ｓ１８までは第１の参考例と同様である。
ステップＳ２０でブラックジャックを選択することにより、図１０に示すブラックジャック用の画面Ｇ４（詳細な画面内容は省略する）が表示される。
子プレーヤは、前記テーブルの画像を見ながらチップを賭ける（ステップＳ２２）。すなわち、前記入力手段２００８のマウスを操作することにより画像のテーブル上の所望の場所に画像のチップをドラッグアンドドロップする。この画像はリアルタイムで各クライアントのモニタ装置に表示される。なお、前記チップを賭けるということは、前記各クライアント装置２０により賭け金に相当する賭けデータが前記サーバ装置１０に対してビットされること、すなわち提示されることになる。
【００３７】
子プレーヤ全員がチップを賭け終わると、親プレーヤは、子プレーヤのクライアント装置２０の全ての前記スタートボタンＢ２１をレディ状態にするための操作を親プレーヤのクライアント装置２０の入力手段１００８に対して行なう。この操作情報は、インターネット３０を介して前記サーバ装置１０に送信され、前記操作情報を認識したサーバ制御手段１００４によって、スタートボタンＢ２１をレディ状態にする旨の指示が前記サーバ制御手段１００４からサーバ通信手段１００２を介して子プレーヤの各クライアント装置２０に送信され、各クライアント装置２０のクライアント制御手段１００４は、前記表示手段２００６のスタートボタンＢ２１の色を操作不能を示す赤色から可能を示す緑色に変化させる（ステップＳ２２４）。
これに応じて、各子プレーヤがレディボタンＢ１１をクリックすると、前記各クライアント装置２０のクライアント制御手段２００４は、前記個人認証装置２２に公開鍵、秘密鍵の生成を指示する（ステップＳ２２６）。
以下、前記個人認証装置２２による前記合成数ｎ、第１素数ｐ、第２素数ｑの生成と、合成数ｎ表示の動作は、図５におけるステップＳ２８乃至Ｓ３２と同様である。なお、本例では、第１素数ｐ、第２素数ｑの桁数を５１２ビットとして説明する。
【００３８】
次に、前記全ての合成数ｎが各クライアント装置２０に送信された後、前記サーバ装置１０のゲーム手段１０１０は、第１素数ｐ、第２素数ｑを送信するためのボタンを操作可能な状態にする旨の指示を各クライアント装置２０に送信する。
これにより、前記クライアント制御手段２００４は、前記ｐ送信ボタンＢ３、ｑ送信ボタンＢ４を操作可能な状態にする。例えば、これらボタンＢ３、Ｂ４の色を赤色から緑色に変化させる（ステップＳ２３４）。
各子プレーヤがｐ送信ボタンＢ３とｑ送信ボタンＢ４の双方を操作することで、前記サーバ装置１０に全クライアント装置２０における第１素数ｐおよび第２素数ｑが送信される（ステップＳ２３６）。
本例では、カードを４組使用するものとする。したがって、カードの総枚数は、５２×４＝２０８枚となり、各カードの絵柄と数字を識別するために必要な数字は２０８以上あればよい。このため、１回のプレーで必要な第１素数ｐおよび第２素数ｑのビット数は８ビット（十進数で表現すると、０〜２５５までの数字）となる。
したがって、第１、第２素数ｐ、ｑは、１枚のカードの決定毎（１回のプレー毎）に最上位ビットから８ビットずつ送信される。
なお、第１、第２素数ｐ、ｑはその最下位ビット（ＬＳＢ）を不使用にする必要がある。この理由は、生成された５１２ビットの第１、第２素数ｐ、ｑが奇数であり、その最下位ビット（ＬＳＢ）が必ず１となるため、最下位ビットを含んだ状態で送信すると、後述するカードの数字を決定する演算結果が子プレーヤ数に応じて決定されてしまう不都合を回避するためである。
第１、第２素数ｐ、ｑの最下位ビット側から所定ビットを除く処理方法は任意であるが、例えば、第１、第２素数ｐ、ｑを構成する５１２ビットのうち、下位ビット半分を除いてもよい。
【００３９】
次いで、前記サーバ装置１０のゲーム手段１０１０は、８ビット分の前記第１素数ｐおよび第２素数ｑを各クライアント装置２０に送信する。これにより、各クライアント装置２０の表示手段２００６に前記全ての第１素数ｐおよび第２素数ｑが表示される（ステップＳ２３８）。
したがって、各子プレーヤは自らの第１素数ｐおよび第２素数ｑと、他の子プレーヤの第１素数ｐおよび第２素数ｑとを視認することができる。
そして、このステップＳ２３８において、前記各クライアント制御手段２００４は、前記クライアント通信手段２００２で受信した前記全ての合成数ｎと、前記クライアント通信手段２００２で受信した全ての第１、第２素数ｐ、ｑとをベリファイ、すなわち比較して前記第１、第２素数ｐ、ｑが改ざんされているか否かを判定する（ステップＳ２３９）。この確認結果で改ざんなしと判定されば次ステップに移行し、改ざんが判明した場合にはその旨をサーバ装置１０に伝達し、該サーバ装置１０によって各クライアント装置２０に対してゲームの中止を指示する（ステップＳ２４１）。
【００４０】
そして、前記サーバ装置１０のゲーム手段１０１０は、受信したこれらの素数に基づいてカードの数字を決定する。
カードの数字を決定する演算は次のような手順で行われる。
すなわち、前記サーバ装置１０のゲーム手段１０１０が受信した第１素数ｐがｐ１〜ｐｘ、第２素数がｑ１〜ｑｘであったとする。
式（７）のように各第１素数ｐ１〜ｐｘ（所定ビットの削除後）の排他的論理和ｐ０を演算する。
ｐ０＝ｐ１＊ｐ２＊ｐ３＊……＊ｐｘ                  （７）
次に、ｐ０を２０８で割ってその余りによりカードの数または絵柄を特定する。
同様に、式（８）のように各第２素数ｑ１〜ｑｘ（所定ビットの削除後）の排他的論理和ｑ０を演算する。
ｑ０＝ｑ１＊ｑ２＊ｑ３＊……＊ｑｘ                  （８）
次に、ｑ０を２０８で割ってその余りによりカードの数または絵柄を特定する。
したがって、親プレーヤは、排他的論理和ｐ０、ｑ０の数字で特定されるカードをブラックジャックのルールに基づいて各操作者（クライアント装置２０）に対応して所定枚数ずつ配る。このルール自体は本発明の要旨と直接関連しないので説明を省略する。
すなわち、カードの数字および絵柄に対応するデータが前記サーバ装置１０のゲーム手段１０１０から各クライアント装置２０に送信される。そのデータに基づいて、各クライアント装置２０の表示手段２００６に配られたカードの画像（絵柄と数字を含む）が表示される（ステップＳ２４０）。
【００４１】
このようにカードの絵柄と数字が決定することで、ブラックジャックの勝敗が決定すると（ステップＳ２４２で“Ｙ”）、賭け金の配当などの処理が実行される（ステップＳ２４４）。
ブラックジャックの勝敗が決定しないと（ステップＳ２４２で“Ｎ”）、ステップＳ２３４に戻る。
ゲームを続行するか否かの選択を行い（ステップＳ２４６）、続行する場合（ステップＳ２４６で“Ｙ”）にはステップＳ２２に移行し、続行しない場合（ステップＳ２４６で“Ｎ”）には終了する。
【００４２】
以上説明したように、第３の参考例によれば、前記合成数ｎが前記各クライアント装置２０の表示手段２００６によって表示された後、前記第１、第２素数ｐ、ｑの双方が前記ゲーム用データとして前記サーバ装置１０に送信される。前記第１、第２素数ｐ、ｑに対する改竄などの不正行為があると、前記合成数ｎと前記第１、第２素数ｐ、ｑとの関係が矛盾することになり、すなわち、ｎ＝ｐ・ｑが不成立となり、これにより不正行為を発見することが可能となる。
【００４３】
また、カードの絵柄と数字を決定するための演算の過程で各クライアント装置２０の個人認証装置２２で生成された第１素数ｐ、第２素数ｑの全てが使用されるため、各子プレーヤに対して公平性を保つことができる。
また、前記個人認証装置２２を用いて子プレーヤの認証を行うことにより、ギャンブルを行う子プレーヤの制限（年齢制限）を容易に行うことができることは第１の参考例と同様である。
【００４４】
また、ステップＳ２４０の動作において、各クライアント装置２０の表示手段２００６においてカードがシャッフルされるなどの様子を示す画像を表示すれば、視覚的な効果を向上させる上で好ましい。
【００４５】
なお、第１乃至第３の参考例は、クラップス、ルーレット、ブラックジャックに限定されるものでない。例えば、カードを用いるポーカーに適用することができる。
また、第１乃至第３の参考例は、ダイスやカードを用いるゲームに限定されるものではなく、前記第１、第２素数ｐ、ｑをゲーム用データとして用いることができるゲームであれば適用可能である。
また、第１、第２素数ｐ、ｑのビット長を長くするほど、前記合成数ｎから第１、第２の素数を算出することを困難にすることができ不正行為を防止する上で有利である。例えば、前記ビット長を５００ビット以上に設定すれば、事実上、第１、第２素数の解読は不可能であるといえる。
また、前記サーバ装置１０とクライアント装置２０を接続する通信回線は、ＶＰＮ（Ｖｅｒｔｕａｌ  Ｐｒｉｖａｔｅ  Ｎｅｔｗｏｒｋ）を用いることによって暗号化通信が保証されるので好ましい。また、前記通信回線としてインターネット以外の通信回線を使用することは任意である。
【００４６】
なお、第１乃至第３の参考例で説明したゲームは、親プレーヤが専らゲームの進行を司るのみであり、自ら賭け金をベッドすることができないものであったが、親プレーヤが子プレーヤと同様に賭け金をベッドすることが可能なゲームにおいても同様に適用できることは勿論である。
【００４７】
また、前記各クライアント装置１０が前記合成数を前記サーバ装置１０に送信するにあたって、前記合成数に対して各プレーヤのタイムスタンプ付のデジタルサインを行なうように構成すれば、合成数の送信元、送信日時を特定することが可能となる。
この場合には、前記合成数を送信したこと自体を否定したり、送信した合成数の送信日時を偽ったりすることを防止することができ、不正行為を抑制する上で有利である。
また、前記各クライアント装置１０が前記賭けデータを前記サーバ装置１０に送信するにあたって、前記賭けデータに対して各プレーヤのデジタルサインを行ない、サーバ装置で前記賭けデータにタイムスタンプが付されるように構成すれば、前記賭けデータの送信元、送信日時を特定することが可能となる。
この場合には、前記賭けデータを送信したこと自体を否定したり、送信した賭けデータの送信日時を偽ったりすることを防止することができ、不正行為を抑制する上で有利である。
【００４８】
次に、本発明の実施の形態について説明する。
本実施の形態が第１乃至第３の参考例と異なるのはゲーム用データの生成動作である。
第１乃至第３の参考例と同様に、前記クライアント装置２０から前記個人認証装置２２に公開鍵、秘密鍵の生成を指示するコマンドが送信される。
前記ＰＫＩエンジン２２０８（ゲーム用データ生成手段）は、前記コマンドに応じてｎビットの乱数Ｍを生成する。本実施の形態では、前記乱数Ｍは、素数であっても非素数であってもかまわない。
Ｍ＝ａ１ａ２ａ３ａ４ａ５ａ６ａ７ａ８……ａｎ                （９）
（ａ１乃至ａｎは各ビットを示す）
前記ＰＫＩエンジン２２０８は、前記乱数Ｍが得られたら式（１０）に示すように乱数Ｍをハッシュ関数に入力してハッシュデータＨを求める。
Ｈ＝Ｈａｓｈ（Ｍ）                                  （１０）
このハッシュデータＨは、そのデータから乱数Ｍを逆算して求めることができないものであり、乱数Ｍのビット数よりも少ないビット数の数字から構成されるものである。言い替えると、前記ハッシュデータＨは、前記乱数Ｍに基づき不可逆的かつ一意に生成されることになる。
そして、前記ハッシュデータＨに対して各プレーヤのタイムスタンプ付のデジタルサインがなされる。
【００４９】
次に、上述のようなゲーム用データの生成方法を用いたクラップスゲームについて、図１２のフローチャートを用いて説明する。また、図１２において図５のフローチャートと同様の処理については同一のステップ番号を付してその説明を省略する。
なお、本実施の形態のおける通信ゲームシステムの構成は第１の参考例と同様であるため、以下の動作においては図１乃至図４を流用して説明する。また、本実施の形態では、前記クライアント装置２０と個人認証装置２２によって本発明のクライアントおよび情報処理装置が構成されている。
【００５０】
まず、ステップＳ１０乃至Ｓ１８までは図５のフローチャートと同様であるためその説明を省略する。
図１３に示すように、ステップＳ２０において、前記画面には、クラップスを行うテーブルの画像Ｇ２（詳細な画面内容は省略する）が表示されるとともに、ゲームに参加している全ての子プレーヤのクライアント装置２０から送信される前記ハッシュデータＨ（Ｈ１〜Ｈｘ）、ゲームデータｍ１（ｍ１（１）〜ｍ１（ｘ））、ゲームデータｍ２（ｍ２（１）〜ｍ２（ｘ））が表示されるようになっている。
また、ダイスを振るためのダイスボタンＢ１、ハッシュデータＨを送信するためのＨ送信ボタンＢ２１、ゲームデータｍ１、ｍ２を送信するためのｍ１、ｍ２送信ボタンＢ３１、Ｂ４１も表示されている。
これらのボタンは、初期状態では操作が不能な状態に設定されている。なお、各ボタンは、操作が可能な状態（レディ状態）か否かに応じて異なる色で表示されるようになっており、例えば操作が可能な状態では緑色に、操作が不能な状態では赤色になるように構成されている。
以下ステップＳ２２、Ｓ２４は第１の参考例と同様の動作である。
【００５１】
ステップＳ２６でダイスボタンが操作されると、前記クライアント装置２０のクライアント制御手段２２は、前述した動作に従って乱数Ｍを生成し（ステップＳ２８２：種情報生成ステップ）、この乱数ＭのハッシュデータＨを生成する（ステップＳ２８４：認証情報生成ステップ）。
さらに、前記乱数Ｍを所定ビット数（例えば８ビット）ずつ区切ってゲーム用データｍ（ｍ１、ｍ２、ｍ３、……）を生成する（ステップＳ２８６）。
前述したように、
Ｍ＝ａ１ａ２ａ３ａ４ａ５ａ６ａ７ａ８……ａｎ            （９）
とすれば、ｍ１、ｍ２、ｍ３は以下の式（１１）、（１２）、（１３）、……のように示される。
ｍ１＝ａ１ａ２ａ３ａ４ａ５ａ６ａ７ａ８                （１１）
ｍ２＝ａ９ａ１０ａ１１ａ１２ａ１３ａ１４ａ１５            （１２）
ｍ３＝ａ１６ａ１７ａ１８ａ１９ａ２０ａ２１ａ２２ａ２３      （１３）
【００５２】
そして、前記クライアント制御手段２００４は、まず、Ｈ送信ボタンＢ２１を操作可能な状態にする。例えば、このボタンの色を赤色から緑色に変化させる（ステップＳ３０２）。
各子プレーヤが前記Ｈ送信ボタンＢ２を操作することで、前記サーバ装置１０に全てのハッシュデータＨが送信されると、前記サーバ装置１０のゲーム手段１０１０は前記ハッシュデータＨを各クライアント装置２０に送信する。これにより、各クライアント装置２０の表示手段２００６に前記全てのハッシュデータＨが表示される（ステップＳ３２２：認証情報送信ステップ、認証情報受信ステップ）。
したがって、各子プレーヤは自らのハッシュデータＨと、他の子プレーヤのハッシュデータＨとを視認することができる。
【００５３】
次に、前記全てのハッシュデータＨが各クライアント装置２０に送信された後、前記サーバ装置１０のゲーム手段１０１０は、ゲーム用データｍ１、ｍ２を送信するためのボタンを操作可能な状態にする旨の指示を各クライアント装置２０に送信する。
これにより、前記クライアント制御手段２００４は、前記ｍ１、ｍ２送信ボタンＢ３１、Ｂ４１を操作可能な状態にする。例えば、前記ｍ１、ｍ２送信ボタンＢ３１、Ｂ４１の色を赤色から緑色に変化させる（ステップＳ３４２）。
各子プレーヤがｍ１送信ボタンＢ３１とｍ２送信ボタンＢ４１の双方を操作することで、前記サーバ装置１０に全クライアント装置２０におけるゲーム用データｍ１（１）〜ｍ１（ｘ）とｍ２（１）〜ｍ２（ｘ）が送信される（ステップＳ３６２）。
次いで、前記サーバ装置１０のゲーム手段１０１０は、前記全てのクライアント装置２０におけるゲーム用データｍ１（１）〜ｍ１（ｘ）とｍ２（１）〜ｍ２（ｘ）を各クライアント装置２０に送信する。これにより、各クライアント装置２０の表示手段２００６に前記全てのクライアント装置２０におけるゲーム用データが表示される（ステップＳ３８２：種情報送信ステップ）。
したがって、各子プレーヤは自らのゲーム用データｍ１、ｍ２と、他の子プレーヤのゲーム用データｍ１、ｍ２とを視認することができる。
そして、このステップＳ３８２において、前記各クライアント制御手段２００４は、前記クライアント通信手段２００２で受信した前記全てのハッシュデータＨと、前記クライアント通信手段２００２で受信した全てのゲーム用データｍ１、ｍ２とをベリファイ、すなわち比較して前記ゲーム用データｍ１、ｍ２が改ざんされているか否かを判定する（ステップＳ３８４）。この確認結果で改ざんなしと判定されば次ステップに移行し、改ざんが判明した場合にはその旨をサーバ装置１０に伝達し、該サーバ装置１０によって各クライアント装置２０に対してゲームの中止を指示する（ステップＳ３８６）。
【００５４】
そして、前記サーバ装置１０のゲーム手段１０１０は、受信したこれらのゲーム用データに基づいて２つのダイスの目（１〜６までのいずれかの数）を決定する。
すなわち、前記サーバ装置１０のゲーム手段１０１０が受信したゲーム用データｍ１がｍ１（１）〜ｍ１（ｘ）であったとする。
次いで、式（１４）のように各ゲーム用データｍ１の排他的論理和ｍ１（０）を演算する。
ｍ１（０）＝ｍ１（１）＊ｍ１（２）＊ｍ１（３）＊……
＊ｍ１（ｘ）                            （１４）
次に、ｍ１（０）を６で割ってその余りを１つめのダイスの目とする（ただし余り０はダイスの目６とする）。
そして、前記サーバ装置１０のゲーム手段１０１０は、１つめのダイスの目のデータを各クライアント装置２０に送信することにより、各クライアント装置２０の表示手段２００６に１つめのダイスの目を表示させる（ステップＳ４０）。
【００５５】
同様に、式（５）のように各ゲーム用データｍ２（１）〜ｍ２（ｘ）（所定ビットの削除後）の排他的論理和ｍ２（０）を演算する。
ｍ２（０）＝ｍ２（１）＊ｍ２（２）＊ｍ２（３）＊……
＊ｍ２（ｘ）                            （１５）
次に、ｍ２（０）を６で割ってその余りを２つめのダイスの目とする（ただし余り０はダイスの目を６とする）。
そして、前記サーバ装置１０のゲーム手段１０１０は、２つめのダイスの目のデータを各クライアント装置２０に送信することにより、各クライアント装置２０の表示手段２００６に２つめのダイスの目を表示させる（ステップＳ４２）。
【００５６】
このように２つのダイスの目が決定することで、クラップスの勝敗が決定すると（ステップＳ４４で“Ｙ”）、賭け金の配当などの処理が実行される（ステップＳ４６）。
クラップスの勝敗が決定しないと（ステップＳ４４で“Ｎ”）ステップＳ３４２に戻る。
ゲームを続行するか否かの選択を行い（ステップＳ４８）、続行する場合（ステップＳ４８で“Ｙ”）にはステップＳ２２に移行し、続行しない場合（ステップＳ４８で“Ｎ”）には終了する。
【００５７】
以上説明したように、本実施の形態によれば、前記ハッシュデータＨが前記各クライアント装置２０の表示手段２００６によって表示された後、前記ゲーム用データｍ１、ｍ２の双方が前記ゲーム用データとして前記サーバ装置１０に送信される。前記ゲーム用データｍ１、ｍ２に対する改竄などの不正行為があると、前記ハッシュデータＨと前記ゲーム用データｍ１、ｍ２との関係が矛盾することになり、不正行為を発見することが可能となる。
また、本実施の形態では、第１乃至第３の参考例に比較して、乱数Ｍからゲーム用データを生成する際に素数を選択する処理が必要ないため、この処理に要する時間を短縮することができ、処理を高速化する上で有利である。
また、本実施の形態においても、前記乱数Ｍのビット長を長くするほど、ハッシュデータなどからゲーム用データを算出することを困難にでき、前記ビット長を５００ビット以上にすれば、事実上ゲーム用データを算出することが不可能であるといえる。
【００５８】
また、前記ハッシュデータＨに対して、前述したようにタイムスタンプ付のデジタルサインがなされることによって、ハッシュデータＨの送信元、送信日時を特定することが可能となる。
したがって、あるハッシュデータＨを送信したこと自体を否定したり、送信したハッシュデータＨの送信日時を偽ったりすることを防止することができ、不正行為を抑制する上で有利である。
また、本実施の形態においても、前記各クライアント装置１０が前記賭けデータを前記サーバ装置１０に送信するにあたって、前記賭けデータに対して各プレーヤのデジタルサインを行ない、サーバ装置で前記賭けデータにタイムスタンプが付されるように構成すれば、前記賭けデータの送信元、送信日時を特定することが可能となる。
この場合には、前記賭けデータを送信したこと自体を否定したり、送信した賭けデータの送信日時を偽ったりすることを防止することができ、不正行為を抑制する上で有利である。
【００５９】
また、ダイスの目を決定するための演算の過程で各クライアント装置２０の個人認証装置２２で生成されたゲーム用データｍ１、ｍ２の全てが使用されるため、各プレーヤに対して公平性を保つことができる。
また、前記個人認証装置２２を用いてプレーヤの認証を行うことにより、ギャンブルを行うプレーヤの制限（年齢制限）を容易に行うことができる。
【００６０】
また、ステップＳ４０、Ｓ４２の動作において、各クライアント装置２０の表示手段２００６においてダイスが転がる様子を示す画像を表示すれば、視覚的な効果を向上させる上で好ましい。
【００６１】
なお、本例では、乱数Ｍの最上位ビットから所定ビット毎に区切って、初めの２つのデータをゲーム用データｍ１、ｍ２として生成し、これらを１回のゲームを行うためのデータとして使用した。
しかしながら、乱数Ｍの最上位ビットから所定ビット毎に区切ることによって、前記ｍ１、ｍ２に続くデータｍ３、ｍ４、……を生成することにより、これらｍ３以降のデータを２回目以降のゲーム、すなわち２回目以降のゲームにおけるダイスの目として使用してもよい。
【００６２】
また、本実施の形態は、本発明をダイスの目が１乃至６となるゲームであるクラップスに適用した場合について説明したが、ゲーム用データとして必要な数値の範囲を変えることによって、第２、第３の参考例と同様に、ルーレットやブラックジャック、その他のゲームに広く適用することが可能である。
すなわち、ゲーム用データとして必要な数値の範囲を１〜ｋとすれば、ゲームデータの排他的論理和をｋで割った余りの値が０〜（ｋ−１）となる。したがって、このｋの値を任意に設定すればよい。
また、前記乱数Ｍを、乱数Ｍの最上位ビットから所定ビット毎に区切ることによって得た複数のデータを２回目以降のゲームに使用できることはゲームの種類に関係しない。例えば、前記ゲームがカードを用いるものならば前記各データを２回目以降のゲームにおけるカードの数とマークを特定するために使用し、前記ゲームがルーレットならば前記各データを２回目以降のルーレットの目を特定するために使用すればよい。
【００６３】
なお、本実施の形態では、前記乱数Ｍに基づくハッシュデータＨの生成と、該ハッシュデータＨに対するタイムスタンプ付デジタルサインの付加を前記ＰＫＩエンジン２２０８で行ったが、この２つの動作は、前記ＣＰＵ２２１４あるいは前記クライアント制御手段２００４で行ってもかまわない。
【００６４】
また、本実施の形態においても、第１の参考例と同様に、前記種情報が改竄された場合、その不正を発見できる。したがって、各情報処理装置は種情報を同時に送り必要はなく、異なった時刻に情報管理装置に送信できる利点がある。
【００６５】
なお、第１乃至第３の参考例では、各子プレーヤのクライアント装置２０においてのみ第１、第２素数、合成数を生成し、これら第１、第２素数、合成数をサーバ装置１０に送信することでゲーム用データを構成するものとして説明した。
しかしながら、親プレーヤのクライアント装置２０においても該親プレーヤに対応する第１、第２素数、合成数を生成してサーバ装置１０に送信し、この親プレーヤに対応する第１、第２素数、合成数と、各子プレーヤのクライアント装置２０からサーバ装置１０に送信された第１、第２素数、合成数とに基づいてサーバ装置１０がゲーム用データを作成するようにしてもよい。
この場合には、親プレーヤを除く子プレーヤの全てが共謀して第１、第２素数、合成数を生成したとしても、親プレーヤの第１、第２素数、合成数がゲーム用データを構成するために用いられるため、該ゲーム用データが共謀した子プレーヤの意図に関わらず無作為なものとなり、不正行為を防止することができる。
【００６６】
また、本実施の形態では、前記各クライアント装置２０においてのみ前記乱数、ハッシュデータを生成し、これら乱数、ハッシュデータをサーバ装置１０に送信することでゲーム用データを構成するものとして説明した。
しかしながら、親プレーヤのクライアント装置２０においても該親プレーヤに対応する乱数、ハッシュデータを生成してサーバ装置１０に送信し、この親プレーヤに対応する乱数、ハッシュデータと、各子プレーヤのクライアント装置２０からサーバ装置１０に送信された乱数、ハッシュデータとに基づいてサーバ装置１０がゲーム用データを作成するようにしてもよい。
この場合において、子プレーヤの全てが共謀して乱数、ハッシュデータを生成したとしても、親プレーヤの乱数、ハッシュデータがゲーム用データを構成するために用いられるため、該ゲーム用データが共謀した子プレーヤの意図に関わらず無作為なものとなり、不正行為を防止することができる。
【００６７】
【発明の効果】
以上説明したように本発明によれば、ゲームを行うプレーヤの不正行為を防止することができ、ゲームをギャンブルとして行う場合に有利である。
【図面の簡単な説明】
【図１】  第１乃至第３の参考例および本発明の本実施の形態におけるサーバ装置およびクライアント装置の概略構成を示すブロック図である。
【図２】  第１乃至第３の参考例および本発明の実施の形態における通信ゲームシステムの概略構成を示す構成図である。
【図３】  個人認証装置の外観図である。
【図４】  個人認証装置の構成を示すブロック図である。
【図５】  第１の参考例の動作を示すフローチャートである。
【図６】  メニュー画面の説明図である。
【図７】  クラップスを選択した際の表示手段の画面の説明図である。
【図８】  ルーレットを選択した際の表示手段の画面の説明図である。
【図９】  第２の参考例の動作を示すフローチャートである。
【図１０】  ブラックジャックを選択した際の表示手段の画面の説明図である。
【図１１】  第３の参考例の動作を示すフローチャートである。
【図１２】  本実施の形態の動作を示すフローチャートである。
【図１３】  クラップスを選択した際の表示手段の画面の説明図である。
【符号の説明】
１００……通信ゲームシステム、１０……サーバ装置、１００２……サーバ通信手段、１００４……サーバ制御手段、１００６……表示手段、１０１０……ゲーム手段、２０……クライアント装置、２００２……クライアント通信手段、２００４……クライアント制御手段、２００６……表示手段、２２……個人認証装置。
【図１】
0003912514.tif 000002
【図２】
0003912514.tif 000003
【図３】
0003912514.tif 000004
【図４】
0003912514.tif 000005
【図５】
0003912514.tif 000006
【図６】
0003912514.tif 000007
【図７】
0003912514.tif 000008
【図８】
0003912514.tif 000009
【図９】
0003912514.tif 000010
【図１０】
0003912514.tif 000011
【図１１】
0003912514.tif 000012
【図１２】
0003912514.tif 000013
【図１３】
0003912514.tif 000014