(57)【特許請求の範囲】
【請求項１】
ネットワークに接続可能なアクセスポイント装置と、当該アクセスポイント装置に対して無線通信可能な通信端末とを含む通信システムであって、
前記アクセスポイント装置は、
前記通信端末との間で暗号化通信を行うための鍵情報を生成するための接続情報、および当該接続情報から所定の生成アルゴリズムを用いて生成される当該鍵情報を記憶する接続情報記憶手段と、
前記接続情報を送信する送信手段とを備え、
前記通信端末は、
前記接続情報を受信する受信手段と、
前記接続情報記憶手段に記憶されている前記鍵情報を生成したのと同じ生成アルゴリズムを用いて、前記接続情報から前記鍵情報を生成する鍵情報生成手段と、
前記鍵情報生成手段によって生成された鍵情報を用いて、前記アクセスポイント装置と暗号化通信を行う接続通信手段とを備え、
前記接続情報は、前記アクセスポイント装置に関する情報を含む関連情報を所定の文字列変換アルゴリズムを用いて文字列データに変換した情報であり、
前記通信端末は、前記受信した接続情報を、前記所定の文字列変換アルゴリズムに対応した復元アルゴリズムを用いて前記関連情報に復元する復元手段を更に備え、
前記鍵情報生成手段は、前記復元された関連情報から前記鍵情報を生成する、通信システム。
【請求項２】
前記関連情報は、前記アクセスポイントが前記通信端末に対応している通信対象であることを示す特定情報を含み、
前記通信端末は、
前記特定情報を記憶する特定情報記憶手段と、
前記関連情報に含まれる特定情報と前記特定情報記憶手段に記憶されている特定情報とに基づいて前記アクセスポイントが通信対象となるものか否かを判別する判別手段とをさらに備え、
前記鍵情報生成手段は、前記判別手段によって前記アクセスポイントが通信対象であると判別されたときにのみ前記鍵情報を生成する、請求項１記載の通信システム。
【請求項３】
前記関連情報は、前記アクセスポイント装置の設置場所を示す場所情報を含み、
前記通信端末は、
前記接続通信手段により行われる暗号化通信を用いて所定の通信ゲームを実行する通信ゲーム実行手段と、
前記関連情報に含まれる前記場所情報に基づいて前記通信ゲームの内容を変化させる内容変化手段とを更に備える、請求項１記載の通信システム。
【請求項４】
前記関連情報は、前記アクセスポイント装置に関する情報と、所定の数値あるいは文字データからなるランダム情報とを含み、
前記鍵情報生成手段は、前記アクセスポイント装置に関する情報とランダム情報とを含む前記関連情報に基づいて前記鍵情報を生成する、請求項２記載の通信システム。
【請求項５】
暗号化通信を行うための鍵情報を生成するための生成情報を含む接続情報と、当該接続情報から所定の生成アルゴリズムを用いて生成される当該鍵情報とを記憶しているアクセスポイント装置と通信する通信端末であって、
前記アクセスポイント装置から送信される接続情報を受信する受信手段と、
前記所定の生成アルゴリズムを用いて、受信した前記接続情報から前記鍵情報を生成する鍵情報生成手段と、
前記生成された鍵情報を用いて前記アクセスポイント装置と暗号化通信を行う接続通信手段とを備え、
前記接続情報は、前記アクセスポイント装置に関する情報を含む関連情報を所定の文字列変換アルゴリズムを用いて文字列データに変換した情報であり、
前記通信端末は、前記受信した接続情報を、前記所定の文字列変換アルゴリズムに対応した復元アルゴリズムを用いて前記関連情報に復元する復元手段を更に備え、
前記鍵情報生成手段は、前記復元された関連情報から前記鍵情報を生成する、通信端末。
【請求項６】
暗号化通信を行うための鍵情報を生成するための生成情報を含む接続情報と、当該接続情報から所定の生成アルゴリズムを用いて生成される当該鍵情報とを記憶しているアクセスポイント装置と通信する通信端末のコンピュータに実行させる通信プログラムであって、
前記アクセスポイント装置から送信される接続情報を受信する受信手段と、
前記所定の生成アルゴリズムを用いて、受信した前記接続情報から前記鍵情報を生成する鍵情報生成手段と、
前記生成された鍵情報を用いて前記アクセスポイント装置と暗号化通信を行う接続通信手段として前記コンピュータを機能させ、
前記接続情報は、前記アクセスポイント装置に関する情報を含む関連情報を所定の文字列変換アルゴリズムを用いて文字列データに変換した情報であり、
前記通信プログラムは、前記受信した接続情報を、前記所定の文字列変換アルゴリズムに対応した復元アルゴリズムを用いて前記関連情報に復元する復元手段として前記コンピュータを更に機能させ、
前記鍵情報生成手段は、前記復元された関連情報から前記鍵情報を生成する、通信プログラム。
【請求項７】
暗号化通信を行うための鍵情報を生成するための生成情報を含む接続情報と、当該接続情報から所定の生成アルゴリズムを用いて生成される当該鍵情報とを記憶しているアクセスポイント装置と通信する通信端末で用いられる通信制御方法であって、
前記アクセスポイント装置から送信される接続情報を受信する受信ステップと、
前記所定の生成アルゴリズムを用いて、受信した前記接続情報から前記鍵情報を生成する鍵情報生成ステップと、
前記生成された鍵情報を用いて前記アクセスポイント装置と暗号化通信を行う接続通信ステップとを備え、
前記接続情報は、前記アクセスポイント装置に関する情報を含む関連情報を所定の文字列変換アルゴリズムを用いて文字列データに変換した情報であり、
前記通信方法は、前記受信した接続情報を、前記所定の文字列変換アルゴリズムに対応した復元アルゴリズムを用いて前記関連情報に復元する復元ステップを更に備え、
前記鍵情報生成ステップでは、前記復元された関連情報から前記鍵情報を生成する、通信制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は無線通信に関し、より特定的には、無線通信における接続処理に関する。
【背景技術】
【０００２】
従来、無線ＬＡＮ等の無線通信システムにおいては、セキュリティを高めるために暗号化通信が行われている。この暗号化の方式の１つとして、ＷＥＰ（Ｗｉｒｅｄ  Ｅｑｕｉｖａｌｅｎｔ  Ｐｒｉｖａｃｙ）と呼ばれる暗号化の方式が用いられる。この方式は、「共通鍵暗号方式」であり、アクセスポイントと無線ＬＡＮクライアントとの双方に同じ暗号鍵（ＷＥＰキー）を設定する。これによって、通信中のパケットを暗号化し、暗号化通信を行っている。このＷＥＰキーの生成に関して、無線ＬＡＮクライアントから認証要求を受けた認証サーバがＷＥＰキーを生成し、当該認証サーバが、生成したＷＥＰキーをアクセスポイント及び無線ＬＡＮクライアントに送信するという方法がある（例えば、特許文献１）。これにより、ＷＥＰキーが動的に割り当てられるため、セキュリティを向上させることができる。
【特許文献１】特開２００４−１５７２５号公報
【発明の開示】
【発明が解決しようとする課題】
【０００３】
しかしながら、上述の特許文献１に開示された方法では、以下に示すような問題点がある。上記の方法では、無線ＬＡＮクライアントから認証要求を受けた認証サーバが、その都度ＷＥＰキーを生成し、送信している。そのため、多数の無線ＬＡＮクライアントから同時に認証要求が行われると、認証サーバは、一度に多数のＷＥＰキーを生成、送信する必要がある。その結果、このような通信接続を確立するの際の認証サーバの処理負荷が一時的に高まり、接続確立のための処理時間が長くなるという問題があった。
【０００４】
それ故に、本発明の目的は、アクセスポイントと通信端末との間で、簡単かつ少ない処理負荷で接続処理を行うことができる通信システム、通信プログラムおよび通信端末を提供することである。
【課題を解決するための手段】
【０００５】
本発明は、上記の課題を解決するために、以下の構成を採用した。
【０００６】
第１の発明は、ネットワークに接続可能なアクセスポイント装置と、当該アクセスポイント装置に対して無線通信可能な通信端末とを含む通信システムである。アクセスポイント装置は、接続情報記憶手段と送信手段とを備える。接続情報記憶手段は、通信端末との間で暗号化通信を行うための鍵情報を生成するための生成情報を含む接続情報と当該生成情報から所定の生成アルゴリズムを用いて生成される鍵情報とを記憶する。送信手段は、接続情報を送信する。また、通信端末は、受信手段と、鍵情報生成手段と、接続通信手段とを備える。受信手段は、接続情報を受信する。鍵情報生成手段は、接続情報記憶手段に記憶されている鍵情報を生成したのと同じ生成アルゴリズムを用いて、受信した接続情報に含まれる生成情報から鍵情報を生成する。接続通信手段は、鍵情報生成手段によって生成された鍵情報を用いて、アクセスポイント装置と暗号化通信を行う。
【０００７】
第２の発明は、第１の発明において、接続情報は、アクセスポイント装置に関する情報を含む関連情報を所定の変換アルゴリズムを用いて文字列データに変換した情報である。また、通信端末は、受信した接続情報を、所定の変換アルゴリズムを用いて関連情報に復元する復元手段を更に備える。また、鍵情報生成手段は、復元された関連情報から鍵情報を生成する。
【０００８】
第３の発明は、第２の発明において、関連情報は、アクセスポイントが通信端末に対応している通信対象であることを示す特定情報を更に含む。また、通信端末は、特定情報を記憶する特定情報記憶手段と、および関連情報に含まれる特定情報と特定情報記憶手段に記憶されている特定情報とに基づいてアクセスポイントが通信対象となるものか否かを判別する判別手段をさらに備る。また、鍵情報生成手段は、判別手段によってアクセスポイントが通信対象であると判別されたときにのみ鍵情報を生成する。
【０００９】
第４の発明は、第２の発明において、関連情報は、アクセスポイント装置の設置場所を示す場所情報を更に含む。また、通信端末は、接続通信手段により行われる暗号化通信を用いて所定の通信ゲームを実行する通信ゲーム実行手段と、関連情報に含まれる場所情報に基づいて通信ゲームの内容を変化させる内容変化手段とを更に備える。
【００１０】
第５の発明は、第２の発明において、関連情報は、前記アクセスポイント装置に関する情報と、所定の数値あるいは文字データからなるランダム情報とを含む。また、鍵情報生成手段は、アクセスポイント装置に関する情報と、ランダム情報とを含む関連情報に基づいて鍵情報を生成する。なお、ここでいうランダム情報とは、アクセスポイント装置に関しない情報である。
【００１１】
第６の発明は、暗号化通信を行うための鍵情報を生成するための生成情報を含む接続情報と、当該接続情報から所定の生成アルゴリズムを用いて生成される当該鍵情報とを記憶しているアクセスポイント装置と通信する通信端末であって、受信手段と、鍵情報生成手段と、接続通信手段とを備える。受信手段は、アクセスポイントから送信される接続情報を受信する。鍵情報生成手段は、所定の生成アルゴリズムを用いて、受信した接続情報から鍵情報を生成する。接続通信手段は、生成された鍵情報を用いてアクセスポイント装置と暗号化通信を行う。
【００１２】
第７の発明は、暗号化通信を行うための鍵情報を生成するための生成情報を含む接続情報と、当該接続情報から所定の生成アルゴリズムを用いて生成される当該鍵情報とを記憶しているアクセスポイント装置と通信する通信端末に実行させる通信プログラムである。通信プログラムは、受信ステップと、鍵情報生成ステップと、接続通信ステップとを有する。受信ステップは、アクセスポイント装置から送信される接続情報を受信する。鍵情報生成ステップは、所定の生成アルゴリズムを用いて、受信した接続情報から鍵情報を生成する。接続通信ステップは、生成された鍵情報を用いてアクセスポイント装置と暗号化通信を行う。
【発明の効果】
【００１３】
上記第１の発明によれば、通信端末で鍵情報を生成できるため、他のサーバ等で鍵情報を生成させる場合に比べ、鍵情報生成の処理にかかる負荷を各通信端末に分散して軽減することができ、その結果、接続確立処理にかかる時間を短縮することが可能となる。また、暗号化通信を行うための設定作業を通信端末のユーザに行わせることなく、暗号化通信を行うことが可能となる。また、特定の種類の通信端末に鍵情報生成手段を備えさせることにより、当該特定の種類の通信端末以外の通信端末からの不正アクセスを防ぐことができる。
【００１４】
上記第２の発明によれば、関連情報を一旦所定の文字列データに変換してから送信し、通信端末において復元してから鍵情報を生成する。そのため、通信端末と暗号化通信を行うためには、通信端末側に鍵情報生成のための手段と関連情報の復元のための手段とを備えさせることを必要とさせ、当該特定の種類の通信端末以外の通信端末からの不正アクセスについて、より高いセキュリティを提供することができる。
【００１５】
上記第３の発明によれば、例えば他業者のアクセスポイント等の、本来、通信対象とならないアクセスポイントに誤って接続されることを防ぐことができる。
【００１６】
上記第４の発明によれば、通信端末が接続したアクセスポイントに応じて、通信端末上で実行される通信ゲームの実行内容を変化させることができる。これにより、接続するアクセスポイント毎に違ったゲーム展開を提供することができ、飽きのこないゲームを提供できる。
【００１７】
上記第５の発明によれば、アクセスポイントで鍵情報が変更されても、ユーザは当該変更に応じた通信端末側の設定作業を行うことがない。そのため、ユーザに手軽な暗号化通信ができる環境を提供できる。また、通信端末側を意識することなく、アクセスポイント側の鍵情報を変更でき、定期的な鍵情報の変更等によるセキュリティの向上を図ることができる。
【００１８】
また、本発明の通信端末および通信プログラムによれば、上述した第１の発明と同様の効果を得ることができる。
【発明を実施するための最良の形態】
【００１９】
図１は、本発明の実施形態に係るアクセスポイント（以下、ＡＰと呼ぶ）１の構成を示したブロック図である。図１において、ＡＰ１は、通信部２と記憶部３と制御部４とで構成される。通信部２は、通信パケットの送受信を行うことで、後述する携帯ゲーム装置１０と無線通信を行う。記憶部３は、制御部４で実行される通信制御プログラムや、後述のＷＥＰキーやＳＳＩＤ等の、通信に必要な各種データが記憶される。制御部４は、通信部２を通じて携帯ゲーム装置１０との無線通信リンクを確立し、ネットワークにおけるデータ搬送制御や経路選択を行う。
【００２０】
図２は、本発明の一実施形態である携帯ゲーム装置１０の外観図である。図２において、携帯ゲーム装置１０は、第１のＬＣＤ（Ｌｉｑｕｉｄ  Ｃｒｙｓｔａｌ  Ｄｉｓｐｌａｙ：液晶表示装置）１１および第２のＬＣＤ１２を含む。ハウジング１３は上側ハウジング１３ａと下側ハウジング１３ｂとによって構成されており、第１のＬＣＤ１１は上側ハウジング１３ａに収納され、第２のＬＣＤ１２は下側ハウジング１３ｂに収納される。第１のＬＣＤ１１および第２のＬＣＤ１２の解像度はいずれも２５６ｄｏｔ×１９２ｄｏｔである。なお、本実施形態では表示装置としてＬＣＤを用いているが、例えばＥＬ（Ｅｌｅｃｔｒｏ  Ｌｕｍｉｎｅｓｃｅｎｃｅ：電界発光）を利用した表示装置など、他の任意の表示装置を利用することができる。また任意の解像度のものを利用することができる。
【００２１】
上側ハウジング１３ａには、後述する１対のスピーカ（図３の３０ａ、３０ｂ）からの音を外部に放出するための音抜き孔１８ａ、１８ｂが形成されている。
【００２２】
下側ハウジング１３ｂには、入力装置として、十字スイッチ１４ａ、スタートスイッチ１４ｂ、セレクトスイッチ１４ｃ、Ａボタン１４ｄ、Ｂボタン１４ｅ、Ｘボタン１４ｆ、Ｙボタン１４ｇ、Ｌボタン１４ＬおよびＲボタン１４Ｒが設けられている。また、さらなる入力装置として、第２のＬＣＤ１２の画面上にタッチパネル１５が装着されている。また、下側ハウジング１３ｂには、電源スイッチ１９や、メモリカード１７やスティック１６を収納するための挿入口も設けられている。
【００２３】
タッチパネル１５としては、例えば抵抗膜方式や光学式（赤外線方式）や静電容量結合式など、任意の方式のものを利用することができる。タッチパネル１５は、その表面をスティック１６で触れると、その接触位置に対応する座標データを出力する機能を有している。なお、以下ではプレイヤがタッチパネル１５をスティック１６で操作するものとして説明を行うが、スティック１６の代わりにペン（スタイラスペン）や指でタッチパネル１５を操作することももちろん可能である。本実施形態では、タッチパネル１５として、第２のＬＣＤ１２の解像度と同じく２５６ｄｏｔ×１９２ｄｏｔの解像度（検出精度）のものを利用する。ただし、必ずしもタッチパネル１５の解像度と第２のＬＣＤ１２の解像度が一致している必要はない。
【００２４】
メモリカード１７はゲームプログラムを記録した記録媒体であり、下部ハウジング１３ｂに設けられた挿入口に着脱自在に装着される。
【００２５】
次に、図３を参照して携帯ゲーム装置１０の内部構成を説明する。
【００２６】
図３において、ハウジング１３に収納される電子回路基板２０には、ＣＰＵコア２１が実装される。ＣＰＵコア２１には、バス２２を介して、コネクタ２３が接続されるとともに、入出力インターフェース回路（図面ではＩ／Ｆ回路と記す）２５、第１ＧＰＵ（Ｇｒａｐｈｉｃｓ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）２６、第２ＧＰＵ２７、ＲＡＭ２４、ＬＣＤコントローラ３１、およびワイヤレス通信部３３が接続される。コネクタ２３には、メモリカード１７が着脱自在に接続される。メモリカード１７は、ゲームプログラムを記憶するＲＯＭ１７ａと、バックアップデータを書き換え可能に記憶するＲＡＭ１７ｂを搭載する。メモリカード１７のＲＯＭ１７ａに記憶されたゲームプログラムはＲＡＭ２４にロードされ、ＲＡＭ２４にロードされたゲームプログラムがＣＰＵコア２１によって実行される。ＲＡＭ２４には、ゲームプログラムの他にも、ＣＰＵコア２１がゲームプログラムを実行して得られる一時的なデータや、ゲーム画像を生成するためのデータが記憶される。Ｉ／Ｆ回路２５には、タッチパネル１５、右スピーカ３０ａ、左スピーカ３０ｂおよび図２の十字スイッチ１４ａやＡボタン１４ｄ等から成る操作スイッチ部１４が接続される。右スピーカ３０ａと左スピーカ３０ｂは、音抜き孔１８ａ、１８ｂの内側にそれぞれ配置される。
【００２７】
第１ＧＰＵ２６には、第１ＶＲＡＭ（Ｖｉｄｅｏ  ＲＡＭ）２８が接続され、第２ＧＰＵ２７には、第２ＶＲＡＭ２９が接続される。第１ＧＰＵ２６は、ＣＰＵコア２１からの指示に応じて、ＲＡＭ２４に記憶されているゲーム画像を生成するためのデータに基づいて第１のゲーム画像を生成し、第１ＶＲＡＭ２８に描画する。第２ＧＰＵ２７は、同様にＣＰＵコア２１からの指示に応じて第２のゲーム画像を生成し、第２ＶＲＡＭ２９に描画する。第１ＶＲＡＭ２８および第２ＶＲＡＭ２９はＬＣＤコントローラ３１に接続されている。
【００２８】
ＬＣＤコントローラ３１はレジスタ３２を含む。レジスタ３２はＣＰＵコア２１からの指示に応じて０または１の値を記憶する。ＬＣＤコントローラ３１は、レジスタ３２の値が０の場合は、第１ＶＲＡＭ２８に描画された第１のゲーム画像を第１のＬＣＤ１１に出力し、第２ＶＲＡＭ２９に描画された第２のゲーム画像を第２のＬＣＤ１２に出力する。また、レジスタ３２の値が１の場合は、第１ＶＲＡＭ２８に描画された第１のゲーム画像を第２のＬＣＤ１２に出力し、第２ＶＲＡＭ２９に描画された第２のゲーム画像を第１のＬＣＤ１１に出力する。
【００２９】
ワイヤレス通信部３３は、上記ＡＰ１や他の携帯ゲーム装置のワイヤレス通信部３３との間で、ゲーム処理に利用されるデータやその他のデータをやりとりする機能を有しており、一例としてＩＥＥＥ８０２．１１の無線ＬＡＮ規格に則った無線通信機能を提供する。そして、ワイヤレス通信部３３は、受信したデータをＣＰＵコア２１に出力する。また、ワイヤレス通信部３３は、ＣＰＵコア２１から指示されたデータをＡＰ１や他の携帯ゲーム装置へ送信する。なお、ＴＣＰ／ＩＰ（Ｔｒａｎｓｍｉｓｓｉｏｎ  Ｃｏｎｔｒｏｌ  Ｐｒｏｔｏｃｏｌ／Ｉｎｔｅｒｎｅｔ  Ｐｒｏｔｏｃｏｌ）等のプロトコルや所定のブラウザをワイヤレス通信部３３や携帯ゲーム装置１０内の記憶部に実装することによって、携帯ゲーム装置１０は、ワイヤレス通信部３３を介してインターネット等のネットワークとの接続が可能となる。そして、携帯ゲーム装置１０は、ネットワーク上で公開されている文書や画像等のデータを第１のＬＣＤ１１および第２のＬＣＤ１２で閲覧することができる。
【００３０】
なお、上記ＡＰ１との通信対象として、本実施形態では上述のような携帯ゲーム装置１０を一例として説明するが、通信対象はこれに限らず、例えば、無線通信機能を有する携帯情報端末やノート型パーソナルコンピュータ等であってもよい。
【００３１】
次に、本実施形態で想定するＡＰ１と携帯ゲーム装置１０との間の通信動作の概要について説明する。本実施形態では、ＡＰ１は、例えば、おもちゃ屋等の店舗に置かれるテレビゲームの試遊台等と一緒に設置される。また、携帯ゲーム装置１０は上述したように、通信機能を有する携帯ゲーム機である。本実施形態で想定するゲームは、通信対戦が可能なレースゲームである。ユーザは、当該携帯ゲーム装置１０を持って上記おもちゃ屋に行く。そして、携帯ゲーム装置１０を起動し、上記レースゲームのメニューから「通信対戦モード」を選択する。携帯ゲーム装置１０は、ＡＰ１とコネクションの確立を試み、後述するような処理が行われてコネクションが確立すれば、当該ＡＰ１を経由してレースゲーム専用のネットワークにアクセスし、他のユーザと通信対戦する。
【００３２】
図４は、上述したようなＡＰ１と携帯ゲーム装置１０との間の通信の流れを示すシーケンスチャートである。図４において、まず、ＡＰ１のおもちゃ屋等の店舗への設置に先立って、ＡＰ設定処理が行われる（Ｍ４１）。当該ＡＰ設定処理では、所定のバイナリデータを基にしたＷＥＰキーの生成・記録、および、同じく所定のバイナリデータを基にしたＳＳＩＤの生成・記録が行われる（詳細は後述）。ＡＰ設定処理が終わり、店舗に設置されたＡＰ１は、定期的に上記ＳＳＩＤを含んだビーコンパケット（以下、ビーコンと呼ぶ）を流す（Ｍ４２）。携帯ゲーム装置１０は、まず、ＡＰ１から送信されるビーコンの受信を開始する（Ｍ４３）。ビーコンを受信すると、当該ビーコンに含まれるＳＳＩＤをバイナリデータに復元する（Ｍ４４）。続いて、上記ＡＰ設定処理におけるＷＥＰキー生成で用いられたアルゴリズムと同じアルゴリズムで、復元したバイナリデータからＷＥＰキーを生成する（Ｍ４５）。ＷＥＰキーが生成できれば、携帯ゲーム装置１０は、ＡＰ１に認証要求を行う（Ｍ４６）。ＡＰ１は、チャレンジテキストを生成し（Ｍ４７）、携帯ゲーム装置１０に送信する（Ｍ４８）。携帯ゲーム装置１０は、当該チャレンジテキストをＷＥＰキーで暗号化して（Ｍ４９）、ＡＰ１に送信する（Ｍ５０）。ＡＰ１は、上記ＡＰ設定処理において自己に記録されているＷＥＰキーを用いて、当該暗号化されたチャレンジテキストを解読できるかどうかで、認証の是非を判断する（Ｍ５１）。そして、認証が成功すれば、ＡＰ１と携帯ゲーム装置１０との間でＷＥＰを用いた暗号化通信が実施される（Ｍ５２）。
【００３３】
次に、ＡＰが上記おもちゃ屋に設置される前に行われるＡＰ設定処理（図４のＭ４１）の概要を説明する。図５は、当該ＡＰ設定処理におけるデータの流れを示す図である。図５において、まず、所定のコンピュータ上で、特定情報９１１、場所情報９１２、ランダム値９１３の３つの情報を入力値とするバイナリデータ生成処理が実行され、その結果、後述するような２４バイトのバイナリデータ９１が生成される。次に、当該バイナリデータ９１を引数として、ＷＥＰキー生成プログラム（携帯ゲーム装置１０で用いられるものと同じプログラム）が上記所定のコンピュータ上で実行され、ＷＥＰキーが生成される。これに併せて、当該バイナリデータを引数とするＳＳＩＤ変換プログラムが実行され、３２バイトの文字列データであるＳＳＩＤが生成される。そして、当該生成されたＷＥＰキーおよびＳＳＩＤがＡＰ１の記憶部３に記録されることで、ＡＰ設定処理が完了する。このようなＡＰ設定処理が行われたＡＰ１が、上記試遊台等に設置されることになる。そして、設置されたＡＰ１は、定期的に上記ＳＳＩＤを含んだビーコンを流す。
【００３４】
次に、携帯ゲーム装置１０の動作概要について説明する。上述したように、ユーザが携帯ゲーム装置１０を起動し、レースゲームのメニューから「通信対戦モード」を選択すると、携帯ゲーム装置１０は、上記ＡＰ１から発信されるビーコンを受信する（図４のＭ４３に相当）。図６は、携帯ゲーム装置１０におけるデータの流れを示す図（図４のＭ４４、Ｍ４５に相当）である。図６に示すように、携帯ゲーム装置１０は、まず、ＡＰ１からＳＳＩＤを受信する。次に、当該ＳＳＩＤをバイナリデータに復元する。次に、復元したバイナリデータを引数としてＷＥＰキー生成プログラムを実行し、ＷＥＰキーを生成する。このように、携帯ゲーム装置１０では、ＡＰ１から受信したＳＳＩＤから、ＷＥＰキーを生成する処理が行われる。この後、当該ＷＥＰキーを用いて、通信する権限を有するか否かを判定する認証処理や、当該ＡＰ１を経由して他のプレイヤと通信対戦するレースゲームの処理が行われる（図４のＭ４６以降に相当）。
【００３５】
次に、本実施形態の通信処理で用いられる各種プログラムおよびデータについて説明する。図７は、図１に示したＡＰ１の記憶部３のメモリマップを示す図解図である。図７において、記憶部３は、プログラム記憶領域７１およびデータ記憶領域７２を含む。プログラム記憶領域７１には、通信プログラム７１１が格納される。通信プログラム７１１は、通信端末やインターネット等との通信全般を制御するためのプログラムである。データ記憶領域７２には、ＷＥＰキー記憶領域７２１およびＳＳＩＤ記憶領域７２２が含まれる。ＷＥＰキー記憶領域７２１には、上述のＡＰ設定処理で生成されたＷＥＰキーが格納される。ＳＳＩＤ記憶領域７２２には、同じくＡＰ設定処理で生成されたＳＳＩＤが格納される。
【００３６】
図８は、図３に示した携帯ゲーム装置１０のＲＡＭ２４のメモリマップを示す図解図である。図８において、ＲＡＭ２４は、プログラム記憶領域８１およびデータ記憶領域８２を含む。プログラム記憶領域８１には、ＷＥＰキー生成プログラム８１１と、ＳＳＩＤ復元プログラム８１２と、通信プログラム８１３と、ＡＰ判別プログラム８１４と、ゲームプログラム８１５とが含まれる。ＷＥＰキー生成プログラム８１１は、後述する２４バイトのバイナリデータ９１を引数として、上記ＷＥＰキーを生成する。より具体的には、ＷＥＰキー生成プログラム８１１は、当該バイナリデータを所定の変換方式に従って所定長（例えば、１０４ビット）のＷＥＰキーに変換する。なお、ＷＥＰキーを暗号化通信に用いる場合には、当該ＷＥＰキーと２４ビットの初期化ベクタ（Ｉｎｉｔｉａｌｉｚａｔｉｏｎ  Ｖｅｃｔｏｒ；ＩＶ）とを混合した所定長（例えば、１２８ビット）の鍵として使用される。また、当該ＷＥＰキー生成プログラム８１１で用いられるＷＥＰキー生成アルゴリズムは、上述のＡＰ設定処理でＷＥＰキー生成時に用いられるアルゴリズムと同じものである。ＳＳＩＤ復元プログラム８１２は、上記ＡＰ設定処理で生成されたＳＳＩＤをバイナリデータに復元するためのプログラムである。換言すれば、上記ＡＰ設定処理で、ＳＳＩＤを生成するために用いられる変換アルゴリズムに対応した復元アルゴリズムを有するプログラムである。通信プログラム８１３は、ＡＰとの通信や、ＡＰを介したインターネット等との通信制御を行うためのプログラムである。ＡＰ判別プログラム８１４は、接続を確立してもよいＡＰであるか否かの判別や、ＡＰの設置場所の判別を行うためのプログラムである。ゲームプログラム８１５は、ゲーム処理を行うためのプログラムである。
【００３７】
データ記憶領域８２には、ＷＥＰキー記憶領域８２１および特定情報記憶領域８２２が含まれる。ＷＥＰキー記憶領域８２１には、ＷＥＰキー生成プログラム８１１で生成されたＷＥＰキーが格納される。特定情報記憶領域８２２には、予め特定情報（キーワード）９１１（後述）が格納されている。
【００３８】
図９は、上記ＷＥＰキーやＳＳＩＤ生成の基となる、バイナリデータ９１のデータ構造の一例を示した図である。バイナリデータ９１は、特定情報９１１と場所情報９１２とランダム値９１３の集合で構成される、２４バイトのデータである。特定情報９１１は、８バイトのデータであり、携帯ゲーム装置１０が接続を確立しようとするＡＰが、携帯ゲーム装置１０に対応したＡＰであるか、例えば他事業者のＡＰであるために通信接続の対象ではない等、携帯ゲーム装置１０の通信対象として認められるか否かを識別するための情報である。例えば、ベンダーＩＤなどがこれに相当する。場所情報９１２は、１０バイトのデータであり、ＡＰ１の設置場所を示す情報である。ランダム値９１３は、６バイトのデータであり、ＷＥＰキーを変更する際に用いられる情報である。上述したように、ＷＥＰキーは、バイナリデータ全体を引数にして生成されるため、当該ランダム値９１３を変更することで、異なるＷＥＰキーを生成することができる。
【００３９】
次に、ＡＰ１と携帯ゲーム装置１０との間で実行される通信処理の詳細について説明する。まず、ＡＰ１で行われる動作について説明する。ＡＰ１では、店舗への設置に先立って、上述したようなＡＰ設定処理が行われる。図１０は、所定のコンピュータ上で行われる、当該ＡＰ設定処理の詳細を示すフローチャートである。図１０において、まず、所定のコンピュータ上で、特定情報９１１、場所情報９１２、ランダム値９１３の３つの情報が入力される（ステップＳ１）。次に、当該３つの情報を入力値とするバイナリデータ生成処理が実行される（ステップＳ２）。その結果、２４バイトのバイナリデータ９１が生成される。
【００４０】
次に、当該バイナリデータ９１を引数として、上記ＷＥＰキー生成プログラム８１１（携帯ゲーム装置１０で用いられるものと同じプログラム）が上記所定のコンピュータ上で実行され、ＷＥＰキーが生成される（ステップＳ３）。これに併せて、当該バイナリデータ９１を引数とするＳＳＩＤ変換プログラムが実行され、３２バイトの文字列データであるＳＳＩＤが生成される（ステップＳ４）。より具体的には、所定のルール（例えば、Ｂａｓｅ６４等。但し、望ましくは独自のルール）に従って、当該バイナリデータを文字に置換えていくことで、ＳＳＩＤが生成される。そして、当該生成されたＷＥＰキーおよびＳＳＩＤがＡＰ１の記憶部３に記録される（ステップＳ５）。以上で、ＡＰ設定処理が終了する。
【００４１】
このように設定されたＡＰ１は、上記店舗等に設置される。設置されたＡＰ１は、定期的に上記ビーコンを流す。なお、上述したような、ＷＥＰキーを変更するために上記ランダム値９１３を変更したときは、当該変更後のランダム値を反映してバイナリデータ９１を生成する。更に、当該変更後のバイナリデータ９１を用いてＷＥＰキーおよびＳＳＩＤを生成し、当該ＷＥＰキーおよびＳＳＩＤをＡＰ１に記憶しなおしておく。
【００４２】
次に、携帯ゲーム装置１０で実行される通信処理の詳細について説明する。図１１および図１２は、携帯ゲーム装置１０において実行される通信処理の流れを示すフローチャートである。まず、ユーザは、携帯ゲーム装置１０を持って、上記ＡＰ１の設置されている店舗に行き、携帯ゲーム装置１０を起動する。携帯ゲーム装置１０が起動すると、レースゲームのメニューが表示される。ユーザは当該メニューから、「通信対戦モード」を選ぶことで、図１１に示すフローチャートの処理が開始される。
【００４３】
図１１において、まず、ＣＰＵコア２１は、ワイヤレス通信部３３にビーコンの受信を所定時間試みさせ、ビーコンが受信できたか否かを判定する（ステップＳ２１）。当該判定の結果、ビーコンが所定時間内に受信できなければ（ステップＳ２１でＮＯ）、例えば「アクセスポイントが見つかりませんでした。接続処理を再度行いますか？」等のように、接続処理を継続するか否かの問合せ画面を表示し、ユーザの指示を待つ（ステップＳ２９）。ユーザからの指示が入力されると、ＣＰＵコア２１は、当該指示が接続処理を継続する旨の指示か否かを判定する（図１２のステップＳ３７）。当該判定の結果、接続処理を継続する指示が出されたときは（ステップＳ３７でＹＥＳ）、上記ステップＳ２１に戻って処理を繰り返す。一方、接続処理を継続しない指示のときは（ステップＳ３７でＮＯ）、ＣＰＵコア２１は、通信処理を終了して、ゲームのメニュー画面に戻る。
【００４４】
ステップＳ２１の判定の結果、所定時間内にビーコンを受信したときは（ステップＳ２１でＹＥＳ）、ＣＰＵコア２１は、受信したビーコンに含まれるＳＳＩＤを抽出し、当該ＳＳＩＤを引数として上記ＳＳＩＤ復元プログラム８１２を実行する。これにより、上記受信したビーコンに含まれるＳＳＩＤがバイナリデータ９１に復元される（ステップＳ２２）。つまり、上述したように、ＳＳＩＤ復元プログラム８１２は、上記ＡＰ設定処理でＳＳＩＤを生成するために用いられる変換アルゴリズムに対応した復元アルゴリズムを有しているため、ＳＳＩＤをいわば逆変換することでバイナリデータに復元することができる。また、この際、ＳＳＩＤ復元プログラム８１２において、例えばチェックサム等を用いることで、バイナリデータ９１に正常に復元できたか否かを示す戻り値をＣＰＵコア２１に通知する（例えば、戻り値＝０；正常終了、戻り値＝１；異常終了）。
【００４５】
次に、ステップＳ２２において通知された戻り値に基づき、ＣＰＵコア２１は、ステップＳ２２における復元処理が成功したかを判定する（ステップＳ２３）。その結果、復元が失敗していたときは（ステップＳ２３でＮＯ）、ＣＰＵコア２１は、上記ＡＰ１が携帯ゲーム装置１０に対応したＡＰではないとして、その旨をＬＣＤ１２に表示する（ステップＳ３０）。これは、例えば、本実施形態における携帯ゲーム装置１０との通信に対応していない他の事業者のＡＰのビーコンを受信した場合等が該当する。ステップＳ３０の処理の後、ＣＰＵコア２１は、処理を上記ステップＳ３７に進める。
【００４６】
一方、ステップＳ２３の判定の結果、バイナリデータ９１の復元が成功しているときは（ステップＳ２３でＹＥＳ）、続いて、ＣＰＵコア２１は、当該バイナリデータ９１から特定情報９１１と場所情報９１２を取得する（ステップＳ２４）。次に、ＣＰＵコア２１は、ステップＳ２４で取得した特定情報９１１と、携帯ゲーム装置１０の特定情報記憶領域８２２に予め記憶されている上記特定情報とを照合する（ステップＳ２５）。次に、ＣＰＵコア２１は、当該照合の結果、両特定情報が一致したか否かを判定する（ステップＳ２６）。特定情報が一致していないときは（ステップＳ２６でＮＯ）、ＣＰＵコア２１は、処理を上記ステップＳ３０へ進める。つまり、この場合も、携帯ゲーム装置１０に対応していない他の事業者のＡＰである等で、通信対象ではない場合が該当する。
【００４７】
一方、特定情報が一致すれば（ステップＳ２６でＹＥＳ）、通信対象となるＡＰであると判定されるため、ＣＰＵコア２１は、処理を次のステップＳ２７に進める。ステップＳ２７においては、ＷＥＰキーの生成処理が行われる（ステップＳ２７）。このステップＳ２７の処理をより具体的に説明すると、ＣＰＵコア２１は、上記復元したバイナリデータ９１を引数として、ＷＥＰキー生成プログラム８１１を実行する。このＷＥＰキー生成プログラム８１１は、上記ＡＰ設定処理においてＷＥＰキーの生成に用いられるＷＥＰキー生成アルゴリズムと同じアルゴリズムを有している。そのため、同じバイナリデータ９１を引数とした結果、上記ＡＰ１に記憶されているＷＥＰキーと同じＷＥＰキーが生成されることになる。
【００４８】
次に、ＣＰＵコア２１は、ステップＳ２７で生成されたＷＥＰキーおよび上記ＳＳＩＤを用いて、ＡＰ１とＷＥＰ認証を行う（ステップＳ２８）。すなわち、携帯ゲーム装置１０で受信した上記ＳＳＩＤと同じＳＳＩＤを有しているＡＰ１との間でＷＥＰ認証処理を行う。当該ＷＥＰ認証は、図４を用いて上述したような、ＡＰ１からチャレンジテキストを送信し、携帯ゲーム装置１０で当該チャレンジテキストをＷＥＰキーを用いて暗号化して、ＡＰ１に返すという認証方式が用いられる。
【００４９】
次に、ステップＳ２８のＷＥＰ認証処理の結果、ＡＰ１に認証されたか否かが判定される（図９のステップＳ３１）。認証されなかったときは（ステップＳ３１でＮＯ）、ＣＰＵコア２１は、認証が失敗した旨のメッセージをＬＣＤ１２に表示し（ステップＳ３６）、処理をステップＳ３７に進める。一方、ＡＰ１に認証されたときは（ステップＳ３１でＹＥＳ）、携帯ゲーム装置１０とＡＰ１との間でコネクションが確立する。コネクションが確立すれば、レースゲームの処理が開始される。まず、上記ステップＳ２４で取得した場所情報９１２に基づいて、レースの舞台となるコースを選択する（ステップＳ３２）。より具体的には、上記場所情報９１２の最初の６バイトにＡＰ１が設置される地域ごとのコード（地域コード）を割り振り、下４バイトにＡＰ１を設置する店舗毎のコード（店コード）を割り振っておく。そして、当該地域コードに応じて、上記レースゲームにおけるコースを、雪山のコースにしたり、海辺のコースにする（ステップＳ３２）。次に、レース中に出現するアイテムに関する、アイテム出現テーブルを設定する（ステップＳ３３）。具体的には、上記地域コードや店コードに基づき、ＡＰ１が設置してある地域の特産品等がアイテムとして出現するように、アイテム出現テーブルを設定する（ステップＳ３３）。その後、携帯ゲーム装置１０とＡＰ１との間でＷＥＰキーを用いた暗号化通信が行われ、通信対戦のレースゲーム処理が行われる（ステップＳ３４）。ステップＳ３４の後、ステップＳ３５において、ゲーム終了か否かが判断され、ＹＥＳの場合、ＣＰＵコア２１は、コネクションを切断し、ゲーム処理を終了する。一方、ＮＯの場合、ステップＳ３４に戻って、ゲーム処理を繰り返す。以上で、携帯ゲーム装置１０で行われる通信処理が終了する。
【００５０】
このように、上述したような実施形態では、アクセスポイントから送信される情報に基づいて、アクセスポイントとの接続確立のために必要な情報を生成することができる。これにより、多数の通信端末が同時にネットワークと接続を確立しようとする際に、認証サーバに余計な処理負荷をかけることがないため、接続確立のための時間を短縮することができる。また、ユーザは、携帯ゲーム装置１０にＷＥＰキー等の接続のための煩わしい設定作業を行うことなく、ＡＰ１と手軽に暗号化通信を行うことができる。また、上記キーワードを用いた照合によって、通信対象となるＡＰであるかどうかを通信端末側で判別でき、本来通信対象とならないＡＰとの間で誤って接続が確立されることを防ぐことができる。また、上記ランダム値を用いてＡＰ側のＷＥＰキーを変更したときは、当該ランダム値変更後のバイナリデータがＳＳＩＤとして送受信される。そして、当該ＳＳＩＤから変更後のＷＥＰキーが生成される。そのため、このような場合であっても、ユーザはＡＰ側でＷＥＰキーが変更されたことを意識することなく、且つ、携帯ゲーム装置１０において設定変更作業を行うこと無しに、暗号化通信を行うことができる。
【００５１】
また、上述の実施形態では、場所情報９１２をゲーム処理に必要なパラメータの一部として用いているため、ＡＰ１の設置場所に応じてゲームの展開等を変化させることができる。これにより、通信するＡＰ毎に、通信端末で実行されるゲームの展開を異なったものとすることができ、飽きのこないゲームを提供することが可能となる。
【００５２】
また、上述した実施形態では、ユーザがメニューから「通信対戦モード」を選ぶことで接続処理が開始されていたが、これに限らず、ゲーム等の展開に応じて自動的に接続処理が開始され、また、自動的に接続が切断されるようにしてもよい。これにより、ユーザに接続処理にかかる操作を行わせること無く、ネットワークを利用したゲーム等のアプリケーションをユーザに利用させることができる。
【００５３】
また、ＡＰを個別に識別する必要がない場合は、上記場所情報９１２を使用しなくてもよい。この場合は、更に、上記ＡＰ設定処理においてもバイナリデータ９１を生成しないようにしてもよい。つまり、上記ＡＰ設定処理において、上記特定情報９１１とランダム値５１３とを文字列データとして組み合わせることでＳＳＩＤを生成し、当該ＳＳＩＤからＷＥＰキーを生成する。そして、当該ＳＳＩＤとＷＥＰキーをＡＰに記録しておき、ＡＰは、当該ＳＳＩＤを送信するようにする。携帯ゲーム装置１０では、上述したようなバイナリデータからＳＳＩＤを復元する処理は行わずに、受信したＳＳＩＤを引数として、ＷＥＰキー生成プログラムを実行するようにしてもよい。これにより、携帯ゲーム装置１０における処理負荷を減らすことができる。
【図面の簡単な説明】
【００５４】
【図１】本発明の実施形態にかかるアクセスポイントのブロック図
【図２】本発明の実施形態に係る携帯ゲーム装置の外観を示す図
【図３】本発明の実施形態に係る携帯ゲーム装置の構成を示したブロック図
【図４】本発明の実施形態に係る通信システムのシーケンスチャート
【図５】ＡＰ設定処理におけるデータのフローを示す図
【図６】携帯ゲーム装置１０におけるデータのフローを示す図
【図７】ＡＰ１の記憶部３のメモリマップを示す図解図
【図８】携帯ゲーム装置１０のＲＡＭ２４のメモリマップを示す図解図
【図９】バイナリデータのデータ構造の一例を示した図
【図１０】アクセスポイント設定処理の流れを示すフローチャート
【図１１】携帯ゲーム装置１０において実行される通信処理の流れを示すフローチャート
【図１２】携帯ゲーム装置１０において実行される通信処理の流れを示すフローチャート
【符号の説明】
【００５５】
１  アクセスポイント
２  通信部
３  記憶部
４  制御部
１０  ゲーム装置
１１  第１のＬＣＤ
１２  第２のＬＣＤ
１３  ハウジング
１３ａ  上側ハウジング
１３ｂ  下側ハウジング
１４  操作スイッチ部
１４ａ  十字スイッチ
１４ｂ  スタートスイッチ
１４ｃ  セレクトスイッチ
１４ｄ  Ａボタン
１４ｅ  Ｂボタン
１４ｆ  Ｘボタン
１４ｇ  Ｙボタン
１４Ｌ  Ｌボタン
１４Ｒ  Ｒボタン
１５  タッチパネル
１６  スティック
１７  メモリカード
１７ａ  ＲＯＭ
１７ｂ  ＲＡＭ
１８ａ，１８ｂ  音抜き孔
１９  電源スイッチ
２０  電子回路基板
２１  ＣＰＵコア
２２  バス
２３  コネクタ
２４  ＲＡＭ
２５  Ｉ／Ｆ回路
２６  第１ＧＰＵ
２７  第２ＧＰＵ
２８  第１ＶＲＡＭ
２９  第２ＶＲＡＭ
３０ａ  右スピーカ
３０ｂ  左スピーカ
３１  ＬＣＤコントローラ
３２  レジスタ
３３  ワイヤレス通信部
【図１】
0004836241.tif 000002
【図２】
0004836241.tif 000003
【図３】
0004836241.tif 000004
【図４】
0004836241.tif 000005
【図５】
0004836241.tif 000006
【図６】
0004836241.tif 000007
【図７】
0004836241.tif 000008
【図８】
0004836241.tif 000009
【図９】
0004836241.tif 000010
【図１０】
0004836241.tif 000011
【図１１】
0004836241.tif 000012
【図１２】
0004836241.tif 000013