(57)【要約】【課題】利用者に悪い心証を与えずに、意図的な不正アクセスのみを適切に防止することができるサーバ装置を提供する。【解決手段】利用者は、まず、利用者端末２１を使用して当該ゲームにおける任意のゲーム画面に対応するゲームコマンドをサーバ装置２２に送信する。サーバ装置２２は、受信した当該ゲームコマンドに含まれる送信元の利用者端末２１の識別情報、及び、第１シリアル番号を取得する。そして、サーバ装置２２は、ゲームコマンド送信元の利用者端末２１の識別情報に基づいて、サーバ装置２２内に記憶している第２シリアル番号を取得する。さらに、サーバ装置２２は、当該第１シリアル番号と当該第２シリアル番号を比較し、比較の結果及び当該ゲームコマンドに含まれる画面データの識別情報に基づいて画面データを決定する。画面データを決定すると、サーバ装置２２は、ゲームコマンド送信元の利用者端末２１の識別情報に基づいて、当該画面データを送信する。【選択図】　　　図１
2004024576.tif 000002
【特許請求の範囲】
【請求項１】
ネットワークを介して、利用者端末との間でゲームコマンド及びゲーム進行データを送受信してゲームを進行するサーバ装置であって、
前記ゲームコマンドは、当該ゲームコマンドの送信元の前記利用者端末の識別情報と、当該利用者端末が要求するゲーム進行データの進行度と、前記利用者端末におけるゲーム進行度を表す第１シリアル番号とを含み、
既に前記利用者端末に送信した前記ゲーム進行データの進行度を示す第２シリアル番号を、前記利用者端末の識別情報と対応付けて記憶する記憶手段と、
前記利用者端末から前記ゲームコマンドを受信するゲームコマンド受信手段と、
前記ゲームコマンドから送信元の利用者端末の識別情報を取得する送信元端末識別情報取得手段と、
前記ゲームコマンドから前記第１シリアル番号を取得する第１シリアル番号取得手段と、
前記記憶手段を参照し、前記端末の識別情報に基づいて、前記第２シリアル番号を取得する第２シリアル番号取得手段と、
前記第１シリアル番号と前記第２シリアル番号とを比較する比較手段と、
前記比較手段の比較結果及び前記ゲームコマンド中の前記ゲーム進行データの進行度に基づいて送信すべきゲーム進行データを決定するゲーム進行データ決定手段と、
当該ゲーム進行データを前記送信元の利用者端末に送信するゲーム進行データ送信手段と、を備えることを特徴とするサーバ装置。
【請求項２】
前記ゲーム進行データ送信手段は、前記比較結果に基づいて、前記ゲームコマンド中の前記ゲーム進行データの進行度が、新たなゲーム進行データに対応すると判断した場合、当該新たなゲーム進行データを送信することを特徴とする請求項１に記載のサーバ装置。
【請求項３】
前記ゲーム進行データ送信手段は、前記新たなゲーム進行データ中に、次のゲーム進行度に対応するゲーム進行データへのリンク情報を含めることを特徴とする請求項２に記載のサーバ装置。
【請求項４】
前記ゲーム進行データ送信手段により送信された最新のゲーム進行データを、前記端末の識別情報に対応付けて記憶するゲーム進行データ記憶手段を更に備えることを特徴とする請求項１乃至３のいずれか一項に記載のサーバ装置。
【請求項５】
前記比較結果に基づいて、前記ゲームコマンド中の前記ゲーム進行データの進行度が新たなゲーム進行データに対応しないと前記ゲーム進行データ決定手段が判断した場合、前記ゲームコマンド中の前記ゲーム進行データの進行度に対応するゲーム進行データがゲーム展開に影響を与えるか否かを判断する影響判断手段をさらに備え、
前記ゲームコマンドに対応するゲーム進行データがゲーム展開に影響を与えないと前記影響判断手段が判断した場合、前記ゲーム進行データ送信手段は、前記ゲームコマンドに対応するゲーム進行データを送信することを特徴とする請求項１乃至４のいずれか一項に記載のサーバ装置。
【請求項６】
前記比較結果に基づいて、前記ゲームコマンド中の前記ゲーム進行データの進行度が新たなゲーム進行データに対応しないと前記ゲーム進行データ決定手段が判断した場合、前記ゲームコマンド中の前記ゲーム進行データの進行度に対応するゲーム進行データがゲーム展開に影響を与えるか否かを判断する影響判断手段と、
前記ゲームコマンドに対応するゲーム進行データがゲーム展開に影響を与えると前記影響判断手段が判断した場合、前記ゲームコマンドに対応するゲーム進行データが前記最新のゲーム進行データと一致するか否かを判断する最新ゲーム進行データ判断手段と、をさらに備え、
前記ゲームコマンドに対応するゲーム進行データが前記最新のゲーム進行データと一致すると前記最新ゲーム進行データ判断手段が判断した場合、前記ゲーム進行データ送信手段は前記最新のゲーム進行データを送信することを特徴とする請求項４に記載のサーバ装置。
【請求項７】
前記比較結果に基づいて、前記ゲームコマンド中の前記ゲーム進行データの進行度が新たなゲーム進行データに対応しないと前記ゲーム進行データ決定手段が判断した場合、前記ゲームコマンド中の前記ゲーム進行データの進行度に対応するゲーム進行データがゲーム展開に影響を与えるか否かを判断する影響判断手段と、
前記ゲームコマンドに対応するゲーム進行データがゲーム展開に影響を与えると前記影響判断手段が判断した場合、前記ゲームコマンドに対応するゲーム進行データが前記最新のゲーム進行データと一致するか否かを判断する最新ゲーム進行データ判断手段と、をさらに備え、
前記ゲームコマンドに対応するゲーム画面のゲーム進行データが前記最新のゲーム進行データと一致しないと前記最新ゲーム進行データ判断手段が判断した場合、前記ゲーム進行データ送信手段は警告データを送信することを特徴とする請求項４に記載のサーバ装置。
【請求項８】
前記ゲームコマンドはＵＲＬであり、前記ゲーム進行データは暗号化されていることを特徴とする請求項１乃至７のいずれか一項に記載のサーバ装置。
【請求項９】
ネットワークを介して、利用者端末との間でゲームコマンド及びゲーム進行データを送受信してゲームを進行するコンピュータにより実行されるプログラムであって、
前記ゲームコマンドは、当該ゲームコマンドの送信元の前記利用者端末の識別情報と、当該利用者端末が要求するゲーム進行データの進行度と、前記利用者端末におけるゲーム進行度を表す第１シリアル番号とを含み、
既に前記利用者端末に送信した前記ゲーム進行データの進行度を示す第２シリアル番号を、前記利用者端末の識別情報と対応付けて記憶する記憶手段、
前記利用者端末から前記ゲームコマンドを受信するゲームコマンド受信手段、
前記ゲームコマンドから送信元の利用者端末の識別情報を取得する送信元端末識別情報取得手段、
前記ゲームコマンドから前記第１シリアル番号を取得する第１シリアル番号取得手段、
前記記憶手段を参照し、前記端末の識別情報に基づいて、前記第２シリアル番号を取得する第２シリアル番号取得手段、
前記第１シリアル番号と前記第２シリアル番号とを比較する比較手段、
前記比較手段の比較結果及び前記ゲームコマンド中の前記ゲーム進行データの進行度に基づいて送信すべきゲーム進行データを決定するゲーム進行データ決定手段、
当該ゲーム進行データを前記送信元の利用者端末に送信するゲーム進行データ送信手段、として前記コンピュータを機能させることを特徴とするプログラム。
【請求項１０】
前記ゲーム進行データ送信手段は、前記比較結果に基づいて、前記ゲームコマンド中の前記ゲーム進行データの進行度が、新たなゲーム進行データに対応すると判断した場合、当該新たなゲーム進行データを送信することを特徴とする請求項９に記載のプログラム。
【請求項１１】
前記ゲーム進行データ送信手段は、前記新たなゲーム進行データ中に、次のゲーム進行度に対応するゲーム進行データへのリンク情報を含めることを特徴とする請求項１０に記載のプログラム。
【請求項１２】
前記ゲーム進行データ送信手段により送信された最新のゲーム進行データを、前記端末の識別情報に対応付けて記憶するゲーム進行データ記憶手段を更に備えることを特徴とする請求項９乃至１１のいずれか一項に記載のプログラム。
【請求項１３】
前記比較結果に基づいて、前記ゲームコマンド中の前記ゲーム進行データの進行度が新たなゲーム進行データに対応しないと前記ゲーム進行データ決定手段が判断した場合、前記ゲームコマンド中の前記ゲーム進行データの進行度に対応するゲーム進行データがゲーム展開に影響を与えるか否かを判断する影響判断手段をさらに備え、
前記ゲームコマンドに対応するゲーム進行データがゲーム展開に影響を与えないと前記影響判断手段が判断した場合、前記ゲーム進行データ送信手段は、前記ゲームコマンドに対応するゲーム進行データを送信することを特徴とする請求項９乃至１２のいずれか一項に記載のプログラム。
【請求項１４】
前記比較結果に基づいて、前記ゲームコマンド中の前記ゲーム進行データの進行度が新たなゲーム進行データに対応しないと前記ゲーム進行データ決定手段が判断した場合、前記ゲームコマンド中の前記ゲーム進行データの進行度に対応するゲーム進行データがゲーム展開に影響を与えるか否かを判断する影響判断手段と、
前記ゲームコマンドに対応するゲーム進行データがゲーム展開に影響を与えると前記影響判断手段が判断した場合、前記ゲームコマンドに対応するゲーム進行データが前記最新のゲーム進行データと一致するか否かを判断する最新ゲーム進行データ判断手段と、をさらに備え、
前記ゲームコマンドに対応するゲーム進行データが前記最新のゲーム進行データと一致すると前記最新ゲーム進行データ判断手段が判断した場合、前記ゲーム進行データ送信手段は前記最新のゲーム進行データを送信することを特徴とする請求項１２に記載のプログラム。
【請求項１５】
前記比較結果に基づいて、前記ゲームコマンド中の前記ゲーム進行データの進行度が新たなゲーム進行データに対応しないと前記ゲーム進行データ決定手段が判断した場合、前記ゲームコマンド中の前記ゲーム進行データの進行度に対応するゲーム進行データがゲーム展開に影響を与えるか否かを判断する影響判断手段と、
前記ゲームコマンドに対応するゲーム進行データがゲーム展開に影響を与えると前記影響判断手段が判断した場合、前記ゲームコマンドに対応するゲーム進行データが前記最新のゲーム進行データと一致するか否かを判断する最新ゲーム進行データ判断手段と、をさらに備え、
前記ゲームコマンドに対応するゲーム画面のゲーム進行データが前記最新のゲーム進行データと一致しないと前記最新ゲーム進行データ判断手段が判断した場合、前記ゲーム進行データ送信手段は警告データを送信することを特徴とする請求項１２に記載のプログラム。
【請求項１６】
前記ゲームコマンドはＵＲＬであり、前記ゲーム進行データは暗号化されていることを特徴とする請求項９乃至１５のいずれか一項に記載のプログラム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明はネットワークを利用したゲームシステムにおける不正防止技術に関する。
【０００２】
【従来の技術】
従来から、ＨＴＴＰ（ＨｙｐｅｒＴｅｘｔ　Ｔｒａｎｓｆｅｒ　Ｐｒｏｔｏｃｏｌ）を利用してゲームを提供するネットワークゲームシステムが普及している。かかるシステムでは、利用者はパソコンや各種携帯端末でウェブブラウザを起動し、ゲームを提供するサーバからゲーム画面を表示するハイパーテキストを受信する。当該ゲーム画面には、ゲームコマンドに対応してリンクボタンが表示されており、利用者の操作によりいずれかのリンクボタンが選択されると、当該リンクボタンに対応づけされたＵＲＬ（Ｕｎｉｆｏｒｍ　Ｒｅｓｏｕｒｃｅ　Ｌｏｃａｔｏｒ）がゲームコマンドとしてサーバに送信されるようになっている。サーバでは、当該ゲームコマンドを受信し、当該ＵＲＬの内容に応じたハイパーテキストを生成し、画面データとして再び利用者の携帯端末等に送信する。
【０００３】
通常、ウェブブラウザには「戻る」機能が備えられている。これは、過去に受信したハイパーテキスト（画面データ）を再び携帯端末等のモニタに呼び出すための機能である。ウェブブラウザは、受信済のハイパーテキストをハードディスク装置等に順次保存するようになっており、「戻る」機能は、この保存していたハイパーテキストを再び呼び出し、モニタ上に表示するのである。
【０００４】
このような「戻る」機能を備えたウェブブラウザに対して、ゲームデータたるハイパーテキストを供給すると、利用者がゲーム画面に表示された複数のリンクボタンのうち１つを押下して、その応答であるハイパーテキストを受信した場合に、それが利用者にとって望ましくないゲーム進行であれば、利用者は「戻る」機能を利用して元のゲーム画面をモニタに呼び出し、他のリンクボタンを再選択できてしまう。即ち、利用者は「戻る」機能を利用することにより、全てのゲームコマンドを試すことができてしまうのである。
【０００５】
例えば、三択クイズゲームをＨＴＴＰを利用して、サーバから携帯端末等に提供する場合、利用者は、ゲーム画面に表示された３つの選択肢のいずれかを試し、間違えれば再び「戻る」機能を利用して元のゲーム画面を呼び出し、他の選択肢を試すことができてしまうのである。また、推理アドベンチャーゲームをＨＴＴＰを利用してサーバから携帯端末等に供給する場合、利用者はゲーム画面においてある選択肢を試したところ、ゲームオーバー等の望ましくないゲーム展開になってしまった場合、「戻る」機能を利用して元のゲーム画面を呼び出し、他の選択肢を再度試すことができてしまうのである。このような不正アクセスを放置していたのでは利用者に緊張感がなくなり、ゲーム本来の魅力を損ねかねない。
【０００６】
この問題を解決するために、特開２００１−２３９０６３号公報は、ゲームを提供するサーバからゲーム画面を表示するハイパーテキストを受信した際に、ゲームの進行度を数値として毎回ハードディスク等に記憶する方法を記載している。これによれば、利用者が所定のハイパーテキストを呼び出した場合、ゲームの進行度を検証することで、当該ハイパーテキストを当該利用者が過去に閲覧したことがあるか否かを確認することができる。よって、当該ハイパーテキストを利用者が過去に閲覧したことがあった場合、警告メッセージ等を表示することで利用者の不正アクセスを防止することができる。
【０００７】
【発明が解決しようとする課題】
しかし、上記公報に記載の方法では、ネットワークの混雑といった利用者の予期せぬ接続不良などによって目的のハイパーテキストを正しく受信できなかった場合に利用者が再読込みをした際にも、その再読込み行為は不正アクセスとして処理されてしまうという問題があった。このため、利用者に悪意が無かったにも関わらず警告メッセージを表示することで、利用者に不快感を与えてしまっていた。また、不正アクセスであったとしても、「ゲームの遊び方の説明」のようにゲーム展開に重大な影響を与えない画面であれば、ゲームの進行上利用者に当該画面を表示した方がよいものもある。
【０００８】
本発明は、以上の点に鑑みてなされたものであり、意図的な不正アクセスを適切に防止することができるサーバ装置及びプログラムを提供することを目的とする。
【０００９】
【課題を解決するための手段】
本発明の１つの観点では、ネットワークを介して、利用者端末との間でゲームコマンド及びゲーム進行データを送受信してゲームを進行するサーバ装置であって、前記ゲームコマンドは、当該ゲームコマンドの送信元の前記利用者端末の識別情報と、当該利用者端末が要求するゲーム進行データの進行度と、前記利用者端末におけるゲーム進行度を表す第１シリアル番号とを含み、既に前記利用者端末に送信した前記ゲーム進行データの進行度を示す第２シリアル番号を、前記利用者端末の識別情報と対応付けて記憶する記憶手段と、前記利用者端末から前記ゲームコマンドを受信するゲームコマンド受信手段と、前記ゲームコマンドから送信元の利用者端末の識別情報を取得する送信元端末識別情報取得手段と、前記ゲームコマンドから前記第１シリアル番号を取得する第１シリアル番号取得手段と、前記記憶手段を参照し、前記端末の識別情報に基づいて、前記第２シリアル番号を取得する第２シリアル番号取得手段と、前記第１シリアル番号と前記第２シリアル番号とを比較する比較手段と、前記比較手段の比較結果及び前記ゲームコマンド中の前記ゲーム進行データの進行度に基づいて送信すべきゲーム進行データを決定するゲーム進行データ決定手段と、当該ゲーム進行データを前記送信元の利用者端末に送信するゲーム進行データ送信手段と、を備える。
【００１０】
上記のサーバ装置は、インターネットをはじめとするネットワークを通じ、利用者端末との間でゲームコマンド及びゲーム進行データの送受信をすることでゲームを進行する。利用者端末は、ネットワークを介しての通信機能を有する任意のゲーム機、パソコン、携帯電話、ＰＤＡ等の端末装置とすることができ、通信プロトコルは問わない。ゲームコマンドは、例えば、ＵＲＬが採用でき、第１シリアル番号は例えばＵＲＬに付加されたＵＲＬシリアル番号が採用できる。第２シリアル番号は例えばサーバ装置が有する利用者ＤＢに記憶されたＤＢシリアル番号が採用できる。
【００１１】
利用者は、ネットワークを介してゲームを行う場合、利用者端末を使用して当該ゲームにおける特定のゲーム進行度に対応するゲームコマンドをサーバ装置に送信する。サーバ装置は、利用者端末からゲームコマンドを受信し、当該ゲームコマンドに含まれる送信元の利用者端末の識別情報、及び、第１シリアル番号を取得する。そして、サーバ装置は、送信元の利用者端末の識別情報に基づいて、サーバ装置内に記憶している第２シリアル番号を取得する。さらに、サーバ装置は、当該第１シリアル番号と当該第２シリアル番号を比較し、比較の結果及び当該ゲームコマンドに含まれるゲーム進行データの進行度に基づいてゲーム進行データを決定する。ゲーム進行データを決定すると、サーバ装置は、ゲームコマンド送信元の利用者端末の識別情報に基づいて、当該ゲーム進行データを送信する。当該利用者端末は、受信したゲーム進行データに基づいてゲームを進行する。
【００１２】
よって、サーバ装置は、ゲームコマンドに含まれるゲーム進行データの進行度、及び、第１シリアル番号と第２シリアル番号の比較結果に基づいて、利用者によるゲーム進行データの要求が不正なものでないかを簡便に判断し、適切なゲーム進行データを送信することができる。
【００１３】
上記のサーバ装置の一態様では、前記ゲーム進行データ送信手段は、前記比較結果に基づいて、前記ゲームコマンド中の前記ゲーム進行データの進行度が、新たなゲーム進行データに対応すると判断した場合、当該新たなゲーム進行データを送信する。
【００１４】
これによれば、第１シリアル番号と第２シリアル番号を比較した結果、利用者が過去に受信していない新たなゲーム進行データを要求していると判断した場合、サーバ装置は、当該ゲーム進行データをゲームコマンド送信元の利用者端末に送信する。よって、サーバ装置は、利用者がゲーム進行に従った正しい順序で新しいゲーム進行データを要求した場合、迅速に当該ゲーム進行データを送信することができる。
【００１５】
上記のサーバ装置の他の一態様では、前記ゲーム進行データ送信手段は、前記新たなゲーム進行データ中に、次のゲーム進行度に対応するゲーム進行データへのリンク情報を含める。これによれば、利用者は、送信されたゲーム進行データに含まれるリンク情報を利用することで、ゲーム進行に従って容易に次のゲーム進行データを要求することができる。
【００１６】
上記のサーバ装置のさらに他の一態様では、前記ゲーム進行データ送信手段により送信された最新のゲーム進行データを、前記端末の識別情報に対応付けて記憶するゲーム進行データ記憶手段を更に備える。これによれば、サーバ装置は、利用者端末の識別情報に対応付けて最新のゲーム進行データを、例えば、サーバ装置が有する利用者ＤＢに記憶する。よって、サーバ装置は、任意の利用者端末に送信した最新のゲーム進行データを常に把握し、その後に利用者が要求するゲーム進行データの適否の判断に利用することができる。
【００１７】
上記のサーバ装置のさらに他の一態様は、前記比較結果に基づいて、前記ゲームコマンド中の前記ゲーム進行データの進行度が新たなゲーム進行データに対応しないと前記ゲーム進行データ決定手段が判断した場合、前記ゲームコマンド中の前記ゲーム進行データの進行度に対応するゲーム進行データがゲーム展開に影響を与えるか否かを判断する影響判断手段をさらに備え、前記ゲームコマンドに対応するゲーム進行データがゲーム展開に影響を与えないと前記影響判断手段が判断した場合、前記ゲーム進行データ送信手段は、前記ゲームコマンドに対応するゲーム進行データを送信する。
【００１８】
この態様によれば、サーバ装置は、ゲームコマンドに含まれるゲーム進行データがゲーム展開に影響を与えるか否かを判断する。ゲーム展開に影響を与えるとは、例えば、クイズゲームにおける問題や解答の進行度に対応するゲーム進行データなど、その後のゲーム展開が変化する選択を利用者が行うことが可能となるような場合をいう。また、ゲーム展開に影響を与えないとは、例えば、クイズゲームにおける遊び方の説明にかかるゲーム画面に対応するゲーム進行データなど、それ自体ではその後のゲーム進行に大きな影響を及ぼさないようなものをいう。
【００１９】
サーバ装置は、利用者がゲーム進行に従って順次ゲーム進行データを要求しているのではない場合、利用者端末から受信したゲームコマンドに基づいて当該要求しているゲーム進行データがその後のゲーム展開に影響を与えるか否かを判断する。そして、当該要求しているゲーム進行データがゲーム展開に影響を与えない場合、サーバ装置は要求されたゲーム進行データをゲームコマンド送信元の利用者端末に送信する。よって、サーバ装置は、利用者が要求しているゲーム進行データがゲーム展開に影響を与えない場合、当該要求が不正か否かの判断をせず迅速にゲーム進行データを送信することができる。また、当該要求しているゲーム進行データがその後のゲーム展開に影響を与えない場合、当該要求が不正であるか否かに関わらず当該要求にこたえることで、利用者端末上で警告が表示される可能性を減らし、利用者の心証を害する機会を減らすことができる。
【００２０】
上記のサーバ装置のさらに他の一態様は、前記比較結果に基づいて、前記ゲームコマンド中の前記ゲーム進行データの進行度が新たなゲーム進行データに対応しないと前記ゲーム進行データ決定手段が判断した場合、前記ゲームコマンド中の前記ゲーム進行データの進行度に対応するゲーム進行データがゲーム展開に影響を与えるか否かを判断する影響判断手段と、前記ゲームコマンドに対応するゲーム進行データがゲーム展開に影響を与えると前記影響判断手段が判断した場合、前記ゲームコマンドに対応するゲーム進行データが前記最新のゲーム進行データと一致するか否かを判断する最新ゲーム進行データ判断手段と、をさらに備え、前記ゲームコマンドに対応するゲーム進行データが前記最新のゲーム進行データと一致すると前記最新ゲーム進行データ判断手段が判断した場合、前記ゲーム進行データ送信手段は前記最新のゲーム進行データを送信する。
【００２１】
この態様によれば、サーバ装置は、利用者がゲーム進行に従って順次ゲーム進行データを要求しているのではない場合、利用者端末から受信したゲームコマンドに基づいて当該要求しているゲーム進行データがその後のゲーム展開に影響を与えるか否かを判断する。そして、当該要求しているゲーム進行データがゲーム展開に影響を与える場合、当該要求しているゲーム進行データが当該ゲームコマンド送信元の利用者端末における最新のゲーム進行データか否かを判断する。当該要求しているゲーム進行データが当該最新のゲーム進行データであると判断した場合、サーバ装置は、予め記憶している当該最新のゲーム進行データを取得し、当該ゲームコマンド送信元の利用者端末に送信する。
【００２２】
これによれば、サーバ装置は、利用者からゲーム展開に影響を与える最新のゲーム進行データへのアクセス要求を受信した場合、当該最新のゲーム進行データを内部処理によって新たに生成する必要がなく、サーバ装置の負担を軽減し、迅速に当該ゲーム進行データを利用者端末へ送信することができる。また、当該ゲーム進行データを新たに生成しないため、利用者の最新のアクセス要求にこたえることによるゲーム展開への変化はない。さらに、当該要求しているゲーム進行データが最新のゲーム進行データであった場合、当該要求が不正であるか否かに関わらず当該要求にこたえることで、利用者端末上で警告が表示される可能性を減らし、利用者の心証を害する機会を減らすことができる。
【００２３】
上記のサーバ装置のさらに他の一態様は、前記比較結果に基づいて、前記ゲームコマンド中の前記ゲーム進行データの進行度が新たなゲーム進行データに対応しないと前記ゲーム進行データ決定手段が判断した場合、前記ゲームコマンド中の前記ゲーム進行データの進行度に対応するゲーム進行データがゲーム展開に影響を与えるか否かを判断する影響判断手段と、前記ゲームコマンドに対応するゲーム進行データがゲーム展開に影響を与えると前記影響判断手段が判断した場合、前記ゲームコマンドに対応するゲーム進行データが前記最新のゲーム進行データと一致するか否かを判断する最新ゲーム進行データ判断手段と、をさらに備え、前記ゲームコマンドに対応するゲーム画面のゲーム進行データが前記最新のゲーム進行データと一致しないと前記最新ゲーム進行データ判断手段が判断した場合、前記ゲーム進行データ送信手段は警告データを送信する。
【００２４】
この態様によれば、サーバ装置は、利用者がゲーム進行に従って順次ゲーム進行データを要求しているのではなく、且つ、ゲーム展開に影響を与える最新ではないゲーム進行データへのアクセスを要求していると判断した場合、当該利用者が使用する利用者端末に警告データを送信する。よって、利用者に当該要求が不正なアクセス要求である旨を認識させ、反省を促し、不正なアクセス要求の再発を防止することができる。
【００２５】
上記のサーバ装置のさらに他の一態様では、前記ゲームコマンドはＵＲＬであり、前記ゲーム進行データは暗号化されている。これによれば、ゲームコマンドに付加されるゲーム進行データはＵＲＬに暗号化されて付加されているので、利用者は当該ゲームコマンドからは当該ゲーム進行データの内容を知ることができず、利用者による改竄を防止することができる。
【００２６】
本発明の他の観点では、ネットワークを介して、利用者端末との間でゲームコマンド及びゲーム進行データを送受信してゲームを進行するコンピュータにより実行されるプログラムであって、前記ゲームコマンドは、当該ゲームコマンドの送信元の前記利用者端末の識別情報と、当該利用者端末が要求するゲーム進行データの進行度と、前記利用者端末におけるゲーム進行度を表す第１シリアル番号とを含み、既に前記利用者端末に送信した前記ゲーム進行データの進行度を示す第２シリアル番号を、前記利用者端末の識別情報と対応付けて記憶する記憶手段、前記利用者端末から前記ゲームコマンドを受信するゲームコマンド受信手段、前記ゲームコマンドから送信元の利用者端末の識別情報を取得する送信元端末識別情報取得手段、前記ゲームコマンドから前記第１シリアル番号を取得する第１シリアル番号取得手段、前記記憶手段を参照し、前記端末の識別情報に基づいて、前記第２シリアル番号を取得する第２シリアル番号取得手段、前記第１シリアル番号と前記第２シリアル番号とを比較する比較手段、前記比較手段の比較結果及び前記ゲームコマンド中の前記ゲーム進行データの進行度に基づいて送信すべきゲーム進行データを決定するゲーム進行データ決定手段、当該ゲーム進行データを前記送信元の利用者端末に送信するゲーム進行データ送信手段、として前記コンピュータを機能させる。
【００２７】
このプログラムをコンピュータにおいて実行することにより、上記のサーバ装置を実現することができる。また、上記のサーバ装置において実現される各態様も同様に実現することができる。
【００２８】
【発明の実施の形態】
以下、図面を参照して本発明の好適な実施の形態について説明する。なお、以下の実施形態では、通信機能を有する端末装置として携帯電話を利用するシステムに本発明を適用した場合について説明する。
【００２９】
［不正アクセス防止システム］
図１に、本発明の実施形態にかかる不正アクセス防止システム１００の概略構成を示す。図１において、不正アクセス防止システム１００は、利用者携帯端末２１及びサービス提供会社２６のサーバ２２が、ネットワーク２０を介して通信可能に構成されている。ネットワーク２０のもっとも好適な例は、インターネットである。なお、不正アクセスとは、ゲーム展開に影響のある画面へゲーム進行における順序どおりではなく、遡ってアクセスすることをいうものとする。
【００３０】
利用者携帯端末２１は、サーバ２２へのアクセス、ウェブページの閲覧、及び所定のゲームの実行等を行う際に使用する端末装置である。利用者携帯端末２１は、ネットワーク２０を介しての通信機能及びウェブブラウザ機能を有し、所定のゲームを実行することができる携帯電話等の端末装置とすることができる。具体的に、利用者は、利用者携帯端末２１においてＵＲＬをサーバ２２に送信し、当該ＵＲＬに基づいてハイパーテキストにより生成されているゲーム画面の元になるデータ（以下、「画面データ」と呼ぶ。）を取得する。そして、利用者携帯端末２１は、当該画面データに基づいてゲームの進行状況に応じたゲーム画面をモニタ８に表示する。なお、この際に利用者携帯端末２１からサーバ２２へ送信されるＵＲＬはゲームの実行中に利用者が入力するゲームコマンドとして機能する。
【００３１】
なお、以上説明したＵＲＬの送信、並びに画面データの受信及び表示は、利用者携帯端末２１がウェブブラウザ機能を実行することにより行われる。また、利用者携帯端末２１に付与された端末ＩＤ等の識別情報は、利用者携帯端末２１が送信するＵＲＬに含まれている。そのため、サーバ２２では、ゲームコマンドとして利用者携帯端末２１から送信されるＵＲＬに基づいて送信元の利用者が使用する利用者携帯端末２１を識別することができる。
【００３２】
図２は、本発明が適用された利用者携帯端末のブロック図である。利用者携帯端末２１は、マイクロプロセッサを主体として構成されたＣＰＵ１、そのＣＰＵ１に対する主記憶装置としてのＲＯＭ２及びＲＡＭ３、画像処理及び音声処理用のＧＰＵ（Ｇｒａｐｈｉｃｓ　Ｐｒｏｃｅｓｓｉｎｇ　Ｕｎｉｔ）７及びＳＰＵ（Ｓｏｕｎｄ　Ｐｒｏｃｅｓｓｉｎｇ　Ｕｎｉｔ）９、入力処理用のキー入力部４、データ入力部１１、並びに、データの送受信処理用の送受信処理部５がバス１２を介して各部と接続されて構成されている。
【００３３】
ＲＯＭ２には、利用者携帯端末２１の全体の動作制御に必要なプログラムとしてのオペレーティングシステムが書き込まれる。ＲＡＭ３は作業メモリとして機能し、ダウンロードしたアプリケーションのデータなどが必要に応じて書き込まれる。
【００３４】
ＧＰＵ７は、装備された液晶等からなる所定のサイズのモニタ８に、送信先電話番号やメールアドレスを入力操作に応じて確認的に表示させたり、必要な機能をガイド的に表示させたり、作成中や着信したメールの内容を表示させたりする制御を行うものである。また、ＧＰＵ７は、サーバからダウンロードしたゲームなどのアプリケーションの画像データ等をＣＰＵ１から受け取って、モニタ８に表示させる。ＳＰＵ９は、着信時の音楽やゲームの効果音などの、楽音データや音源データ等を再生してスピーカ１０から出力させる。
【００３５】
キー入力部４は相手先の電話番号やホームページアドレスの入力の他、メールデータの作成等をおこなうための各種のキーを備えているものである。データ入力部１１は、キー入力部４の操作に応じてメール情報等を作成するものである。
【００３６】
送受信処理部５は、通常の無線公衆回線からの着信、送信の回線制御及び音声データの送受信の他、インターネットを経由するなどして用いられる電子メールやサーバからダウンロードされる各種アプリケーション等におけるデータ送受信を処理するもので、送受信データはアンテナ６を介して授受される。また、携帯電話で送受されるデータはパケットで通信される。
【００３７】
なお、携帯電話をはじめとする利用者携帯端末２１は、上記の他にも、通常の会話のための発着信などの携帯電話等における本来の動作を実行するための各種の構成要素を備えるが、本発明と直接関係しない部分については便宜上説明を省略する。
【００３８】
ここで、ゲームとは、利用者がオンラインで実行する各種のゲームである。本実施形態では、クイズゲームを対象として説明する。また、以下の実施形態では、利用者携帯端末２１が携帯電話であるものとして説明を行うが、本発明の適用は携帯電話には限定されず、携帯型情報端末、携帯型パーソナルコンピュータなど各種の端末装置を利用することができる。
【００３９】
次に、サービス提供会社２６側の構成について説明する。サービス提供会社２６は、ゲーム等をオンラインで楽しむことができるウェブサイトを運営している会社である。サーバ２２は、ゲームデータベース（以下、「ＤＢ」と呼ぶ。）２３、利用者ＤＢ２４及び画面データ保存ＤＢ２５に接続されている。サーバ２２は、ネットワーク２０を介しての通信機能、利用者登録機能、画面データ生成機能などを有する。具体的に、利用者登録機能は、ゲームを実行する利用者に関連する情報を利用者ＤＢ２４に記憶する機能である。また、画面データ生成機能は、利用者携帯端末２１から送信されたＵＲＬをゲームコマンドとして認識し、当該ゲームコマンドに対応した画面データを生成する。
【００４０】
ゲームＤＢ２３には、ゲームの実行をはじめとする各種の処理に必要なプログラムやデータが記憶されている。サーバ２２は、ゲームコマンドたるＵＲＬに基づいて画面データを生成する際、ゲームＤＢ２３の記憶内容を参照するようになっている。
【００４１】
利用者ＤＢ２４は、図３に示すように、サービス提供会社２６に対して既に登録を済ませた利用者の情報を記憶している。利用者には登録時に利用者ＩＤなどの識別情報が発行される。利用者ＤＢ２４は、利用者ＩＤ毎にその利用者の端末ＩＤ、メールアドレス及びＤＢシリアル番号を記憶している。ここで、端末ＩＤとは、利用者携帯端末２１に付随しており、端末毎に固有の識別情報である。また、ＤＢシリアル番号とは、サーバ２２が利用者携帯端末２１に送信した画面データの進行度を表す情報である。
【００４２】
画面データ保存ＤＢ２５は、端末ＩＤをキーとして、サーバ２２が当該端末ＩＤに該当する利用者携帯端末２１に送信した最新の画面データを記憶している。これによれば、詳細は後述するが、利用者が「再読込み」機能などを用いて最新の画面データを再度要求した場合、サーバ２２が内部処理を行うことなく、画面データ保存ＤＢに保存された当該画面データを取得すればよいため、再読込みの際のサーバ２２の処理負担が軽減できる。
【００４３】
［クイズゲーム］
次に、本発明をクイズゲームに適用した例について説明する。クイズゲームとは、ネットワーク２０を介して、利用者が利用者携帯端末２１にゲーム画面として表示されるクイズに解答するゲームである。なお、解答は２つの選択肢から構成されている。
【００４４】
クイズゲームでは、図１に示すように、サーバ２２がゲームＤＢ２３に記憶されたプログラムやデータに基づいて、ネットワーク２０を介し、利用者携帯端末２１にクイズを含む画面データを提供する。利用者は、利用者携帯端末２１において、表示されたクイズに対する解答をサーバ２２に送信し、サーバ２２は当該解答の正誤を判定する。
【００４５】
具体的に、クイズゲームを図４乃至図６を参照して説明する。まず、利用者はクイズゲームを行っているサービス提供会社２６のウェブサイトにアクセスすることで、サーバ２２にアクセスし、利用者登録を行う。利用者は、サービス提供会社２６から提供されるゲームを行いたい場合、必ず予め利用者登録をしなければならない。利用者登録において、サーバ２２は利用者の端末ＩＤ、メールアドレスを取得し、各利用者の識別情報である利用者ＩＤを発行する。そして、サーバ２２は、利用者ＤＢ２４に、利用者ＩＤをキーとして取得した端末ＩＤ及びメールアドレスを記憶する。
【００４６】
そして、利用者からクイズゲームを行う旨のアクセス要求があると、サーバ２２は、ゲームＤＢ２３に記憶されたプログラムやデータに基づいて、ゲームの進行状況に応じたゲーム画面を表す画面データを生成し、利用者携帯端末２１へ送信する。利用者携帯端末２１は、受信した画面データをウェブブラウザ機能を用いてモニタ８に表示する。
【００４７】
図４は、このときモニタ８に表示されるゲーム画面の一例を示している。図４に示すゲーム画面では、上方に出題部５０が表されており、その下に解答の選択肢であるリンクボタン５１及び５２が表されている。ここでは、リンクボタン５１が正解に対応していて、その他のリンクボタン５２は不正解に対応している。
【００４８】
図５は、図４に示されるゲーム画面の元になる画面データのうち、リンクボタン５１を表示するためのリンクタグを示す図である。図５に示すように、リンクボタン５１を表示するためのリンクタグには、リンク先としてＣＧＩ（Ｃｏｍｍｏｎ　Ｇａｔｅｗａｙ　Ｉｎｔｅｒｆａｃｅ）プログラム「ｄｏｍａｉｎ／・・・．ｃｇｉ」が指定されている。また、「？」の後ろには、ＣＧＩプログラムに実行パラメータとして引き渡される引数６０が付加されている。ここでは、引数６０に各画面データ固有の識別情報であるＵＲＬシリアル番号「１」が含められている。
【００４９】
図４に示されるゲーム画面で利用者が５１又は５２のいずれかのリンクボタンを選択すると、それがゲームコマンドたるＵＲＬとしてサーバ２２に送信される。サーバ２２は、当該ゲームコマンドを受信し、所定の条件を満たしていれば、解答にかかるゲーム画面を表す画面データを生成する。この際に、サーバ２２は利用者の解答の正誤を判定する。そして、サーバ２２は、生成した解答にかかる画面データを利用者携帯端末２１へ送信し、利用者携帯端末２１は、受信した当該画面データをウェブブラウザ機能によりモニタ８に表示する。
【００５０】
図６は、このときモニタ８に表示されるゲーム画面の一例を示している。図６（ａ）に示すゲーム画面では、上方に利用者の選択肢が正解である旨が表されており、その下に次の問題へのリンクボタン５４が表されている。リンクボタン５４を表示するためのリンクタグには、図５に示す例と同様に、リンク先としてのＣＧＩプログラムが指定されており、ＣＧＩプログラムに実行パラメータとして引き渡される引数が付加されている。一方、図６（ｂ）に示すゲーム画面では、上方に利用者の選択肢が不正解である旨が表されており、その下に図６（ａ）と同様に、次の問題へのリンクボタン５４が表されている。
【００５１】
従って、利用者は表示された問題に対する解答や次の問題へ進むためのリンクボタンの選択を繰り返すことにより、利用者はクイズゲームを好きなだけ楽しむことができる。
【００５２】
［例外的アクセス検出］
次に、例外的アクセスの検出について説明をする。利用者携帯端末２１は、ネットワーク２０を介して提供される画面データをウェブブラウザ機能を用いてゲーム画面として表示する「表示」機能の他に、「再読込み」機能、「戻る」機能、「ブックマーク」機能を有する。
【００５３】
「再読込み」機能とは、表示予定のゲーム画面が回線混雑などにより読込みが中断した場合に、再度同じゲーム画面を読込む機能である。即ち、サーバ２２が所定の画面データを何らかの理由により利用者携帯端末２１へ完全に送信できなかった場合に、利用者携帯端末２１からの「再読込み」機能に基づく要求により、サーバ２２は再度当該画面データを送信する。
【００５４】
また、「戻る」機能とは、過去にアクセスした履歴を逆に辿って前回表示していたゲーム画面を再表示する機能である。ウェブブラウザは、受信済の画面データをハードディスク装置等に順次保存、即ちキャッシュするようになっており、「戻る」機能は、キャッシュしていた画面データを再び呼び出し、モニタ８上に表示するのである。
【００５５】
また、「ブックマーク」機能とは、任意のＵＲＬを記憶し、容易に再接続を行うことができる機能である。つまり、利用者は、「再読込み」、「戻る」又は「ブックマーク」機能を利用することで、サーバ２２が利用者携帯端末２１へ送信（、又は送信に失敗）した最新の画面データを再度取得したり、最新の画面より過去の画面に対応する画面データを取得したりといった例外的なアクセスをすることができる。
【００５６】
このような「再読込み」、「戻る」、「ブックマーク」機能を備えた利用者携帯端末２１に対して、サーバ２２がゲーム画面を表す画面データを供給する場合を考える。利用者がゲーム画面に表示された複数のリンクボタンのうち１つを押下し、その応答として次の画面データを受信しゲーム画面を表示した場合に、それが利用者にとって望ましくないゲーム進行であれば、利用者は上記の機能を利用して元のゲーム画面をモニタ８に呼び出し、他のリンクボタンを再選択できてしまう。即ち、利用者は上記の機能を用いることにより、例外的なアクセスをし、全てのゲームコマンドを試すことができてしまう。よって、１つのクイズに対して選択した解答の選択肢が誤りだった場合に、再度解答選択画面に戻って他の解答を選択するというような不正アクセスが可能となってしまうのである。ここで、例外的なアクセスとは、利用者携帯端末２１の「再読込み」、「戻る」、「ブックマーク」機能を用いてゲーム画面へのアクセスを要求することをいうものとする。
【００５７】
その一方で、クイズゲーム実行中において、利用者携帯端末２１がサーバ２２に例外的なアクセスをしたからといって、全ての例外的なアクセスが悪意ある不正なアクセスであるとは限らない。例えば、ネットワーク２０の混雑といった利用者の予期せぬ接続不良により読込みが中断した場合に、利用者は「再読込み」機能を用いて例外的なアクセスをすることも考えられ、このような例外的なアクセスは、上述の解答のやり直しのような悪意ある不正なアクセスとはいえない。
【００５８】
そこで、サーバ２２は、利用者携帯端末２１のモニタ８上にゲーム画面として表示される画面データ毎に各画面データ固有のシリアル番号を発行し、ＵＲＬに当該シリアル番号の情報をＵＲＬシリアル番号として暗号化して埋め込むとともに、原則として、利用者が最後に生成した画面データのシリアル番号を利用者ＤＢ２４における当該利用者のファイルにＤＢシリアル番号として記憶している。つまり、ＤＢシリアル番号は、サーバ２２が利用者携帯端末２１に送信した画面データにおける進行度を表す情報としての意味を有することになる。これによれば、詳細は後述するが、サーバ２２は、ＵＲＬシリアル番号とＤＢシリアル番号を比較することで、利用者が「再読込み」、「戻る」、「ブックマーク」機能のいずれを用いて例外的なアクセスをしたのかを把握することができる。
【００５９】
また、サーバ２２は、利用者携帯端末２１のモニタ８上にゲーム画面として表示される画面が、クイズゲームの展開に影響がある画面に対応する画面データか否かを分類してゲームＤＢ２３に記憶している。具体的に、ゲーム展開に影響のあるゲーム画面とは、クイズゲームにおける問題や解答にかかる画面などである。一方、ゲーム展開に影響のないゲーム画面とは、ゲームのトップ画面や、ゲームの説明に関する画面などである。ゲーム展開に影響のあるゲーム画面において、過去に解答を間違え、望ましくないゲーム展開となったために利用者が例外的なアクセスしてゲームをやり直すことが可能だとしたら、それはゲーム本来の魅力を損ねることとなる。一方、ゲーム展開に影響のないゲーム画面は、単なる情報提示であり、何度利用者がアクセスしてもゲーム展開に影響はない。即ち、利用者の緊張感をなくし、ゲーム本来の魅力を損ねるようなことはない。よって、サーバ２２は両者を区別して処理するのである。
【００６０】
具体的には、上記画面データの分類に基づいて、サーバ２２は、利用者携帯端末２１が例外的なアクセスを試みたゲーム画面がクイズゲームの展開に影響しない場合、例外的なアクセスを無条件で許可し、当該アクセスを試みたゲーム画面を表示する。即ち、サーバ２２は、当該ゲーム画面に対応する画面データを生成し、利用者携帯端末２１へ送信する。
【００６１】
一方、サーバ２２は、利用者携帯端末２１が例外的なアクセスを試みたゲーム画面がクイズゲームの展開に影響する場合、利用者によるその例外的なアクセスが「戻る」又は「ブックマーク」機能により最新の画面よりも過去の画面にアクセスするものであれば、その例外的なアクセスを不正とみなして許可をせず、トップ画面を表示する。また、その例外的なアクセスが「再読込み」機能等により最新の画面にアクセスするものであれば、不正アクセスではない可能性があるため、サーバ２２は、画面データ保存ＤＢに記憶してある最新の画面データを送信することで、例外的なアクセスを試みたゲーム画面を表示する。即ち、サーバ２２は、利用者が例外的なアクセスにより取得しようとする画面データが、所定の端末ＩＤに対応する利用者携帯端末２１に送信した画面データのうちの最新の画面データであれば、再度画面データの生成のための内部処理を行うことはせず、当該画面データを再び利用者携帯端末２１に送信するのである。このように、最新の画面データに対して内部処理により画面データの生成を行わない理由は、「再読込み」機能等による悪意のない例外的なアクセスであっても、内部処理により生成した画面データを送信することにより、場合によっては利用者に有利に働き、不正なアクセスと同等の効果を生ずることが考えられるからである。
【００６２】
本実施形態によれば、ゲーム展開に影響のない画面を呼び出した場合、サーバ２２は、要求のあった画面に対応する画面データを生成し送信する。つまり、サーバ２２は、不正アクセスであるか否かに関わらず、ゲーム展開に影響のない、単なる情報提供の画面に対応する画面データを利用者が呼び出した場合は、警告画面が表示される警告画面データの送信といった利用者に不快な印象を与えるゲーム処理は行わない。言い換えれば、不正アクセスであってもゲーム展開に影響のない程度の軽度のものであれば、それを許容するのである。
【００６３】
一方、利用者が利用者携帯端末２１において、「戻る」、「ブックマーク」機能を用いて、ゲーム展開に影響のある過去の画面データを呼び出した場合、サーバ２２は要求のあった画面データは送信せず、警告画面が表示される警告画面データを送信する。これによれば、利用者携帯端末２１に警告画面を表示することにより、利用者に不正アクセスである旨を認識させ、反省を促し、不正アクセスの再発を防止することができる。
【００６４】
また、利用者が利用者携帯端末２１において、「再読込み」機能を用いて、ゲーム展開に影響のある画面データを呼び出した場合、サーバ２２は画面データ保存ＤＢ２５に記憶してある最新の画面データを送信する。即ち、最新の画面への例外的なアクセス要求において利用者に悪意が無い場合は、通常通りゲーム処理が進むことになる。一方、利用者にとって望ましくないゲーム展開となったために利用者が悪意をもって「再読込み」機能を利用した場合も同様に、サーバ２２は単に画面データ保存ＤＢに記憶してある最新の画面データを送信し、利用者携帯端末２１に表示させる。よって、利用者が悪意をもって例外的なアクセスをした場合でも利用者が望むゲーム展開に変更することはできない。よって、サーバ２２は、利用者の悪意をもった不正アクセスであるか否かの判断が難しい「再読込み」機能による最新の画面への例外的なアクセス要求の場合でも、適切なゲーム処理を行うことができる。
【００６５】
このように、本実施形態によれば、利用者に不快感を与えることなく、不正アクセスを防止することができる。また、利用者はゲームのやり直しなどを目的とする悪意をもった不正アクセスができないことで、緊張感を持続させることができ、ゲーム本来の魅力を損ねることが防止される。
【００６６】
［機能ブロック］
図７に、本発明の不正アクセス防止システム１００におけるサーバ２２の機能ブロック図を示す。図７に示す各機能は、サーバ２２のゲームＤＢ２３に記憶されたプログラムをＣＰＵ１が実行し、必要に応じてＳＰＵ９などの構成要素を制御することにより実現される。
【００６７】
図７に示すように、本発明のサーバ装置２２は機能的には、ゲームコマンド受信手段１０１、シリアル番号比較手段１０２、シリアル番号更新手段１０３、ＵＲＬシリアル番号付加手段１０４、画面データ生成手段１０５、画面データ保存手段１０６、画面データ送信手段１０７、画面データ判断手段１０８及び最新画面データ取得手段１０９により構成されている。
【００６８】
ゲームコマンド受信手段１０１は、利用者が利用者携帯端末２１を使用してサーバ２２から提供されるゲームを行う場合に、サーバ２２が、利用者からゲーム画面へのアクセス要求であるゲームコマンドとして機能するＵＲＬを受信する。
【００６９】
シリアル番号比較手段１０２は、ＵＲＬシリアル番号とＤＢシリアル番号を比較し、利用者のアクセス要求が例外的なアクセス要求であるか否かを判断する。具体的に、サーバ２２は、利用者からゲームコマンドとして受信したＵＲＬに付加されているＵＲＬシリアル番号を取得する。また、サーバ２２は、利用者ＤＢ２４から利用者の端末ＩＤをキーとしてＤＢシリアル番号を取得する。そして、ＵＲＬシリアル番号とＤＢシリアル番号を比較することで、利用者のアクセス要求が例外的なアクセスか否かを判断する。例えば、ＵＲＬシリアル番号がＤＢシリアル番号より大きい値である場合、利用者のアクセス要求は例外的なアクセスではないと判断する。一方、ＵＲＬシリアル番号がＤＢシリアル番号より小さい若しくは一致する値である場合、利用者のアクセス要求は、利用者携帯端末２１において「再読込み」、「ブックマーク」又は「戻る」機能を用いて例外的なアクセス要求を行ったと判断する。
【００７０】
シリアル番号更新手段１０３は、新たな画面データを生成する場合に、シリアル番号比較処理１０２において取得したＤＢシリアル番号をインクリメントし、利用者ＤＢ２４の当該端末ＩＤに対応するファイルのＤＢシリアル番号を更新する。ＤＢシリアル番号を更新することで、サーバ２２が要求元の利用者に送信した画面データにおける進行度を把握することができる。また、利用者ＤＢ２４に保存したＤＢシリアル番号に１を加算した値をＵＲＬシリアル番号に更新する。
【００７１】
ＵＲＬシリアル番号付加手段１０４は、シリアル番号更新手段１０３において更新したＵＲＬシリアル番号を、画面データ作成手段１０５によって作成された画面データにゲーム進行において次に表示すべきゲーム画面へのリンク情報として含まれるＵＲＬに付加する。
【００７２】
これによれば、利用者が当該画面データにリンク情報として含まれるＵＲＬをゲームコマンドとしてサーバ２２にアクセス要求をした場合、シリアル番号比較手段１０２においてＵＲＬシリアル番号とＤＢシリアル番号を比較することで、利用者のアクセス要求が例外的なアクセスではないと判断することができる。
【００７３】
画面データ生成手段１０５は、利用者からのアクセス要求に対応したゲーム画面の元になる画面データを生成する。利用者からのアクセス要求が例外的なアクセスではない場合、若しくは、例外的なアクセスであるがアクセス要求がゲーム展開に影響のない場合、サーバ２２は、アクセス要求のあった画面データを生成する。一方、利用者からのアクセス要求が例外的なアクセスであり、且つ、ゲーム展開に影響がある場合、サーバ２２は、警告画面の元になる画面データを生成する。
【００７４】
画面データ保存手段１０６は、画面データ生成手段１０５が生成した最新の画面データを、要求元の利用者が使用する利用者携帯端末２１の端末ＩＤに対応する画面データ保存ＤＢ中のファイルに保存する。
【００７５】
画面データ送信手段１０７は、画面データ生成手段１０５が生成した最新の画面データを、当該端末ＩＤに基づいて要求元の利用者が使用する利用者携帯端末２１に送信する。これにより、利用者の使用する利用者携帯端末２１は、ウェブブラウザ機能により、受信した当該画面データに基づいてモニタ８上に利用者のアクセス要求に対応したゲーム画面を表示することができる。
【００７６】
画面データ判断手段１０８は、シリアル番号比較手段１０２において、利用者のアクセス要求が例外的なアクセスであると判断された場合、ＵＲＬシリアル番号及びゲームＤＢ２３に基づいて、当該要求にかかる画面データがゲーム展開に影響のある画面に対応する画面データか否かを判断する。当該要求にかかる画面データがゲーム展開に影響のある画面に対応する画面データではないと判断された場合、画面データ生成手段１０５は当該要求のある画面データを生成する。一方、当該要求にかかる画面データがゲーム展開に影響のある画面に対応する画面データであると判断され、且つ、当該要求が最新の画面データではない場合、画面データ生成手段１０５は警告画面に対応する画面データを生成する。
【００７７】
なお、当該要求が最新の画面データであるか否かの判断は、シリアル番号比較手段１０２の結果に基づいて行う。具体的には、シリアル番号比較手段１０２において比較したＵＲＬシリアル番号及びＤＢシリアル番号が一致していれば、最新の画面データを要求していると判断する。一方、シリアル番号比較手段１０２において比較したＵＲＬシリアル番号及びＤＢシリアル番号が一致していなければ、最新ではなく、過去の画面データを要求していると判断する。
【００７８】
最新画面データ取得手段１０９は、画面データ判断手段１０８において、当該要求にかかる画面データがゲーム展開に影響のある画面データであると判断され、且つ、当該要求が最新の画面データである場合に、利用者の端末ＩＤに基づいて画面データ保存ＤＢ２５から最新の画面データを取得する。
【００７９】
［ゲーム実行処理］
次に、ゲーム実行処理について、図８乃至図１３を参照して説明する。図８は、ゲーム実行処理において通常のアクセスが行われた場合の表示画面の流れを示す図である。図９はゲーム実行処理において「再読込み」、「ブックマーク」機能による例外的なアクセスが行われた場合の表示画面の流れを示す図であり、図１０はゲーム実行処理において「戻る」機能による例外的なアクセスが行われた場合の表示画面の流れを示す図である。
【００８０】
また、図１１はゲーム実行処理のメインルーチンであり、図１２は図１１における例外的アクセス検出処理のサブルーチンである。また、図１３は図１２における例外的アクセス対応処理のサブルーチンである。
【００８１】
なお、以下に説明する処理は、図２に示すＣＰＵ１が図１に示すゲームＤＢ２３からプログラムやデータを読み出して実行しサーバ２２が図７に示す各手段として機能することにより、利用者携帯端末２１とサーバ２２との間で実行される。
【００８２】
（Ａ）利用者がトップページへのアクセスを要求した場合
まず、利用者が利用者携帯端末２１を使用して、クイズゲームにおけるトップページへのアクセスを要求した場合について説明する。
【００８３】
図１１によれば、まず、サーバ２２は、利用者登録処理を行う（ステップＳ１）。利用者登録処理は、利用者が利用者携帯端末２１を使用して、サービス提供会社２６のウェブサイトからサーバ２２にアクセスし、メールアドレスを登録する処理である。サ−バ２２は、利用者登録時に利用者毎に利用者ＩＤを発行し、当該利用者ＩＤをキーとして当該利用者の端末ＩＤ、メールアドレス及びＤＢシリアル番号を、図３に示すように、利用者ＤＢ２４に記憶する。なお、利用者がゲームを行ったことが無い、即ちゲーム画面へのアクセス要求をしたことがない場合、ＤＢシリアル番号には「０」が記憶されている。
【００８４】
次に、サーバ２２は、ゲームコマンド受信手段１０１としてゲームコマンド受信処理を行う（ステップＳ２）。ゲームコマンド受信処理は、利用者が利用者携帯端末２１を使用してサーバ２２から提供されるゲームを行う場合に、サーバ２２が、利用者からアクセス要求のあるゲーム画面のＵＲＬをゲームコマンドとして受信する処理である。例えば、利用者が図８に示すように、ゲームのトップページにかかるゲーム画面９０へのアクセス要求をした場合、サーバ２２は、ＵＲＬ６９をゲームコマンドとして受信する。
【００８５】
そして、サーバ２２は、ゲームコマンド受信手段１０１として、ゲームコマンドたるＵＲＬ６９を受信すると例外的アクセス検出処理を行う（ステップＳ３）。例外的アクセス検出処理は、ゲームコマンドたるＵＲＬ６９及び利用者ＤＢ２４に基づいて、利用者のアクセス要求が不正であるか否かを検出し、検出結果に対応したゲーム画面を表す画面データを生成する処理であり、その詳細を図１２を参照して説明する。
【００８６】
まず、サーバ２２はゲームコマンドとして受信したＵＲＬ６９から端末ＩＤを取得する（ステップＳ２０）。利用者携帯端末２１の識別情報である端末ＩＤはＵＲＬに含まれているため、サーバ２２はゲームコマンドたるＵＲＬ６９に基づいて、当該ＵＲＬ６９を送信した利用者が使用する利用者携帯端末２１を識別することができる。
【００８７】
次に、サーバ２２は、取得した端末ＩＤをキーとして、利用者ＤＢ２４を検索し、当該端末ＩＤに対応するＤＢシリアル番号を取得する（ステップＳ２１）。例えば、利用者がゲームを行ったことが無い、即ちゲーム画面へのアクセス要求をしたことが無い場合は、ＤＢシリアル番号として「０」を取得する。そして、サーバ２２は、ゲームコマンドたるＵＲＬ６９にＵＲＬシリアル番号が付加されているか否かを判断する（ステップＳ２２）。トップページへのアクセスを要求するゲームコマンドであるＵＲＬ６９には、ＵＲＬシリアル番号は付加されていないのでステップＳ２３へ進む。
【００８８】
ステップＳ２３においてサーバ２２は、ゲームコマンドであるＵＲＬがトップページへのアクセスではないと判断した場合、詳細は後述するが、例外的アクセス対応処理へ進む。一方、サーバ２２は、ゲームコマンドであるＵＲＬ６９がトップページへのアクセスであると判断した場合、ＤＢシリアル番号をインクリメントして利用者ＤＢ２４に保存する（ステップＳ２４）。具体的には、ステップＳ２１において取得したＤＢシリアル番号は「０」であるので、図８のゲーム画面９０に示すように、インクリメントした結果の「１」を新たなＤＢシリアル番号８０とし、利用者ＤＢ２４において当該端末ＩＤに対応するファイルのＤＢシリアル番号に上書き保存する。即ち、ＤＢシリアル番号「１」はトップページを示している。
【００８９】
次に、サーバ２２は、ゲームＤＢ２３に基づいて利用者からアクセス要求のあった画面データを生成する（ステップＳ２５）。そして、サーバ２２は、新たなＤＢシリアル番号８０に１を加算した値をＵＲＬシリアル番号として設定し（ステップＳ２６）、当該ＵＲＬシリアル番号をゲーム進行において当該ゲーム画面の次に表示すべきゲーム画面へのリンク情報として当該画面データに含まれるＵＲＬに付加する（ステップＳ２７）。具体的には、新たなＤＢシリアル番号８０は「１」であるので、図８のゲーム画面９０に示すように、ＤＢシリアル番号８０に１を加算した値である「２」をＵＲＬシリアル番号７０に設定し、次のゲーム画面へのリンク情報として含まれるＵＲＬ７１に付加する。
【００９０】
次のゲーム画面へのリンク情報として含まれるＵＲＬへのＵＲＬシリアル番号の付加が完了すると、サーバ２２は、例外的アクセス検出処理を終了し、処理は図１１に示すメインルーチンに戻り、画面データ保存処理を行う（ステップＳ４）。画面データ保存処理は、例外的アクセス検出処理において生成した画面データ、即ちサーバ２２が生成した最新の画面データを画面データ保存ＤＢ２５に記憶する処理である。画面データ保存ＤＢ２５は、端末ＩＤ毎に、サーバ２２が例外的アクセス検出処理において当該端末ＩＤに該当する利用者携帯端末２１に送信するために生成した最新の画面データを記憶している。これによれば、利用者携帯端末２１が「再読込み」機能などを用いて最新の画面データを再度要求した場合、サーバ２２は画面データ保存ＤＢ２５に保存された当該画面データを取得すればよいので、再度画面データの生成を行う必要がない。
【００９１】
画面データ保存処理が完了すると、サーバ２２は、画面データ送信処理を行う（ステップＳ５）。画面データ送信処理は、例外的アクセス検出処理において生成した画面データを、端末ＩＤに基づいて、要求元の利用者携帯端末２１へ送信する処理である。利用者は、利用者携帯端末２１において当該画面データを受信し、ウェブブラウザ機能によりゲーム画面９０をモニタ８上に表示する。
【００９２】
そして、サーバ２２は、ゲームが終了したか否かを判断する（ステップＳ６）。ゲームが終了し、つまり利用者からのアクセス要求が所定の時間中に無かった場合、ゲーム実行処理を終了する。一方、ゲームが終了しておらず、利用者からのアクセス要求があった場合、再びステップＳ１の利用者登録を除いたゲーム実行処理を行う。
【００９３】
（Ｂ）利用者が通常画面へのアクセスを要求した場合
次に、利用者が利用者携帯端末２１を使用して、クイズゲームにおけるトップページ以外の通常画面へのアクセスを要求した場合について説明する。
【００９４】
図１１によれば、サーバ２２は、ゲームコマンド受信処理を行う（ステップＳ２）。例えば、利用者が、図８のトップページにかかるゲーム画面９０において「説明へ」のリンクボタンを押下し、説明にかかるゲーム画面９１へのアクセスを要求した場合、サーバ２２は、ＵＲＬ７１をゲームコマンドとして受信する。さらに、サーバ２２は、ゲームコマンドたるＵＲＬ７１を受信すると例外的アクセス検出処理を行う（ステップＳ３）。例外的アクセス検出処理について図１２を参照して詳しく説明する。
【００９５】
まず、サーバ２２はゲームコマンドとして受信したＵＲＬ７１から端末ＩＤを取得する（ステップＳ２０）。次に、サーバ２２は取得した端末ＩＤをキーとして利用者ＤＢ２４を検索し、当該端末ＩＤに対応するＤＢシリアル番号を取得する（ステップＳ２１）。この場合、利用者ＤＢ２４の当該端末ＩＤに対応するファイルにはＤＢシリアル番号８０が保存されているため、ＤＢシリアル番号として「１」を取得する。
【００９６】
そして、サーバ２２は、ゲームコマンドたるＵＲＬ７１にＵＲＬシリアル番号が付加されているか否かを判断する（ステップＳ２２）。トップページ以外の通常画面へのアクセスを要求するゲームコマンドであるＵＲＬ７１には、ＵＲＬシリアル番号７０が付加されているので、処理はステップＳ２８へ進む。
【００９７】
次に、サーバ２２は、ＵＲＬ７１に付加されたＵＲＬシリアル番号７０「２」と、ステップＳ２１において取得したＤＢシリアル番号８０「１」を比較する（ステップＳ２８）。ここで、ＵＲＬシリアル番号がＤＢシリアル番号よりも小さい若しくは一致する値であった場合、サーバ２２は、詳細は後述するが、例外的アクセス対応処理へ進む。一方、ＵＲＬシリアル番号７０「２」がＤＢシリアル番号８０「１」より大きい値であった場合、ＤＢシリアル番号８０をインクリメントして利用者ＤＢ２４に保存する（ステップＳ２４）。具体的に、ＤＢシリアル番号８０「１」をインクリメントしてＤＢシリアル番号８１「２」とし、利用者ＤＢ２４において当該端末ＩＤに対応するファイルに上書き保存する。
【００９８】
次に、サーバ２２は、ゲームＤＢ２３に基づいて利用者からアクセス要求のあった画面データを生成する（ステップＳ２５）。即ち、図８に示す、ゲーム画面９１の元になる画面データを生成する。そして、サーバ２２は、新たなＤＢシリアル番号８１「２」に１を加算した値である「３」をＵＲＬシリアル番号７２に設定し（ステップＳ２６）、次のゲーム画面へのリンク情報として当該画面データに含まれるＵＲＬ７３に付加する。
【００９９】
次のゲーム画面へのリンク情報として含まれるＵＲＬへのＵＲＬシリアル番号の付加が完了すると、サーバ２２は、例外的アクセス検出処理を終了し、処理は図１１に示すメインルーチンに戻り、画面データ保存処理（ステップＳ４）、画面データ送信処理（ステップＳ５）、及び、ゲームが終了したか否かの判断（ステップＳ６）を行う。
【０１００】
なお、以下の説明では、図８に示すように、利用者は利用者携帯端末２１を使用して、上述と同様の操作を繰り返し、ゲーム画面９３までクイズゲームを進行させたとする。
【０１０１】
（Ｃ）利用者が通常画面への例外的なアクセスを要求した場合
次に、利用者が利用者携帯端末２１を使用して、クイズゲームにおける通常画面への例外的なアクセスを要求した場合について説明する。例外的なアクセスとは、利用者携帯端末２１の「再読込み」、「戻る」、「ブックマーク」機能を用いて通常のゲーム進行に遡ってゲーム画面へのアクセスを要求することである。
【０１０２】
（ｉ）「再読込み」機能を用いた例外的なアクセス
図１１によれば、サーバ２２は、ゲームコマンド受信処理を行う（ステップＳ２）。具体的に、利用者が、図８のクイズゲームにおける解答にかかるゲーム画面９３において、「再読込み」機能を用いて、再度、ゲーム画面９３へのアクセスを要求した場合について図９上段を参照して説明する。
【０１０３】
解答にかかるゲーム画面９３において、利用者が利用者携帯端末２１の「再読込み」機能を用いた場合、サーバ２２は、ＵＲＬ７５をゲームコマンドとして受信する。そして、サーバ２２は、ゲームコマンドたるＵＲＬ７５を受信すると例外的アクセス検出処理を行う（ステップＳ３）。例外的アクセス検出処理について図１２を参照して詳しく説明する。
【０１０４】
まず、サーバ２２はゲームコマンドとして受信したＵＲＬ７５から端末ＩＤを取得する（ステップＳ２０）。次に、サーバ２２は取得した端末ＩＤをキーとして利用者ＤＢ２４を検索し、当該端末ＩＤに対応するＤＢシリアル番号を取得する（ステップＳ２１）。この場合、利用者ＤＢ２４の当該端末ＩＤに対応するファイルにはＤＢシリアル番号８３が保存されているため、ＤＢシリアル番号として「４」を取得する。
【０１０５】
そして、サーバ２２は、ゲームコマンドたるＵＲＬ７５にＵＲＬシリアル番号が付加されているか否かを判断する（ステップＳ２２）。解答にかかる画面９３から「再読込み」機能を用いて例外的なアクセスを要求するゲームコマンドであるＵＲＬ７５には、ＵＲＬシリアル番号７４が付加されているので、ステップＳ２８へ進む。
【０１０６】
次に、サーバ２２は、ＵＲＬ７５に付加されたＵＲＬシリアル番号７４「４」と、ステップＳ２１において取得したＤＢシリアル番号８３「４」を比較する（ステップＳ２８）。ここで、ＵＲＬシリアル番号７４「４」とＤＢシリアル番号８３「４」の値が一致するので、例外的アクセス対応処理を行う（ステップＳ２９）。
【０１０７】
例外的アクセス対応処理は、利用者が利用者携帯端末２１において「再読込み」、「戻る」、「ブックマーク」機能を用いて通常のゲーム進行に遡って例外的なアクセス要求を行ったと判断された場合に、不正アクセスである可能性を考慮して適切なゲーム画面を表す画面データを生成する処理であり、その詳細を図１３を参照して説明する。
【０１０８】
まず、サーバ２２はゲームコマンドとして受信したＵＲＬ７５に付加されているＵＲＬシリアル番号７４「４」から、利用者が例外的なアクセスにより要求しているゲーム画面が、クイズゲームの展開に影響のある画面か否かを判断する（ステップＳ４０）。
【０１０９】
ＵＲＬシリアル番号は、利用者携帯端末２１に表示されるゲーム画面の元になる画面データ毎に固有の識別情報であるため、サーバ２２はＵＲＬシリアル番号に基づいて、利用者が例外的なアクセスを要求しているゲーム画面の元になる画面データがどんなデータであるかを把握することができる。また、前述のように、ゲームＤＢ２３は、利用者携帯端末２１のモニタ８上にゲーム画面として表示される画面データが、クイズゲームの展開に影響がある画面に対応する画面データか否かを分類して記憶している。そのため、サーバ２２は、ゲームコマンドとして受信したＵＲＬに付加されているＵＲＬシリアル番号及びゲームＤＢ２３に基づいて、利用者が例外的なアクセスを要求しているゲーム画面が、クイズゲームに影響のある画面か否かを判断することができる。
【０１１０】
利用者が例外的なアクセスを要求した画面が、ゲーム展開に影響のない画面である場合、要求された画面に対応する画面データを生成する（ステップＳ４１）。一方、利用者が例外的なアクセスを要求した画面が、ゲーム展開に影響のある画面である場合、ステップＳ２８の結果に基づいて、ＵＲＬシリアル番号とＤＢシリアル番号が一致しているか否かを判断する（ステップＳ４２）。
【０１１１】
ＵＲＬシリアル番号とＤＢシリアル番号が一致している場合、サーバ２２は利用者の例外的なアクセスは最新の画面へのアクセスを要求していると判断し、画面データ保存ＤＢ２５から最新の画面データを取得する（ステップＳ４３）。なお、「再読込み」機能を使用した例外的なアクセスの場合は、ＵＲＬシリアル番号とＤＢシリアル番号とは必ず一致するので、処理がステップＳ４４へ進むことはない。
【０１１２】
画面データの生成若しくは取得が完了すると、サーバ２２は、例外的アクセス検出処理を終了し、処理は図１１に示すメインルーチンに戻り、画面データ保存処理（ステップＳ４）、画面データ送信処理（ステップＳ５）、及び、ゲームが終了したか否かの判断（ステップＳ６）を行う。
【０１１３】
これによれば、「再読込み」機能を用いて、ゲーム展開に影響のある最新の画面へのアクセス要求をした場合、サーバ２２は、当該アクセスが不正か否かは判断せず、画面データ保存ＤＢに記憶してある最新の画面データを送信する。よって、例えば接続不良などに起因して要求した画面データを正しく受信できなかった場合に、利用者が再度その画面データを要求する場合など、利用者に悪意が無い場合は、通常通りゲーム処理が進むことになる。一方、利用者にとって望ましくないゲーム展開となったために「再読込み」機能を利用した場合のように、悪意がある場合は、画面データ保存ＤＢに記憶してある最新の画面データに基づいて、利用者携帯端末２１に要求のあった画面を表示させるため、例外的なアクセスをしたからといって、過去のゲーム展開とは異なる利用者が望むようなゲーム展開に変更することはできない。よって、利用者の不正アクセスであるか否かの判断が難しい「再読込み」機能による例外的なアクセスの場合でも、適切なゲーム処理を行うことができる。
【０１１４】
（ｉｉ）「ブックマーク」機能を用いた例外的なアクセス
図１１によれば、サーバ２２は、ゲームコマンド受信処理を行う（ステップＳ２）。利用者が、図８のクイズゲームにおける解答にかかるゲーム画面９３において、「ブックマーク」機能を用いて、クイズゲームにおける説明にかかるゲーム画面９１へのアクセスを要求した場合について特に、図９下段を参照して説明する。
【０１１５】
解答にかかるゲーム画面９３において、利用者が利用者携帯端末２１の「ブックマーク」機能を用いて説明にかかるゲーム画面９１へのアクセスを要求した場合、サーバ２２は、ＵＲＬ７１をゲームコマンドとして受信する。そして、サーバ２２は、ゲームコマンドたるＵＲＬ７１を受信すると例外的アクセス検出処理を行う（ステップＳ３）。例外的アクセス検出処理について図１２を参照して詳しく説明する。
【０１１６】
まず、サーバ２２は、ゲームコマンドとして受信したＵＲＬ７１から端末ＩＤを取得する（ステップＳ２０）。次に、サーバ２２は、取得した端末ＩＤをキーとして利用者ＤＢ２４を検索し、当該端末ＩＤに対応するＤＢシリアル番号を取得する（ステップＳ２１）。具体的に、本実施形態においては、利用者ＤＢ２４の当該端末ＩＤに対応するファイルにはＤＢシリアル番号８３が保存されているため、ＤＢシリアル番号として「４」を取得する。
【０１１７】
そして、サーバ２２は、ゲームコマンドたるＵＲＬ７１にＵＲＬシリアル番号が付加されているか否かを判断する（ステップＳ２２）。解答にかかる画面９３から「ブックマーク」機能を用いて例外的なアクセスを要求するゲームコマンドであるＵＲＬ７１には、ＵＲＬシリアル番号７０が付加されているので、ステップＳ２８へ進む。
【０１１８】
次に、サーバ２２は、ＵＲＬ７１に付加されたＵＲＬシリアル番号７０「２」と、ステップＳ２１において取得したＤＢシリアル番号８３「４」を比較する（ステップＳ２８）。ここで、ＵＲＬシリアル番号７０「２」は、ＤＢシリアル番号８３「４」より小さい値なので、サーバ２２は例外的アクセス対応処理を行う（ステップＳ２９）。その詳細を図１３を参照して説明する。
【０１１９】
まず、サーバ２２は、ゲームコマンドとして受信したＵＲＬ７１に付加されているＵＲＬシリアル番号７０「２」から、利用者が例外的なアクセスにより要求しているゲーム画面が、クイズゲームの展開に影響のある画面か否かを判断する（ステップＳ４０）。
【０１２０】
利用者が例外的なアクセスを要求した画面が、ゲーム展開に影響のある画面である場合、ステップＳ２８の結果に基づいて、ＵＲＬシリアル番号とＤＢシリアル番号が一致しているか否かを判断する（ステップＳ４２）。ＵＲＬシリアル番号とＤＢシリアル番号が一致している場合、サーバ２２は、利用者が最新の画面へのアクセスを要求していると判断し、画面データ保存ＤＢ２５から最新の画面データを取得する（ステップＳ４３）。このように、利用者が最新の画面に対してブックマーク機能を利用してアクセスを要求した場合、『（ｉ）「再読込み」機能を用いた例外的アクセス』と同様の処理を行う。一方、ステップＳ４２において、ＵＲＬシリアル番号とＤＢシリアル番号が不一致である場合、サーバ２２は、利用者が最新の画面より過去の画面へのアクセスを要求していると判断し、警告画面データを生成する（ステップＳ４４）。
【０１２１】
一方、利用者が例外的なアクセスを要求した画面が、ゲーム展開に影響のない画面である場合、サーバ２２は、要求された画面に対応する画面データを生成する（ステップＳ４１）。図９下段において、利用者は説明にかかるゲーム画面へのアクセスを要求しており、説明にかかるゲーム画面はクイズゲームの展開に影響のある画面ではないので、サーバ２２は、要求された画面に対応する画面データを生成する。即ち、サーバ２２は、説明にかかるゲーム画面９４の元になる画面データを生成する。なお、サーバ２２は、当該画面データを生成する際に、ステップＳ２１で取得したＤＢシリアル番号８３「４」をインクリメントした結果の「５」を新たなＤＢシリアル番号８４とし、利用者ＤＢ２４において当該端末ＩＤに対応するファイルのＤＢシリアル番号に上書き保存する。また、サーバ２２は、新たなＤＢシリアル番号８４に１を加算した値「６」をＵＲＬシリアル番号７８として設定し、次のゲーム画面へのリンク情報として当該画面データに含まれるＵＲＬ７９に付加する。
【０１２２】
この場合、図８及び図９からわかるように、利用者がアクセス要求をしたゲーム画面９１と、サーバ２２が新たに生成したゲーム画面９４は、説明の部分は内容が同じであるが、異なる問題へのリンクボタンを含んでおり、別の画面データである。なお、説明を示したゲーム画面９１や９４において表示される問題へのリンクボタン（「問題αへ」、「問題γへ」など）は、多数の問題からランダムに選択される。よって、新たに生成されたゲーム画面９４の問題（問題γ）が、ブックマークされていたゲーム画面９１における問題（問題α）と一致することは確率的にほとんどありえない。よって、利用者がブックマーク機能を用いて説明のゲーム画面に戻ったとしても、解答を知ったあとに同じ問題を解答するという状況はほとんど起こりえず、不正なゲーム進行が行われる恐れはない。
【０１２３】
次のゲーム画面へのリンク情報として含まれるＵＲＬへのＵＲＬシリアル番号の付加が完了すると、サーバ２２は、例外的アクセス検出処理を終了し、処理は図１１に示すメインルーチンに戻り、画面データ保存処理（ステップＳ４）、画面データ送信処理（ステップＳ５）、及び、ゲームが終了したか否かの判断（ステップＳ６）を行う。
【０１２４】
（ｉｉｉ）「戻る」機能を用いた例外的なアクセス
図１１によれば、サーバ２２は、ゲームコマンド受信処理を行う（ステップＳ２）。利用者が、図８のクイズゲームにおける解答にかかるゲーム画面９３において、「戻る」機能を用いて、問題にかかるゲーム画面９２へのアクセスを要求した場合について特に、図１０を参照して説明する。
【０１２５】
通常、利用者携帯端末２１は、過去に受信した画面データをＲＡＭ３等に順次保存するようになっており、「戻る」機能を用いると、この保存していた画面データを再び呼び出し、ウェブブラウザ機能によりモニタ８上にゲーム画面を表示する。ここで、利用者携帯端末２１が、過去に受信した画面データをＲＡＭ３等に順次保存することをキャッシュという。
【０１２６】
利用者携帯端末２１が問題にかかるゲーム画面９２をキャッシュしていない場合、図１０上段に示すように、サーバ２２は、要求されたゲーム画面９２の元になる画面データを送信せず、警告画面９５となる画面データを利用者携帯端末２１へ送信する。即ち、利用者携帯端末２１のモニタ８には警告画面９５が表示される。なお、利用者携帯端末２１にキャッシュがなく、「戻る」機能を用いて例外的なアクセスをした場合、サーバ２２が行うの処理は、上述した『（ｉｉ）「ブックマーク機能」を用いた例外的なアクセス』と同様であるため、便宜上説明は省略する。
【０１２７】
一方、利用者携帯端末２１が問題にかかるゲーム画面９２をキャッシュしている場合、図１０下段に示すように、サーバ２２を介さず、利用者携帯端末２１のモニタ８上に、ＲＡＭ３から読み出されたゲーム画面９２が表示される。この時、利用者が過去の履歴では解答Ｂを選択して問題αを間違えたにも関わらず、「戻る」機能を用いて再び表示した当該ゲーム画面９２において解答Ａを選択し、自身にとって有利なゲーム展開に進めようとしたとする。
【０１２８】
図１１によれば、サーバ２２は、ゲームコマンド受信処理を行う（ステップＳ２）。利用者が、「戻る」機能を用いて利用者携帯端末２１のＲＡＭ３にキャッシュされていたゲーム画面９２を表示し、利用者が今度は解答Ａを選択した場合、サーバ２２は、ＵＲＬ７５をゲームコマンドとして受信する。そして、サーバ２２は、ゲームコマンドたるＵＲＬ７５を受信すると例外的アクセス検出処理を行う（ステップＳ３）。例外的アクセス検出処理において図１２を参照して詳しく説明する。
【０１２９】
まず、サーバ２２はゲームコマンドとして受信したＵＲＬ７５から端末ＩＤを取得する（ステップＳ２０）。次に、サーバ２２は取得した端末ＩＤをキーとして利用者ＤＢ２４を検索し、当該端末ＩＤに対応するＤＢシリアル番号を取得する（ステップＳ２１）。利用者ＤＢ２４の当該端末ＩＤに対応するファイルにはＤＢシリアル番号８３が保存されている。この場合、前述のように利用者はいったん図８に示すゲーム画面９０から順にゲーム画面９３まで進んでいるため、サーバ２２はＤＢシリアル番号として「４」を取得する。
【０１３０】
そして、サーバ２２は、ゲームコマンドたるＵＲＬ７５にＵＲＬシリアル番号が付加されているか否かを判断する（ステップＳ２２）。解答にかかるゲーム画面９３から「戻る」機能を用いて例外的なアクセスを要求するゲームコマンドであるＵＲＬ７５には、ＵＲＬシリアル番号７４が付加されているので、ステップＳ２８へ進む。
【０１３１】
次に、サーバ２２は、ＵＲＬ７５に付加されたＵＲＬシリアル番号７４「４」と、ステップＳ２１において取得したＤＢシリアル番号８３「４」を比較する（ステップＳ２８）。ここで、ＵＲＬシリアル番号７４「４」とＤＢシリアル番号８３「４」の値が一致するので、例外的アクセス対応処理を行う（ステップＳ２９）。例外的アクセス対応処理について、その詳細を図１３を参照して説明する。
【０１３２】
まず、サーバ２２はゲームコマンドとして受信したＵＲＬ７５に付加されているＵＲＬシリアル番号７４「４」から、利用者が例外的なアクセスにより要求しているゲーム画面が、クイズゲームの展開に影響のある画面か否かを判断する（ステップＳ４０）。
【０１３３】
利用者が例外的なアクセスを要求した画面が、ゲーム展開に影響のない画面である場合、要求された画面に対応する画面データを生成する（ステップＳ４１）。一方、利用者が例外的なアクセスを要求した画面が、ゲーム展開に影響のある画面である場合、ステップＳ２８の結果に基づいて、ＵＲＬシリアル番号とＤＢシリアル番号が一致しているか否かを判断する（ステップＳ４２）。
【０１３４】
ＵＲＬシリアル番号とＤＢシリアル番号が一致していない場合、サーバ２２は利用者が最新の画面より過去の画面へのアクセス要求をしていると判断し、警告画面データを生成する（ステップＳ４４）。例えば、利用者が「戻る」機能を利用して２つ以上画面を遡った場合、ＵＲＬシリアル番号はＤＢシリアル番号より小さくなり、ステップＳ４２においてＵＲＬシリアル番号とＤＢシリアル番号は一致しないと判断される。一方、図１０下段に示すようにＵＲＬシリアル番号とＤＢシリアル番号が一致している場合、サーバ２２は利用者の例外的なアクセスは最新の画面へのアクセスを要求していると判断し、画面データ保存ＤＢ２５から最新の画面データを取得する（ステップＳ４３）。
【０１３５】
その後、サーバ２２は、例外的アクセス検出処理を終了し、処理は図１１に示すメインルーチンに戻り、画面データ保存処理（ステップＳ４）、画面データ送信処理（ステップＳ５）、及び、ゲームが終了したか否かの判断（ステップＳ６）を行う。
【０１３６】
これによれば、利用者が「戻る」機能を用いて、過去のゲーム展開とは別の自身に有利なゲーム展開に変更しようとした場合、サーバ２２は、画面データ保存ＤＢ２５に記憶してある最新の画面データに基づいて当該画面データを表示する。具体的には、図１０下段に示すように、利用者が過去の履歴では解答Ｂを選択して問題αを間違えたにも関わらず、「戻る」機能を用いて再び表示した当該ゲーム画面９２において解答Ａを選択し、自身にとって有利なゲーム展開に進めようとした場合、解答Ａを選択したにも関わらず、過去の履歴と同じ解答にかかる画面９３が表示される。即ち、自身に有利になるようにゲーム展開を変更することはできない。
【０１３７】
また、利用者に悪意がなく、「戻る」機能を用いて最新画面へのアクセスを要求した場合は、警告画面等が表示されることはないため、利用者に不快感を与えることはない。
【０１３８】
以上の実施形態では、例外的なアクセスが可能となる利用者携帯端末２１の機能として「再読込み」、「ブックマーク」又は「戻る」機能を挙げて説明しているが、その他例外的なアクセスを可能とする「画面メモ」機能等にも本発明を適用し、不正アクセスを防止することが可能である。「画面メモ」機能とは、閲覧した画面データを任意に記憶し、再びネットワーク等に接続しなくても当該画面データに対応する画面をモニタ８上に表示することができる機能である。また、「画面メモ」機能を利用すると、当該画面から容易に次の画面への再接続をすることも可能である。
【０１３９】
また、本実施形態は、本発明をクイズゲームに適用した例であるが、本発明の適用はこれに限定されず、ＨＴＴＰを利用し、ネットワークを介して提供する他の種々のコンテンツへの適用が可能である。例えば、アドベンチャーゲームにおける不正アクセス防止や、ネットトレーディングにおける２度打ち防止などにも、本発明の手法を適用することが可能である。
【０１４０】
また、本実施形態では、利用者が使用する端末装置として携帯端末を使用する場合について説明したが、ブラウザ機能及びネットワークを介しての通信機能を有し、所定のコンテンツを実行することができれば、任意のパソコン、ＰＤＡ（Ｐｅｒｓｏｎａｌ　Ｄｉｇｉｔａｌ　Ａｓｓｉｓｔａｎｔ）等の端末装置を利用することができる。
【０１４１】
上記の実施形態では、ＨＴＴＰプロトコルを使用して、携帯電話などの利用者端末とサーバとの間で通信を行うゲーム実行環境の例を示した。即ち、サーバから利用者端末へは次のゲーム画面へのＵＲＬ（リンク情報）を含む画面データを送信し、利用者端末では利用者が当該ＵＲＬを選択することにより、ゲームコマンドとして当該ＵＲＬをサーバへ送信する。そして、それら画面データとゲームコマンドの送受信によりゲームを進行している。
【０１４２】
しかし、本発明の適用は、そのようなゲーム実行環境に限定されるものではない。即ち、ＨＴＴＰプロトコル以外の通信プロトコルに従ってサーバと利用者端末間でゲーム進行に必要なデータを送受信することによりゲームを進行するような一般的なネットワークゲーム環境に対しても本発明を適用することができる。
【０１４３】
その場合には、サーバから利用者端末へは、ゲームの進行度に関連する情報などを含むゲーム進行データを利用者端末へ送信することになり、その情報中に、上記実施形態におけるＵＲＬシリアル番号に対応する、利用者端末側のシリアル番号を含めればよい。なお、この場合、利用者端末側にゲーム画像が記憶媒体などの形態で用意されている場合には、ゲーム進行データ中にゲーム画面データを含む必要はなくなる。また、利用者端末からサーバへは、利用者のプレイに応じたゲーム進行データに、端末ＩＤ、及びシリアル番号を含めて送信すればよい。
【０１４４】
以上説明したように、本発明によれば、利用者が利用者携帯端末２１において、「再読込み」、「戻る」、「ブックマーク」機能等を用いて、ゲーム展開に影響のない画面へのアクセスを要求した場合、サーバ２２は、要求のあった画面に対応する画面データ送信する。よって、不正アクセスであるか否かに関わらず、ゲーム展開に影響のない単なる情報提供の画面へのアクセスを利用者が要求した場合は、サーバ２２は、利用者携帯端末２１に警告画面を表示させる等の利用者に不快な印象を与えるゲーム処理は行わない。
【０１４５】
一方、利用者が利用者携帯端末２１において、「戻る」、「ブックマーク」機能を用いて、最新の画面より過去の画面であり、且つ、ゲーム展開に影響のある画面へのアクセス要求をした場合、サーバ２２は要求のあった画面データを送信せず、警告画面を表示させる警告画面データを送信する。即ち、利用者携帯端末２１に警告画面を表示させることにより、利用者に不正アクセスである旨を認識させ、反省を促し、不正なアクセス要求の再発を防止することができる。
【０１４６】
また、「再読込み」、「戻る」又は「ブックマーク」機能を用いて、最新の画面へのアクセス要求をした場合、ゲーム展開に影響のあるか否かを問わず、画面データ保存ＤＢに記憶してある最新の画面データに基づいて当該画面データを表示する。即ち、例外的なアクセスにおいて利用者に悪意が無い場合は、通常通りゲーム処理が進むことになる。一方、利用者にとって望ましくないゲーム展開となったために「再読込み」機能などを利用して最新の画面へのアクセス要求をした場合、サーバ２２は画面データ保存ＤＢ２５に記憶してある過去に利用者携帯端末２１に送信した最新の画面データを利用者携帯端末２１に送信する。即ち、利用者に悪意がある場合、例外的なアクセスをしたからといって、利用者が望むゲーム展開に変更することはできない。よって、利用者の不正アクセスであるか否かの判断が難しい「再読込み」機能などによる最新の画面へのアクセス要求に対しても、適切なゲーム処理を行うことができる。
【０１４７】
【発明の効果】
このように、本発明によれば、利用者に不快感を与えることなく、不正アクセスを防止することができる。また、利用者はゲームのやり直しのための不正アクセスができないことで、緊張感を持続させることができ、ゲーム本来の魅力を損ねることがない。
【図面の簡単な説明】
【図１】本発明にかかる不正アクセス防止システムの概略構成を示す図である。
【図２】本発明が適用された携帯電話のブロック図である。
【図３】本発明の不正アクセス防止システムに使用される利用者ＤＢのデータ構造を模式的に示す図である。
【図４】クイズゲームにおける問題にかかる表示画面例を示す。
【図５】リンクボタンを表示するためのリンクタグを示す図である。
【図６】クイズゲームにおける解答にかかる表示画面例を示す。
【図７】本発明のプログラムにより実現される機能のブロック図である。
【図８】ゲーム実行処理において通常のアクセスが行われた場合の表示画面の流れを示す。
【図９】ゲーム実行処理において「再読込み」、「ブックマーク」機能による例外的なアクセスが行われた場合の表示画面の流れを示す。
【図１０】ゲーム実行処理において「戻る」機能による例外的なアクセスが行われた場合の表示画面の流れを示す。
【図１１】クイズゲームにおけるゲーム実行処理を示すフローチャートである。
【図１２】図１１のゲーム実行処理に含まれる例外的アクセス検出処理を示すフローチャートである。
【図１３】図１２の例外的アクセス検出処理に含まれる例外的アクセス対応処理を示すフローチャートである。
【符号の説明】
１　　　ＣＰＵ
２　　　ＲＯＭ
３　　　ＲＡＭ
４　　　キー入力部
５　　　送受信処理部
６　　　アンテナ
７　　　ＧＰＵ
８　　　モニタ
９　　　ＳＰＵ
１０　　スピーカ
１１　　データ入力部
１２　　バス
２０　　ネットワーク
２１　　利用者携帯端末
２２　　サーバ
２３　　ゲームＤＢ
２４　　利用者ＤＢ
２５　　画面データ保存ＤＢ
２６　　サービス提供会社
１００　不正アクセス防止システム
【図１】
2004024576.tif 000003
【図２】
2004024576.tif 000004
【図３】
2004024576.tif 000005
【図４】
2004024576.tif 000006
【図５】
2004024576.tif 000007
【図６】
2004024576.tif 000008
【図７】
2004024576.tif 000009
【図８】
2004024576.tif 000010
【図９】
2004024576.tif 000011
【図１０】
2004024576.tif 000012
【図１１】
2004024576.tif 000013
【図１２】
2004024576.tif 000014
【図１３】
2004024576.tif 000015