以下、図面を参照して、この発明の一実施形態を説明する。
図1は、本実施形態に係る情報処理装置の外観を示す図である。情報処理装置は、例えば、ノート型のPC(コンピュータ10)として実現される。
図1に示すように、本コンピュータ10は、コンピュータ本体1と、ディスプレイユニット2とから構成される。ディスプレイユニット2には、LCD(Liquid Crystal Display)3とマルチタッチ対応のタッチパネル4とが重ね合わせた状態で組み込まれている。ディスプレイユニット2は、コンピュータ本体1に対し、コンピュータ本体1の上面が露出される開放位置とコンピュータ本体1の上面を覆う閉塞位置との間を回動自在に取り付けられる。
一方、ディスプレイユニット2が回動自在に取り付けられるコンピュータ本体1は、薄い箱形の筐体を有しており、その上面には、キーボード5、タッチパッド6、マウスボタン7、スピーカ8A,8B等が配置されている。
そして、上記のような構成を有する、マルチタッチ対応のタッチパネル4を備える本コンピュータ10は、例えば、図1に示すように、人間の手の形を模したオブジェクトを操作ガイドとしてLCD3に表示し、左右10本の指の中の少なくとも一本の指によるタッチ操作を所定回行わせることで(好ましくは各回毎に異なる指でのタッチ操作)、操作者を認証するといった新たな仕組みを持つことにより、タッチパネル上でのタッチ操作による操作者の認証のセキュリティレベルを向上させたものであり、以下、この点について詳述する。なお、ここでは、人間の手の形を模したオブジェクトを操作ガイドとしてLCD3に表示しているが、これは単なる例示であり、例えば鍵盤の形を模したオブジェクトを操作ガイドとしてLCD3に表示する等、種々の変形が可能である。
図2は、本コンピュータ10のシステム構成を示す図である。図2に示すように、本コンピュータ10は、CPU(central processing unit)11、MCH(memory controller hub)12、主メモリ13、ICH(i/o controller hub)14、GPU(graphics processing unit:表示コントローラ)15、ビデオメモリ(VRAM)15A、サウンドコントローラ16、BIOS(basic input/output system)−ROM(read only memory)17、LAN(local area network)コントローラ18、HDD(hard disk drive)19、ODD(optical disc drive)20、無線LANコントローラ21、USB(universal serial bus)コントローラ22、EEPROM(electrically erasable programmable ROM)23、EC/KBC(embedded controller/keyboard controller)24等を備えている。
CPU11は、本コンピュータ10の動作を制御するプロセッサであり、HDD19やODD20から主メモリ13にロードされる各種プログラムを実行する。このCPU11によって実行される各種プログラムの中には、リソース管理を司るOS100やOS100の配下で動作する各種アプリケーション120等が存在する。また、CPU11は、BIOS−ROM17に格納されたBIOSも実行する。BIOSは、ハードウェア制御のためのプログラムである。BIOSには、後述するパスワード認証モジュール171が含まれている。
MCH12は、CPU11とICH14との間を接続するブリッジとして動作すると共に、主メモリ13をアクセス制御するメモリコントローラとして動作する。また、MCH12は、GPU15との通信を実行する機能を有している。
GPU15は、ディスプレイユニット2に組み込まれたLCD3を制御する表示コントローラである。GPU15は、ビデオメモリであるVRAM15Aを有し、また、各種プログラムが表示しようとする画像をCPU11に代わって描画するアクセラレータを搭載する。
ICH14は、PCI(Peripheral Component Interconnect)バス上の各デバイスおよびLPC(Low Pin Count)バス上の各デバイスを制御する。ICH14は、HDD19およびODD20を制御するためのIDE(Integrated Device Electronics)コントローラを内蔵する。また、ICH14は、サウンドコントローラ16やLANコントローラ18との通信を実行する機能も有している。
サウンドコントローラ16は音源デバイスであり、各種プログラムが再生対象とするオーディオデータをスピーカ等に出力する。
LANコントローラ18は、例えばIEEE 802.3規格の有線通信を実行する有線通信デバイスである。一方、無線LANコントローラ21は、例えばIEEE 802.11規格の無線通信を実行する無線通信デバイスである。また、USBコントローラ22は、例えばケーブル接続された外部機器との間でUSB 2.0規格に準拠した通信を実行する。
EEPROM23は、例えば本コンピュータ10の識別情報などを格納するためのメモリデバイスである。このEEPROM23に、操作者の認証に用いる後述する登録パスワード201が格納される。
そして、EC/KBC24は、電力管理を行うためのエンベデッドコントローラと、タッチパネル4、キーボード5、タッチパッド6またはマウスボタン7の操作によるデータ入力を制御するためのキーボードコントローラとが集積された1チップMPU(micro processing unit)である。前述したように、本コンピュータ10が備える、LCD3に重ね合わせられるタッチパネル4は、マルチタッチ対応のタッチパネルであり、センサ41とMCU(micro controller unit)42とを有している。タッチパネル4上のn箇所でタッチ操作が行われると、そのn箇所すべてがセンサ41によって検出され、MCU42によって位置情報が出力される。MCU42が出力する位置情報は、EC/KBC24に導かれ、EC/KBC24は、この位置情報を自身のレジスタに格納すると共に、割り込みを発生させることによってCPU11に通知し、当該レジスタに格納した位置情報をCPU11に読み取らせる。これにより、タッチパネル4上でのタッチ操作というイベントの発生がBIOSまたはOS100に伝達され、例えばOS100は、この位置情報で示される箇所に対応するLCD3上に画面を表示中の各種アプリケーション120に対して、このイベントの発生を通知する。
ここで、本コンピュータ10が実行する操作者の認証の基本原理を説明する。図1に示した人間の手の形を模したオブジェクトは、電源オン時、BIOSのパスワード認証モジュール171によってLCD3に表示される。
ここでは、図1に示したように、左手の小指から右手の小指までの10本の指に1から10の数字をそれぞれ割り当てるものと想定する。また、ここでは、この10本の指の中の少なくとも1本の指によるタッチ操作を4回行わせるものと想定する。
まず、従来のシングルタッチでタッチ操作が行われることを考える。この場合、104通り、つまり、10000通りの中から所望のパスワードを選択して登録することが可能である。しかしながら、10000通りといっても、4回のタッチ操作のすべてが、いずれか1本の指でのタッチ操作であるので、覗き見によるパスワードの漏洩のおそれも否定できない。
次に、本実施形態のマルチタッチでタッチ操作が行われることを考える。この場合、仮に2本の指までのマルチタッチ(1本の指によるシングルタッチも可)を受け付けるものとすると、((10×9)/(2×1)+10)4通り、つまり、9150625通りのパスワードを設けることができる。
パスワード設定の組み合わせの数え方をより詳しく説明すると次のようになる。まず10本の指から2本の指を選ぶ場合、((10×9)/(2×1))通りの選び方がある。また10本の指から1本の指を選ぶ場合は10通りの選び方がある。したがって、2本の指までのマルチタッチが可能であると、1回に入力できる文字(この説明の場合は、1から10までの数字)は((10×9)/(2×1)+10)通りとなる。この入力を4回繰り返すので、((10×9)/(2×1)+10)4通り、つまり、9150625通りのパスワードを設けることが出来る。
また、仮に4本の指までのマルチタッチを受け付けるものとすると、((10×9×8×7)/(4×3×2×1)+(10×9×8)/(3×2×1)+(10×9)/(2×1)+10)4通り、つまり、21970650635通りという格段に多くのパスワードを設けることができる。
4本の指までマルチタッチを受け付ける場合について、パスワード設定の組み合わせの数え方をより詳しく説明すると次のようになる。まず、10本の指から4本の指を選ぶ場合、((10×9×8×7)/(4×3×2×1))通りの選び方がある。10本の指から3本の指を選ぶ場合は((10×9×8)/(3×2×1))通りの選び方がある。したがって、4本の指までのマルチタッチが可能であると、1回に入力できる文字(この説明の場合は、1から10までの数字)は((10×9×8×7)/(4×3×2×1)+(10×9×8)/(3×2×1)+(10×9)/(2×1)+10)通りとなる。この入力を4回繰り返すので、((10×9×8×7)/(4×3×2×1)+(10×9×8)/(3×2×1)+(10×9)/(2×1)+10)4通りのパスワードを設けることができる。
そして、複数の指で同時にタッチ操作が行われるので、覗き見されたとしても、どの指でタッチ操作が行われたのかを4回すべてに渡って把握されづらくすることができ、セキュリティレベルを向上させることが可能となる。
パスワード認証モジュール171は、パスワードの初期設定時または変更時、図1に示した認証用の画面を設定用の画面としてLCD3に表示する。そして、操作者(正規ユーザ)に、例えば2本の指までのマルチタッチを4回繰り返させる。このとき、タッチ操作が行われた(押された)指を”1”、タッチ操作が行われなかった(押されなかった)指を”0”として、操作者のタッチ操作を数値化し、登録パスワード201としてEEPROM23に格納する。
例えば、(1)1回目:左手人差し指によるシングルタッチ、(2)2回目:左手中指および右手中指によるマルチタッチ、(3)3回目:右手人差し指および右手中指によるマルチタッチ、(4)4回目:右手親指によるシングルタッチ、が操作者によって実施された場合、パスワード認証モジュール171は、図3に示すように、(0,0,0,1,0,0,0,0,0,0)、(0,0,1,0,0,0,0,1,0,0)、(0,0,0,0,0,0,1,1,0,0)、(0,0,0,0,0,1,0,0,0,0)というデータセットを生成し、登録パスワード201としてEEPROM23に格納する。また、パスワード認証モジュール171は、何本の指までのマルチタッチを受け付けることとするかや、このマルチタッチを何回繰り返すこととするかをユーザが設定するためのユーザインタフェースを別途提供し、ユーザによって設定された内容をEEPROM23に格納するようにしても良い。
そして、この登録パスワード201のEEPROM23への格納後、本コンピュータ10が電源オンされた際、パスワード認証モジュール171は、図1に示した認証用の画面をLCD3に表示し、操作者によって4回タッチ操作が行われたら、そのタッチ操作の内容が登録パスワード201で示される内容と一致するか否かによって、当該操作者の認証の成立/不成立を判定する。パスワード認証モジュール171によって操作者の認証が成立したと判定されたら、BIOSは、OS100の起動を開始し、一方、不成立と判定された場合、例えば本コンピュータ10を強制的に電源オフする。
図4は、本コンピュータ10が実行する操作者の認証の手順を示すフローチャートである。
パスワード認証モジュール171は、まず、これから行われるタッチ操作が何回目かを示すカウンタを1に初期化して(ステップA1)、操作者によってタッチ操作が行われることを待機する(ステップA2)。操作者によってタッチ操作が行われたら、パスワード認証モジュール171は、タッチ操作が行われた(押された)指を”1”、タッチ操作が行われなかった(押されなかった)指を”0”として、カウンタで示される回の入力データ(ワード)を取得する(ステップA3)。
パスワード認証モジュール171は、カウンタで示される値が所定値(4回タッチ操作を行わせる場合は”4”)と一致しているか否かを調べ(ステップA4)、一致していなければ(ステップA4のNO)、カウンタの値を1回分インクリメントして(ステップA5)、ステップA2からの処理を繰り返す。
カウンタで示される値が所定値と一致していた場合(ステップA4のYES)、タッチ操作によるパスワードの入力が完了したことになるので、パスワード認証モジュール171は、この入力パスワードとEEPROM23に格納された登録パスワード201とを比較する(ステップA6)。そして、一致していたならば(ステップA7のYES)、操作者の認証が成立したものと判定し(ステップA8)、一方、一致していなければ(ステップA7のNO)、操作者の認証は不成立と判定する(ステップA9)。
このように、本コンピュータ10では、様々な指の組み合わせを認証用のパスワードとして利用することができるので、シングルタッチの場合と比較して、セキュリティレベルを向上させることを実現する。また、複数の指で同時にタッチ操作を行うことで、覗き見されたとしても、どの指でタッチ操作が行われたかが分かりづらく、この点からも、セキュリティレベルを向上させることを実現する。
ところで、以上では、LCD3に重ね合わせたタッチパネル4上でマルチタッチが行われることを例として本発明の手法を説明したが、これに限らず、本発明の手法は、種々の変形が可能である。例えば、複数の操作ボタンを備え、これらの少なくとも1つを複数回に渡って操作することでパスワード入力を行うことも可能である。
また、この複数の操作ボタンとして、キーボード5上の複数のキーを援用することも可能である。キーボード5は、あるキーが押下されると、そのキーコードを出力する。そして、そのキーが押下されたままの状態にあると、(キーコードに代わって)リターンコードが繰り返し出力される。どのキーが押下されたかを示すキーコードの出力は1つずつしか行えないが、リターンコードが出力され続けている間に新たに出力されたキーコードで示されるキーは、当該リターンコードを出力させているキーと同時に押下されたものとして認識することによって、タッチパネル4上でのマルチタッチと同様のパスワード入力を行うことができる。
また、以上では、いわゆるPCを例として本発明の手法を説明したが、これに限らず、本発明の手法は、例えば、マルチタッチ対応のタッチパネルを搭載した携帯電話機やATM(automated teller machine)等、様々な電子機器に適用することが可能である。
このように、本発明は、上記実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、上記実施形態に開示されている複数の構成要素の適宜な組み合わせにより種々の発明を形成できる。例えば、実施形態に示される全構成要素から幾つかの構成要素を削除してもよい。更に、異なる実施形態に構成要素を適宜組み合わせてもよい。