以下、図面を参照して、本発明の実施形態を説明する。
図1は、本発明の一実施形態に係る電子機器の構成を示している。この電子機器10は、例えば、ポータブルコンピュータ、携帯電話、PDA、オーディオプレーヤ、TV等として実現される。この電子機器10は、システム制御部11、メモリ12、ストレージデバイス13、入力部14、液晶表示装置(LCD)15、サウンドコントローラ16、スピーカ17、インジケータ18、電源制御部19、および近接無線通信デバイス20を備える。
システム制御部11は、電子機器10内の各部の動作を制御する。システム制御部11は、メモリ12、ストレージデバイス13、入力部14、LCD15、サウンドコントローラ16、インジケータ18、電源制御部19、および近接無線通信デバイス20に接続されている。システム制御部11は、CPU101aを備えている。
CPU101aは、ストレージデバイス13からメモリ12にロードされる、オペレーティングシステムおよび各種アプリケーションプログラム/ユーティリティプログラムを実行するプロセッサである。アプリケーションプログラム/ユーティリティプログラムの中には、近接無線通信デバイス20の通信動作を制御する通信制御プログラム12a等が含まれている。
通信制御プログラム12aは、個々のデバイス(外部デバイス)の識別子(固有のID)を識別する機能を有しており、近接無線通信デバイス20との接続を確立することができる外部デバイスをユーザが選択することを可能にする。近接無線通信デバイス20との接続が許可された外部デバイスの固有のIDは接続許可リストに登録される。ある外部デバイスAから近接無線通信デバイス20に無線送信される固有のIDが接続許可リストに登録されているならば、通信制御プログラム12aは、近接無線通信デバイス20と外部デバイスAとの間のデータ転送を実行するために、近接無線通信デバイス20と外部デバイスAとの間の接続を確立するための動作を即座に開始する。この接続許可リストは、外部デバイスAとの接続を確立することができる外部デバイスを特定の幾つかのデバイスに制限することを可能にする。
しかし、例えば、第3者が電子機器10を無断で操作して、ある不正な外部デバイスBの固有のIDを接続許可リストに登録したならば、電子機器10内のデータが盗難される可能性がある。なぜなら、第3者が外部デバイスBを電子機器10にタッチするだけで、外部デバイスBと電子機器10との間の接続が確立され、それらデバイス間のデータ交換が開始されてしまう可能性があるからである。
通信制御プログラム12aは、パスワード検証を用いて、接続許可リストに不正な外部デバイスの固有のIDが登録されることを防止する機能を有している。より具体的に説明すれば、通信制御プログラム12aが電子機器10に近接されたある外部デバイスAから無線送信される外部デバイスAの固有のIDを受信した時、通信制御プログラム12aは、受信した固有のIDが接続許可リストに登録されてするか否かを判定する。受信した固有のIDが接続許可リストに登録されていないならば、通信制御プログラム12aは、外部デバイスAが電子機器20に初めてタッチされたデバイスであると認識する。この場合、通信制御プログラム12aは、まず、パスワードの入力を促す画面をLCD15に表示する。入力されたパスワードが有効である場合にのみ、すなわち、入力されたパスワードが電子機器10に既に登録されているパスワード(登録パスワード)に一致した場合にのみ、通信制御プログラム12aは、受信した固有のID、つまり外部デバイスAの固有のIDを、接続許可リストに登録する。そして、通信制御プログラム12aは、近接無線通信デバイス20と外部デバイスAとの間のデータ転送を実行するために、近接無線通信デバイス20と外部デバイスAとの間の接続を確立するための動作を開始する。
一方、入力されたパスワードが無効である場合、通信制御プログラム12aは、外部デバイスAの固有のIDを接続許可リストに登録しない。近接無線通信デバイス20と外部デバイスAとの間の接続は確立されず、よって無線通信デバイス20と外部デバイスAとの間のデータ交換は一切実行されない。
したがって、たとえ第3者が接続許可リストに登録されていない外部デバイスBを電子機器10にタッチしたとしても、その外部デバイスBの固有のIDが接続許可リストに不正に登録されてしまうという事態の発生を防止することができる。
このように、本実施形態では、パスワード検証を用いて電子機器10内に保持される接続許可リストの内容そのものを保護することができる。よって、例えば、近接無線通信デバイス20と外部デバイスAとの間でパスワートまたはキーコードを交換すると云った、セキュリティ確保のための特別な通信を行うことなく、データ盗難のリスクを低減することが出来る。また、ユーザが、接続許可リストに登録されていないデバイスと電子機器10との通信を希望する場合は、ユーザは、そのデバイスを電子機器10にタッチして、パスワードを入力するという操作のみをするだけでよい。よって、接続許可リストに登録されていないデバイスと電子機器10との間の接続の確立も、ユーザによるパスワード入力のみで容易に許可することがとできる。
ストレージデバイス13は、例えば、ハードディテスクドライブや不揮発性半導体メモリから構成されている。入力部14は、CPU111に与えるべきデータ及び指示を入力するための入力デバイスである。この入力部14は、例えば、キーボード、複数のボタンスイッチ、またはポインティングデバイス等によって実現される。
LCD15は、電子機器10のディスプレイとして使用される表示装置である。サウンドコントローラ16はCPU101aから送信されるオーディオデータに対応する音を出力するための音源回路である。サウンドコントローラ16はCPU101aから送信されるオーディオデータをデジタルオーディオ信号からアナログオーディオ信号に変換し、そのアナログオーディオ信号をスピーカ17に出力する。スピーカ17はアナログオーディオ信号に対応する音を出力する。
インジケータ18は近接無線通信デバイス20によって実行される近接無線通信の状態(データ転送の開始、データ転送の終了等)を提示する。このインジケータ18は、LEDのような発光部を備えている。
電源制御部19は、ACアダプタ30を介して外部から供給される電力、または電子機器10内に設けられたバッテリ19bから供給される電力を用いて、電子機器10内の各部に電力を供給する。換言すれば、電子機器10は、AC商用電源のような外部電源、またはバッテリ19bによって駆動される。ACアダプタ30は、電子機器10内に設けることも出来る。電源制御部19は、ユーザによる電源スイッチ(P−SW)19aの操作に応じて、電子機器10をパワーオンまたはパワーオフする。
近接無線通信デバイス20は、近接無線通信を実行する通信モジュールである。近接無線通信デバイス20は、近接無線通信デバイス20から所定の範囲内に存在する、近接無線通信機能を有する別のデバイス(外部デバイス)と通信することができる。近接無線通信デバイス20と外部デバイスとの間の無線通信は、近接無線通信デバイス20と外部デバイスとが近接状態である場合、つまり近接無線通信デバイス20と外部デバイスとの間の距離が通信可能距離(例えば3cm)以内に接近している場合にのみ可能となる。近接無線通信デバイス20と外部デバイスとが通信可能距離以内に接近した時、近接無線通信デバイス20と外部デバイスとの間の通信が可能となる。そして、近接無線通信デバイス20と外部デバイスとの間の接続(無線接続)を確立する動作、換言すれば、電子機器10のアプリケーションと外部デバイスのアプリケーションとの間の通信のための通信路を確立する動作が開始される。デバイス間の接続(無線接続)が確立された後に、例えば、ユーザによって明示的に指定されたデータファイル、予め決められた同期対象データファイル等のデータの転送が近接無線通信デバイス20と外部デバイスとの間で実行される。
近接無線通信においては、誘導電界が用いられる。近接無線通信方式としては、例えばTransferJetを使用し得る。TransferJetは、UWBを利用した近接無線通信方式であり、高速データ転送を実現することができる。
近接無線通信デバイス20はアンテナ20bに接続されている。アンテナ20bはカプラと称される電極であり、誘導電界を用いた無線信号により、外部デバイスに対するデータの送受信を行う。外部デバイスがアンテナ20bから通信距離(例えば3cm)以内の範囲内に接近した場合、近接無線通信デバイス20および外部デバイスそれぞれのアンテナ(カプラ)間が誘導電界によって結合され、これによって近接無線通信デバイス20と外部デバイスとの間の無線通信が実行可能となる。なお、近接無線通信デバイス20およびアンテナ20bは、一つのモジュールとして実現し得る。
次に、図2を参照して、通信制御プログラム12aの構成について説明する。
通信制御プログラム12aは、接続制御プログラム121、接続制御ドライバ122、およびパスワード管理モジュール123等を備えている。接続制御ドライバ122は近接無線通信デバイス20の動作を制御するためのプロトコルスタックとして機能するプログラムである。接続制御プログラム121は、近接無線通信デバイス20と外部デバイスとの間の接続を確立するための動作を制御するプログラムである。接続制御プログラム121は、接続許可リスト124を管理する機能、パスワード管理モジュール123と共同してパスワードを管理する機能、パスワード検証を用いて、接続許可リスト124へのデバイスの登録を許可または禁止する機能を実行する。
接続許可リスト124は、近接無線通信デバイス20との接続の確立が許可されたデバイスそれぞれの固有のIDを示す情報である。この接続許可リスト124は、例えば、電子機器10内に設けられたストレージデバイス13に格納されている。パスワード管理モジュール123は、パスワードを管理するためのプログラムである。パスワード管理モジュール123は、例えば、上述のパスワード検証のために使用されるパスワード(登録パスワード)をログインユーザ毎に管理することができる。例えば、パスワードは暗号化され、その暗号化されたパスワードがレジストリ領域などに保存される。本実施形態では、パスワードとして使用可能な文字コードは、数字(0-9)のみに制限されており、アルファベットのような文字コードをパスワードとして使用することはできない。これは、ユーザが、アルファベットのような文字コードをタイプ入力せずに、幾つかの数字のみをタイプ入力するだけで、パスワード検証を受けることができるようにするためである。
次に、図3を参照して、電子機器10がポータブルパーソナルコンピュータとして実現されている場合を想定して、電子機器10の外観の例を説明する。
図3は、電子機器10の外観を示す斜視図である。
電子機器10は、本体41と、ディスプレイユニット42とを備えている。ディスプレイユニット42は、本体41の上面が露出される開放位置と本体41の上面がディスプレイユニット42によって覆われる閉塞位置との間を回動可能に本体41に取り付けられている。ディスプレイユニット42内には、上述のLCD15が設けられている。
本体41は薄い箱状の筐体を有している。本体41の筐体の上面には、キーボード14a、タッチパッド14b、インジケータ18、電源スイッチ19a等が配置されている。
本体41の上面、具体的には、本体41の上面上のパームレストレスト領域41aの一部は、通信面として機能する。すなわち、近接無線通信デバイス20およびアンテナ(カプラ)20bは、本体41の上面のパームレストレスト領域41aに対向して本体41内に設けられている。アンテナ(カプラ)20bは、本体41の上面(具体的には、本体41の上面上のパームレストレスト領域41aの一部)を介して、無線信号(誘導電界)を外部に出力するように配置されている。アンテナ(カプラ)20bに対向する本体41の上面上の小領域、つまり本体41の上面上においてアンテナ(カプラ)20bの上方に位置する小領域は、通信位置として使用される。
ユーザは、例えば、近接無線通信機能を有する外部デバイスを本体41のパームレストレスト領域41a内の通信位置上にかざすという操作(タッチ操作)を行うことにより、外部デバイスと電子機器10との間のデータ転送を開始させることができる。電子機器10と外部デバイスとが近接された状態においては、電子機器10のキーボード14の一部、例えば、パームレスト領域41a側に位置する、キーボード内の一部のキー群が、携帯電話のような外部デバイスによって覆われ、それら一部のキー群の操作が困難になる可能性がある。
通常のコンピュータでは、アルファベットキーは、キーボード上の複数のキー位置に分散して配置されているが、全ての数字キーはキーボード内の上部の位置に集中して配置されている。本実施形態では、上述したように、パスワードとして使用可能な文字コードは数字(0-9)のみに制限されている。よって、ユーザは、外部デバイスが本体41のパームレストレスト領域41a上に置かれた状態、または外部デバイスが本体41のパームレストレスト領域41a上にかざされている状態においても、数字キーの組み合わせのみから構成されるパスワードを正常に入力することが出来る。
図4は、携帯電話50と電子機器10との間で実行される近接無線通信の様子が示されている。携帯電話50の筐体内には、その筐体の背面に対向して近接無線通信用のアンテナ(カプラ)が設けられている。この場合、携帯電話50の筐体の背面を電子機器20の本体41のパームレスト領域上の通信位置にかざすことにより、携帯電話50と電子機器10との間の近接無線通信を開始することが可能となる。
次に、図5を参照して、近接無線通信デバイス104を用いて実行される近接無線通信を制御するためのソフトウェアアーキテクチャを説明する。
図5のソフトウェアアーキテクチャは近接無線通信を制御するためのプロトコルスタックの階層構造を示している。プロトコルスタックは、物理層(PHY)、コネクション層(CNL)、プロトコル変換層(PCL)、アプリケーション層から構成されている。
物理層(PHY)は物理的なデータ転送を制御する層であり、OSI参照モデル内の物理層に対応する。物理層(PHY)の一部の機能または全ての機能は、近接無線通信デバイス20内のハードウェアを用いて実現することもできる。
物理層(PHY)はコネクション層(CNL)からのデータを無線信号に変換する。コネクション層(CNL)はOSI参照モデル内のデータリンク層およびトランスポート層に対応しており、物理層(PHY)を制御してデータ通信を実行する。
コネクション層(CNL)は、プロトコル変換層(PCL)から接続要求、または外部デバイスからの接続要求に応じて、近接状態に設定されている近接無線通信デバイス20と外部デバイスとの間の物理的なリンク(CNL接続)を確立する処理を実行する。ここで、2つのデバイス(デバイス1,2)間のCNL接続を確立するための手順について説明する。デバイス1,2の内、通信を開始したい側のデバイス、例えばデバイス1は、接続要求(C_Req)を無線送信するための処理を実行する。この接続要求(C_Req)には、デバイス1の固有のIDを含めることができる。デバイス2は接続要求(C_Req)を受信するための処理を定期的に実行する。デバイス1とデバイス2とが近接状態である場合、デバイス2は、デバイス1から送信される接続要求(C_Req)を受信することができる。接続要求(C_Req)を受信した時、デバイス2は、受信した接続要求(C_Req)の受託を示す応答(C_Acc)をデバイス1に無線送信する。この応答(C_Acc)には、デバイス2の固有のIDを含めることができる。デバイス1は、デバイス2から無線送信される応答(C_Acc)を受信することができる。このように、デバイス1とデバイス2との間で接続要求信号(C_Req)および応答信号(C_Acc)を送受信することにより、デバイス1とデバイス2との間のリンク(CNL接続)が確立される。
プロトコル変換層(PCL)は、OSI参照モデル内のセッション層およびプレゼンテーション層に対応しており、アプリケーション層と、2つのデバイス間のリンクの確立および解除を制御するためのコネクション層(CNL)との間に位置する。プロトコル変換層(PCL)は、2つのデバイス間の接続を確立するために、アプリケーション層内の各アプリケーション(通信プログラム)の制御とコネクション層(CNL)の制御を行う。
より具体的には、プロトコル変換層(PCL)は、アプリケーション層の各通信プログラムが扱うアプリケーションプロトコル(例えば、SCSI、OBEX、他の汎用プロトコル等)に対応したデータ(ユーザデータ)を特定の伝送用データ形式に変換するための変換処理を実行する。この変換処理により、どの通信プログラムによって送受信されるデータも、コネクション層(CNL)が扱うことが可能なパケット(特定の伝送用データ形式のデータ)に変換される。このプロトコル変換層(PCL)は、様々なアプリケーションプロトコルを近接無線通信で利用することを可能にする。
本実施形態においては、プロトコル変換層(PCL)は3つのモード(プロアクティブモード、リアクティブモード、フレキシブルモード)を有しており、これら3つのモードの内の1つのモードで動作し得る。
プロアクティブモードはいわゆるマスタとして機能するためのモードであり、プロアクティブモードのデバイスは、通信相手のデバイスを制御してデバイス間のデータ転送のようなサービスを実行することができる。リアクティブモードはいわゆるスレーブとして機能するためのモードであり、リアクティブモードのデバイスは、通信相手のデバイスの制御の下、デバイス間のデータ転送のようなサービスを実行することができる。
外部電源によって駆動できない携帯電話のようなモバイルデバイスのデフォルトのモードは、その電力消費を低減するために、リアクティブモードに決定されている。ユーザによってモバイルデバイスのあるアプリケーションが操作された時、そのモバイルデバイスは、リアクティブモードからプロアクティブモードに自動的に遷移する。
プロアクティブモードに設定されたデバイスは、接続要求信号C_Reqを送信する。一方、リアクティブモードのデバイスは接続要求信号C_Reqを送信しないので、電力消費は比較的少ない。
フレキシブルモードは、通信相手のデバイスのモード(プロアクティブモードまたはリアクティブモード)に応じて自身のモードを自動的にプロアクティブモードまたはリアクティブモードに遷移させることが出来るモードである。フレキシブルモードのデバイスは、通信相手のデバイスがプロアクティブモードであればリアクティブモードに遷移し、また通信相手のデバイスがリアクティブモードであればプロアクティブモードに遷移する。プロアクティブモードまたはリアクティブモードへの遷移は、例えば、デバイス間のCNL接続が確立された後に実行される。
ACアダプタ電源のような外部電源によって駆動可能な、パーソナルコンピュータのようなデバイスのデフォルトのモードはフレキシブルモードである。フレキシブルモードのデバイスは、接続要求信号C_Reqを送信することができる。これにより、例えば、ユーザが携帯電話のアプリケーションを何等操作せずにその携帯電話をパーソナルコンピュータ(フレキシブルモードのデバイス)に近接させた場合でも、それらデバイス間のCNL接続を確立できる。
次に、図6のフローチャートを参照して、電子機器10によって実行される接続制御処理の手順を説明する。
ここでは、携帯電話またはデジタルカメラのようなモバイルデバイスが電子機器10のパームレスト領域にタッチされた場合を想定する。モバイルデバイスが電子機器10のパームレスト領域にタッチされた時、電子機器10の近接無線通信デバイス20とモバイルデバイスとの間の通信が開始される。通信制御プログラム12aは、まず、そのモバイルデバイスが電子機器10に初めてタッチされたデバイスであるかを判定する(ステップS11)。ステップS11では、通信制御プログラム12aは、モバイルデバイスから無線送信される信号(接続要求信号C_Reqまたは応答信号C_Acc)に含まれる固有のIDを近接無線通信デバイス20を介して受信し、その受信した固有のIDが接続許可リスト124に含まれているか否かを判定する。受信した固有のIDが接続許可リスト124に含まれていないならば、つまり受信した固有のIDが接続許可リスト124に未登録であるならば、通信制御プログラム12aは、モバイルデバイスを電子機器10に初めてタッチされたデバイスであると認識する。一方、受信した固有のIDが接続許可リスト124に含まれているならば、通信制御プログラム12aは、モバイルデバイスを、電子機器10との接続の確立が許可されたデバイスであると認識する。
ステップS11にて、電子機器10にタッチされたモバイルデバイスが電子機器10との接続の確立が既に許可されているデバイスであることが判定されたならば(ステップS11のNO)、通信制御プログラム12aは、ステップS16に進み、モバイルデバイスと近接無線通信デバイス20との間の接続を確立するための動作を開始する(ステップS16)。このステップS16では、通信制御プログラム12aは、例えば、モバイルデバイスと電子機器10とモバイルデバイスとの間で転送されるデータのタイプ、および使用すべきプロトコル(SCSI、OBEX、または他の汎用プロトコル等)を決定するためネゴシエーション処理を実行して、電子機器10側のアプリケーション層とモバイルデバイス側のアプリケーション層との間の通信のめの通信路(接続)を確立する。
一方、ステップS11にて、モバイルデバイスが電子機器10に初めてタッチされたデバイスであることが判定されたならば(ステップS11のYES)、通信制御プログラム12aは、ユーザにパスワードの入力を求めるためにパスワード入力画面をLCD15に表示する(ステップS12)。そして、通信制御プログラム12aは、パスワード入力画面に入力されたパスワードと登録パスワードとを比較する。入力されたパスワードが有効であるならば、つまり入力されたパスワードが登録パスワードに一致する正しいパスワードであるならば(ステップS13のYES)、通信制御プログラム12aは、モバイルデバイスを電子機器10との接続を確立できるデバイスとして登録するために、モバイルデバイスの固有のIDを接続許可リスト124に追加する(ステップS15)。そして、通信制御プログラム12aは、ステップS16に進み、モバイルデバイスと近接無線通信デバイス20との間の接続を確立するための動作を開始する(ステップS16)。なお、ここでは、ステップS15の処理の後にステップS16を実行したが、ステップS16の後にステップS15を実行しても良い。
入力されたパスワードが無効であるならば、つまり登録パスワードに一致するパスワードが入力されなかったならば(ステップS13のYES)、通信制御プログラム12aは、モバイルデバイスと近接無線通信デバイス20との間の接続を拒否する(ステップS14)。この場合、モバイルデバイスの固有のIDは接続許可リスト124に追加されない。
図7は、パスワードの登録に使用されるパスワード登録画面の例を示している。ユーザからのパスワード登録要求イベントの発生に応答して、通信制御プログラム12aは、図7に示すパスワード登録画面をLCD15に表示する。パスワードに使用可能な文字は、上述したように、例えば4桁以内の数字に限られる。
図8は、パスワード検証のためのパスワード入力画面の例を示している。ここでは、電子機器10がコンピュータによって実現されている場合を想定して、パスワード入力画面を説明する。
パスワード入力画面には、図8に示されているように、検出されたデバイス(電子機器10にタッチされたデバイス)を、電子機器10と接続可能なデバイスとして登録するかどうかをユーザに確認するためのメッセージと、そのデバイスの機器名および機器IDが表示される。機器名および機器IDは、検出されたデバイスから受信した固有のIDに基づいて表示される。パスワード入力画面には、さらに、パスワード入力フィールドが表示される。
もし正しいパスワートがパスワード入力フィールドに入力された状態で“OK”ボタンがクリックされたならば、検出されたデバイスの固有のIDが接続許可リスト124に追加され、これによってそのデバイスは電子機器10と接続可能なデバイスとして登録される。正しいパスワートが入力されなかった場合、または“キャンセル”ボタンがクリックされた場合は、検出されたデバイスの固有のIDは接続許可リスト124に追加されない。
次に、図9を参照して、近接無線通信の動作環境を設定するための設定画面の例を説明する。この設定画面は、通信制御プログラム12aによってLCD15に表示される。
設定画面の“接続機器リスト”タブは、電子機器10との接続が可能なデバイスの一覧を管理するために用いられる。“接続機器リスト”タブには、デバイスリストウィンド201、登録解除ボタン202、モード選択チェックボックス203,204、パスワード登録ボタン205などが表示される。
デバイスリストウィンド201は、接続許可リスト124内の固有のID群に基づいて、電子機器10と接続可能なデバイスの一覧を表示する。デバイスリストウィンド201内のあるデバイスが選択された状態で登録解除ボタン202がクリックされると、その選択されたデバイスに対応する固有のIDは接続許可リスト124から削除される。
モード選択チェックボックス203、204は、近接無線通信を制御するための動作モードを決定するため、つまり通信制御プログラム12aによって実行される接続制御動作の動作モードを決定するために使用される。本実施形態では、大別して、2つのモードが接続制御のために用いられる。第1モードは、未登録のデバイス(電子機器10に初めてタッチされたデバイス)が検出された時にパスワード入力を求める動作モードである。第2モードは、未登録のデバイス(電子機器10に初めてタッチされたデバイス)が検出された時にパスワード入力を求めない動作モードである。
モード選択チェックボックス203がチェックされると、接続制御動作の動作モードは第1モード(認証&パスワード入力モード)に設定される。動作モードが第1モードである期間中は、通信制御プログラム12aは、未登録のデバイス(電子機器10に初めてタッチされたデバイス)が検出された時に図8のパスワード入力画面を表示する。
モード選択チェックボックス204がチェックされると、接続制御動作の動作モードは自動登録モードに設定される。自動登録モードは上述の第2モードの一形態である。動作モードが自動登録モードである期間中は、通信制御プログラム12aは、未登録のデバイス(電子機器10に初めてタッチされたデバイス)が検出された時に、パスワード入力画面のような画面を何等表示せずに、未登録のデバイスの固有のIDを接続許可リスト124に自動的に追加する。
モード選択チェックボックス203,204のいずれもチェックされなかったならば、接続制御動作の動作モードは認証モードに設定される。認証モードも第2モードの一形態である。動作モードが認証モードである期間中は、通信制御プログラム12aは、未登録のデバイス(電子機器10に初めてタッチされたデバイス)が検出された時に、パスワード入力画面を表示せずに、検出されたデバイスを接続許可リスト124に追加するかどうかをユーザに確認するための確認画面のみを表示する。ユーザによって追加が許可された場合にのみ、通信制御プログラム12aは、検出されたデバイスの固有のIDを接続許可リスト124に追加する。なお、モード選択チェックボックス203,204を同時にチェックすることはできない。
このように、本実施形態では、ユーザは、図9の設定画面を用いて、第1モード(認証&パスワード入力モード)または第2モード(認証モード、または自動登録モード)を適宜選択することができる。よって、例えば、ユーザは、まず、第2モードを用いて、自身の所有する幾つかのモバイルデバイス(携帯電話、デジタルカメラ、オーディオプレーヤ、等)を本電子機器10と接続可能なデバイスとして登録し、その後で、セキュリティー性を高めるために、動作モードを第1モードに切り換えるという運用を置こうことが出来る。第1モードに切り換えた後も、接続許可リスト124に固有のIDが登録されているデバイスについては、ユーザは、そのデバイスを電子機器10にタッチするだけで、そのデバイスと電子機器10とのデータ交換を容易に行うことが出来る。つまり、第1モードの期間中においては、接続許可リスト124に既に固有のIDが登録されているデバイスが電子機器10にタッチされた時には、パスワード入力画面、および確認画面のどちらも表示されず、即座にそのデバイスと電子機器10との間の接続を確立する動作が開始される。接続許可リスト124に固有のIDが登録されていないデバイスが電子機器10にタッチされた時にのみ、パスワード入力が求められる。このように、新たなデバイスが電子機器10にタッチされない限りパスワード入力が求められないので、ユーザは、登録パスワートを忘れてしまうかもしれない。
そこで、本実施形態では、ユーザが登録されたパスワードを忘れた場合に容易に対処出来るようにするために、登録パスワードに一致するバスワードの入力を求めることなく、登録パスワードを新たなパスワードに変更するためのパスワード再登録機能(登録パスワード変更機能とも云う)が設けられている。パスワード登録ボタン205はパスワード登録要求イベントを発生するためのボタンである。パスワード登録ボタン205がクリックされると、パスワード登録またはパスワード再登録を行うためのパスワード登録画面が表示される。このパスワード登録ボタン205は、初回のパスワード登録と上述のパスワード再登録の双方に使用し得る。
しかし、このようなパスワード再登録機能を使用することは、悪意を持つ第3者によって登録パスワードが別のパスワードに書き替えられてしまうという危険を伴う。そこで、通信制御プログラム102aには、前回のパスワード登録日時、つまり、最後にパスワードが登録された日時を、LCD15に表示するパスワード登録日時表示機能が設けられている。前回のパスワード登録日時は、例えば、図9に示すように、 “接続機器リスト”タブ画面上に表示される。ユーザは、前回のパスワード登録日時を見ることにより、第3者によって登録パスワードが不正に変更されたかどうかを知ることが出来る。
次に、図10を参照して、認証&パスワード入力モード(モード1)で表示されるパスワード入力画面と、認証モード(モード2)で表示される確認画面(認証画面とも云う)との関係を説明する。
パスワード入力画面には、上述したように、電子機器10に初めてタッチされたデバイスの機器名および機器IDと、このデバイスを電子機器10と接続可能なデバイスとして登録するか否かをユーザに確認するためのメッセージと、パスワード入力フィールドとが表示される。パスワード入力画面上に正しいパスワードが入力された状態でパスワード入力画面上の“OK”ボタンがクリックされると、このデバイスの固有のIDが接続許可リスト124に追加される。
確認画面には、電子機器10に初めてタッチされたデバイスの機器名および機器IDと、このデバイスを電子機器10と接続可能なデバイスとして登録するか否かをユーザに確認するためのメッセージとが表示され、パスワード入力フィールドは表示されない。確認画面上の“OK”ボタンがクリックされると、このデバイスの固有のIDが接続許可リスト124に追加される。
自動登録モード(モード3)では、電子機器10に初めてタッチされたデバイスが検出されても、パスワード入力画面、確認画面のいずれも表示されない。
次に、図11のフローチャートを参照して、認証&パスワード入力モード(モード1)、認証モード(モード2)、自動登録モード(モード3)それぞれに対応する接続制御処理の手順を説明する。
モバイルデバイスが電子機器10のパームレスト領域にタッチされた時、電子機器10の近接無線通信デバイス20とモバイルデバイスとの間の通信が開始される。通信制御プログラム12aは、まず、そのモバイルデバイスが電子機器10に初めてタッチされたデバイスであるかを判定する(ステップS21)。ステップS21では、通信制御プログラム12aは、モバイルデバイスから無線送信される信号(接続要求信号C_Reqまたは応答信号C_Acc)に含まれる固有のIDを近接無線通信デバイス20を介して受信し、その受信した固有のIDが接続許可リスト124に含まれているか否かを判定する。受信した固有のIDが接続許可リスト124に含まれていないならば、つまり受信した固有のIDが接続許可リスト124に未登録であるならば、通信制御プログラム12aは、モバイルデバイスを電子機器10に初めてタッチされたデバイスであると認識する。一方、受信した固有のIDが接続許可リスト124に含まれているならば、通信制御プログラム12aは、モバイルデバイスを、電子機器10との接続の確立が許可されたデバイスであると認識する。
ステップS21にて、電子機器10にタッチされたモバイルデバイスが電子機器10との接続の確立が既に許可されているデバイスであることが判定されたならば(ステップS21のNO)、通信制御プログラム12aは、ステップS27に進み、モバイルデバイスと近接無線通信デバイス20との間の接続を確立するための動作を開始する。
一方、ステップS21にて、モバイルデバイスが電子機器10に初めてタッチされたデバイスであることが判定されたならば(ステップS21のYES)、通信制御プログラム12aは、現在の動作モードが認証&パスワード入力モード(モード1)、認証モード(モード2)、自動登録モード(モード3)のいずれであるかを判定する(ステップS22)。
現在の動作モードが認証&パスワード入力モード(モード1)であれば、通信制御プログラム12aは、図6のフローチャートのステップS12〜S16の処理と同じ処理を実行する(ステップS23〜S27)。
現在の動作モードが認証モード(モード2)であれば、通信制御プログラム12aは、初めてタッチされたモバイルデバイスを電子機器10との接続を確立できるデバイスとして登録するか否かを確認するための確認画面をLCD15に表示して、ユーザにそのモバイルデバイスを電子機器10に接続できるデバイスとして登録するかどうかを問い合わせる(ステップS28)。確認画面上の“OK”ボタンがクリックされると(ステップS29のYES)、通信制御プログラム12aは、モバイルデバイスを電子機器10との接続を確立できるデバイスとして登録するために、モバイルデバイスの固有のIDを接続許可リスト124に追加する(ステップS26)。そして、通信制御プログラム12aは、ステップS27に進み、モバイルデバイスと近接無線通信デバイス20との間の接続を確立するための動作を開始する。確認画面上の“キャンセル”ボタンがクリックされると(ステップS29のNO)、通信制御プログラム12aは、モバイルデバイスと近接無線通信デバイス20との間の接続を拒否する(ステップS25)。この場合、モバイルデバイスの固有のIDは接続許可リスト124に追加されない。
現在の動作モードが自動登録モード(モード3)であれば、通信制御プログラム12aは、モバイルデバイスを電子機器10との接続を確立できるデバイスとして登録するために、モバイルデバイスの固有のIDを接続許可リスト124に追加する(ステップS26)。そして、通信制御プログラム12aは、ステップS27に進み、モバイルデバイスと近接無線通信デバイス20との間の接続を確立するための動作を開始する。
次に、図12を参照して、モード選択チェックボックス203のチェックが外された時に通信制御プログラム12aによって実行される処理について説明する。
モード選択チェックボックス203のチェックを外すことを無制限に許可すると、悪意を持つ第3者によって現在の動作モードが認証&パスワード入力モードから認証モードまたは自動登録モードに不正に変更されてしまう危険がある。したがって、モード選択チェックボックス203のチェックが外された時、つまり、認証&パスワード入力モードから認証モードまたは自動登録モードへのモード変更要求イベントが発生した時、通信制御プログラム12aは、図12に示すように、パスワード入力画面300をLCD15に表示する。登録パスワードに一致する正しいパスワードがパスワード入力画面300に入力された場合にのみ、通信制御プログラム12aは、モードの変更を許可し、現在のモードを認証&パスワード入力モードから認証モードまたは自動登録モードに変更する。
次に、パスワード再登録機能を説明する。
パスワードが登録されている状態で図9のパスワード登録ボタン205がクリックされた時、通信制御プログラム12aは、図13に示すように、確認画面400を表示する。この確認画面400には、パスワードを再登録すると全てのデバイスの登録が解除される旨のメッセージが表示される。
確認画面400上の“はい”ボタンがクリックされると、図7のパスワード登録画面が表示される。パスワード登録画面上にパスワードが入力されたパスワード登録画面上の“OK”ボタンがクリックされると、そのパスワードが電子機器10に新たな登録パスワードとして登録され、そして、接続許可リスト124に含まれている全てのIDが削除される。このように、本実施形態では、登録パスワートに一致するパスワードに入力を求めるというパスワード検証を行うことなく登録パスワードの変更が許可されるものの、登録パスワードの変更時には、接続許可リスト124の内容はクリアされる。このように、接続許可リスト124の内容を一旦クリアすることにより、変更後の新たな登録パスワードに基づく接続制御処理を初期状態(接続許可リスト124にIDが全く登録されていない状態)から再スタートすることが可能となる。確認画面400上の“いいえ”ボタンがクリックされると、図9の“接続機器リスト”タブ画面に戻る。
次に、図14のフローチャートを参照して、パスワード登録/再登録処理の手順を説明する。
図9の“接続機器リスト”タブ画面上のパスワード登録ボタン205がクリックされた時(ステップS31のYES)、通信制御プログラム12aは、登録パスワードが既に保存されているか否か、つまりパスワードが登録されているかどうかを判定する(ステップS32)。
登録パスワードが保存されていないならば(ステップS32のNO)、通信制御プログラム12aは、図7のパスワード登録画面をLCD15に表示する(ステップS33)。そして、通信制御プログラム12aは、パスワード登録画面上に入力されたパスワードを登録パスワードとしてレジストリに保存する(ステップS34)。さらに、通信制御プログラム12aは、現在の日時を、登録パスワードの保存日時つまりパスワード登録日時として保存し、そのパスワード登録日時を、図9の“接続機器リスト”タブ画面上に表示する(ステップS35)。
登録パスワードが既に保存されているならば(ステップS32のYES)、通信制御プログラム12aは、図13の確認画面をLCD15に表示する(ステップS36)。図13の確認画面上の“はい”ボタンがクリックされると、通信制御プログラム12aは、図7のパスワード登録画面をLCD15に表示する(ステップS37)。そして、通信制御プログラム12aは、パスワード登録画面上に入力されたパスワードを新たな登録パスワードとしてレジストリに保存する処理、つまり既に保存されている登録パスワードをパスワード登録画面上に入力された新たなパスワードに更新する処理を実行する(ステップS38)。次いで、通信制御プログラム12aは、接続許可リスト124内のIDそれぞれを削除して、接続許可リスト124をクリアする(ステップS39)。さらに、通信制御プログラム12aは、現在の日時を、登録パスワードの保存日時つまりパスワード登録日時として保存し、そのパスワード登録日時を、図9の“接続機器リスト”タブ画面上に表示する(ステップS35)。よって、図9の“接続機器リスト”タブ画面上に表示されるパスワード登録日時は、パスワードの再登録が行われる度に更新される。
以上のように、本実施形態によれば、パスワード検証を用いて電子機器10内に保持される接続許可リストそのものを保護することにより、近接無線通信デバイス20と外部デバイスとの間でパスワートを交換すると云った特別な通信を行うことなく、データ盗難のリスクを低減することが出来る。また、ユーザが接続許可リストに登録されていないデバイスと電子機器10との通信を希望する場合は、ユーザは、使用したいデバイスを電子機器10にタッチしてパスワードを入力するという操作をするだけで、その使用したいデバイスと電子機器10との間のデータ転送を行うことが出来る。
なお、本実施形態では、電子機器10がパーソナルコンピュータから実現されている場合を例示して説明したが、電子機器10は、携帯電話、PDAといった携帯型装置としても実現し得る。
また、本実施形態の通信制御プログラムの機能はハードウェアモジュールによって実現することも可能である。
また本発明は上記実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、上記実施形態に開示されている複数の構成要素の適宜な組み合わせにより、種々の発明を形成できる。例えば、実施形態に示される全構成要素からいくつかの構成要素を削除してもよい。さらに、異なる実施形態にわたる構成要素を適宜組み合わせてもよい。