(57)【要約】【課題】キーボードのキー配列の相違によらず、パスワードの認証を正しく行えるようにする。【解決手段】キーボードを介して入力されるパスワードのデータを取得する取得手段と、各種キーボードのキー配列の種別を選択する選択手段と、キー配列の種別に応じて、キーボードから入力されたパスワードのデータをパスワード文字列に変換する変換手段と、いずれかのキー配列に対する前記変換手段により変換されたパスワード文字列に基づく情報が、登録されているパスワード文字列に基づく情報に一致した場合に、パスワード認証成功と判定する認証手段とを備える。【選択図】図１
2010257386.tif 000002
【特許請求の範囲】
【請求項１】
キーボードを介して入力されるパスワードのデータを取得する取得手段と、
各種キーボードのキー配列の種別を選択する選択手段と、
キー配列の種別に応じて、前記キーボードから入力された前記パスワードのデータをパスワード文字列に変換する変換手段と、
いずれかのキー配列に対する前記変換手段により変換された前記パスワード文字列に基づく情報が、登録されているパスワード文字列に基づく情報に一致した場合に、パスワード認証成功と判定する認証手段と
を備えたことを特徴とする電子機器。
【請求項２】
前記キーボードから入力されるパスワードのデータは、スキャンコードおよびシフト状態の組であることを特徴とする請求項１に記載の電子機器。
【請求項３】
キー配列毎に、スキャンコードおよびシフト状態の組と文字コードとを対応付けたテーブルを備え、前記変換手段は、該テーブルを用いて前記変換を行うことを特徴とする請求項２に記載の電子機器。
【請求項４】
前記パスワード文字列に基づく情報とは、前記パスワード文字列から算出されるハッシュ値であることを特徴とする請求項１から請求項３のいずれか１項に記載の電子機器。
【請求項５】
特定のキー配列のキーボードの使用を前提とする通常のパスワード認証処理と請求項１から請求項４のいずれかに記載の電子機器によるパスワード認証処理とを切り替える切換手段をさらに備えたことを特徴とする電子機器。
【請求項６】
キーボードを介して入力されるパスワードのデータを取得する取得手段と、
各種キーボードのキー配列の種別を選択する選択手段と、
キー配列の種別に応じて、前記キーボードから入力された前記パスワードのデータをパスワード文字列に変換する変換手段と、
キー配列の種別に応じて前記変換手段による変換により生成された前記パスワード文字列について、各パスワード文字列に基づく情報を、前記取得手段が取得した前記パスワードに対応する正式なパスワードとしてそれぞれ登録する登録手段と
を備えたことを特徴とする電子機器。
【請求項７】
前記キーボードから入力されるパスワードのデータは、スキャンコードおよびシフト状態の組であることを特徴とする請求項６に記載の電子機器。
【請求項８】
キー配列毎に、スキャンコードおよびシフト状態の組と文字コードとを対応付けたテーブルを備え、前記変換手段は、該テーブルを用いて前記変換を行うことを特徴とする請求項７に記載の電子機器。
【請求項９】
前記パスワード文字列に基づく情報とは、前記パスワード文字列から算出されるハッシュ値であることを特徴とする請求項６から請求項８のいずれか１項に記載の電子機器。
【請求項１０】
特定のキー配列のキーボードの使用を前提とする通常のパスワード登録処理と請求項６から請求項９のいずれかに記載の電子機器によるパスワード登録処理とを切り替える切換手段をさらに備えたことを特徴とする電子機器。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、パスワード認証を改善する電子機器に関する。
【背景技術】
【０００２】
従来より、ＰＣ等の電子機器の入力装置の１つとしてキーボードが使用されている。キーボードの各キーのキートップには文字や特殊記号等のキャラクタが刻印されている。これらのキーが押された場合、キーボードはそのキーに刻印されているキャラクタの文字コードではなく、抽象化された情報（以下、ＰＣ環境に習って“スキャンコード”と称す）をシステムに通知する。
【０００３】
また、シフトキーと呼ばれるキー（左シフトキー、右シフトキー、左Ａｌｔキー、右Ａｌｔキー、左コントロールキー、右コントロールキーなど）があり、シフトキーと他のキーとを組み合わせることで、ユーザは入力するキャラクタを切り替えられるようになっている。以下では、シフトキーの状態（どのシフトキーが押されているのかを示す情報）をシフト状態と呼ぶこととする。
【０００４】
一方、キーボード上のキャラクタの配列を表わすキー配列は、言語の違いなどにより異なる配列が採用される場合がある。したがって、同じスキャンコードを生成するキーであっても、キー配列の相違により、各キーのキートップに刻印されているキャラクタが異なる場合がある（なお、各シフトキーも“スキャンコード”を持つが、シフトキーの“スキャンコード”はキー配列に依存しない。他にもＢａｃｋｓｐａｃｅキーやＤｅｌｅｔｅキーやＥｎｔｅｒキーなどの“スキャンコード”もキー配列に依存しないものとなっている）。
【０００５】
したがって、各キーの“スキャンコード”からそのキーのキートップに刻印されているキャラクタの文字コードを得るためには、“スキャンコード”に加えてキー配列とシフト状態の各情報がさらに必要となり、それ故、キーボードからの入力を受けるシステムは、これらの情報を用いて“スキャンコード”から文字コードへの変換を行う仕組みを有している。
【０００６】
ところで、複数のユーザにより利用されるシステムなどでは、パスワード認証が一般的に行われている。このパスワード認証の画面では、パスワード文字列をそのまま表示することはせず、アスタリスク（＊）などの伏字を用いた表示が行われる。そのため、システムがパスワードの内部表現として文字コードを使用しているのか“スキャンコード”とシフト状態の組を使用しているのかはユーザから区別できない。
【０００７】
また、ユーザは、パスワードとして知らされている（もしくは自身で設定した）文字列を知っているのみで、実際にパスワードがどのような内部表現または内容でシステム側で使用されているのかはわからない。例えば、特許文献１では、取得されたパスワードを変換規則に従って異なるパスワードに変換する変換手段と、変換されたパスワードをソフトウェアに引き渡す手段とを含むパスワード変換装置が提案されているが、このようなパスワードの変換が内部で行われていてもユーザは知るよしもない。
【先行技術文献】
【特許文献】
【０００８】
【特許文献１】特開２００７−１２２２６２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００９】
しかしながら、特許文献１のパスワード変換装置によるような特別な変換や、特別な内部表現の使用等がなされないにしても、予め設定されたキー配列のキーボードではないキーボードを使って、ユーザがパスワードとして正しい文字列を入力したときに、キー配列の相違により、システムに正しくないスキャンコードが通知され、このスキャンコードを受けたシステム側が、パスワードを正しく認証できないことが起こるという問題があった。
【００１０】
本発明は、上記に鑑みてなされたものであって、キーボードのキー配列の相違によらず、パスワードの認証を正しく行える電子機器を提供することを目的とする。
【課題を解決するための手段】
【００１１】
上述した課題を解決し、目的を達成するために、本発明の電子機器は、キーボードを介して入力されるパスワードのデータを取得する取得手段と、各種キーボードのキー配列の種別を選択する選択手段と、キー配列の種別に応じて、前記キーボードから入力された前記パスワードのデータをパスワード文字列に変換する変換手段と、いずれかのキー配列に対する前記変換手段により変換された前記パスワード文字列に基づく情報が、登録されているパスワード文字列に基づく情報に一致した場合に、パスワード認証成功と判定する認証手段とを備えたことを特徴とする。
【００１２】
また、本発明の電子機器は、キーボードを介して入力されるパスワードのデータを取得する取得手段と、各種キーボードのキー配列の種別を選択する選択手段と、キー配列の種別に応じて、前記キーボードから入力された前記パスワードのデータをパスワード文字列に変換する変換手段と、キー配列の種別に応じて前記変換手段による変換により生成された前記パスワード文字列について、各パスワード文字列に基づく情報を、前記取得手段が取得した前記パスワードに対応する正式なパスワードとしてそれぞれ登録する登録手段とを備えたことを特徴とする。
【発明の効果】
【００１３】
本発明にかかる電子機器は、キーボードのキー配列の相違によらず、パスワードの認証を正しく行えるという効果を奏する。
【図面の簡単な説明】
【００１４】
【図１】図１は、本実施の形態にかかるノートＰＣを示す外観斜視図である。
【図２】図２は、本実施形態にかかるノートＰＣのハードウェア構成を示すブロック図である。
【図３】図３は、実施例１におけるパスワードの認証処理のソフトウェア構成を示すブロック図である。
【図４】図４は、実施例１におけるノートＰＣにおけるパスワードの認証処理の手順（パスワード認証ルーチン）を示すフローチャートである。
【図５】図５は、キー配列の種別毎に、スキャンコードおよびシフト状態と、文字コードとを対応付けたテーブルの一例を示す図である。
【図６】図６は、実施例２におけるパスワードの登録処理のソフトウェア構成を示すブロック図である。
【図７】図７は、実施例２におけるノートＰＣにおけるパスワードの登録処理の手順（パスワード登録ルーチン）を示すフローチャートである。
【図８】図８は、実施例３におけるオプション設定画面の一例を示す図である。
【発明を実施するための形態】
【００１５】
以下に添付図面を参照して、この発明にかかる電子機器の実施の形態を詳細に説明する。後述する実施の形態では、電子機器の一形態としてノートＰＣに適用した例について説明するが、パスワード認証を実施するデスクトップＰＣやワークステーションやその他の電子機器またはシステムにも本発明を適用することができる。
【００１６】
［実施形態］
図１は、本実施の形態にかかるノートＰＣ１００を示す外観斜視図である。図１に示すように、ノートＰＣ１００は、従来のノートＰＣと同様の構成であり、筐体１０１と、この筐体１０１上に設けられたキーボード１０２と、筐体１０１にヒンジ部１０３を介して回動可能に接続されるパネル側筐体１０４と、を有している。筐体１０１は、下ケース１０１ａと上ケース１０１ｂとを有している。上ケース１０１ｂの上面前端部はパームレスト部１０５を構成し、このパームレスト部１０５のほぼ中央にはタッチパッド１０６が設けられている。また、パネル側筐体１０４の中央領域には、表示を行うフラットパネルディスプレイ１０７が設けられている。
【００１７】
次に、本実施形態にかかるノートＰＣ１００のハードウェア構成について説明する。図２に示すように、ノートＰＣ１００は、ＣＰＵ２０１、メモリコントローラハブ（ＭＣＨ）２０２、主記憶装置としてのメモリ２０３、Ｉ／Ｏコントローラハブ（ＩＣＨ）２０４、グラフィクスコントローラ（ＧＰＵ）２０５、ＢＩＯＳ−ＲＯＭ２０６、補助記憶装置としてのＨＤＤ２０７、フラットパネルディスプレイ１０７、キーボードＩ／Ｆ２０８、ネットワークＩ／Ｆ２０９を有している。なお、図示していないが、ＩＣＨ２０４は、ＯＤＤなどの各種周辺装置と接続されている。さらに、補助記憶装置は、ＨＤＤに限らず、様々な記憶手段を用いることができる。
【００１８】
ＣＰＵ２０１はノートＰＣ１００の動作を制御するプロセッサであり、ＨＤＤ２０７からメモリ２０３にロードされるオペレーティングシステム（ＯＳ）２１３やアプリケーションプログラム２１４を実行する。また、ＣＰＵ２０１は、ＢＩＯＳ−ＲＯＭ２０６に格納されたハードウェア制御のためのプログラムであるシステムＢＩＯＳ（Basic  Input  Output  System）２２１および表示制御のためのプログラムであるＶＧＡ  ＢＩＯＳ２２２等も実行する。
【００１９】
メモリコントローラハブ（ＭＣＨ）２０２は、ＣＰＵ２０１のローカルバスとＩＣＨ２０４との間を接続するブリッジデバイスである。ＭＣＨ２０２には、メモリ２０３をアクセス制御するメモリコントローラも内蔵されている。また、ＭＣＨ２０２は、ＡＧＰ（Accelerated  Graphics  Port）バス、ＰＣＩ  ｅｘｐｒｅｓｓ規格のシリアルバスなどを介してグラフィクスコントローラ２０５との通信を実行する機能も有している。
【００２０】
グラフィクスコントローラ２０５は、ノートＰＣ１００の表示手段として使用されるＬＣＤ（Liquid Crystal Display）等のフラットパネルディスプレイ１０７の表示制御をするコントローラである。
【００２１】
グラフィクスコントローラ２０５は、ＰＬＬ回路２３１と、表示タイミング制御回路２３２とを備え、フラットパネルディスプレイ１０７に接続されている。ＰＬＬ回路２３１は、任意のピクセルクロック（動作周波数）を生成することができ、また、動作周波数の変更が要求された場合に、動作周波数を切り換えることができる。
【００２２】
表示タイミング制御回路２３２は、ＯＳまたはアプリケーションプログラムからの要求に従ってグラフィックドライバ２１１が指示する表示タイミング情報２１２に従い、表示信号を生成し、この表示信号をフラットパネルディスプレイ１０７に供給することによって画像を表示させる。
【００２３】
Ｉ／Ｏコントローラハブ（ＩＣＨ）２０４は、ＬＰＣ（Low  Pin  Count）バス上の各デバイス、ＰＣＩ（Peripheral  Component  Interconnect）バスに接続されている各デバイスを制御する。また、ＩＣＨ２０４は、ＨＤＤ２０７を制御するためのＩＤＥ（Integrated  Drive  Electronics）コントローラを内蔵している。また、同図に示すように、ＩＣＨ２０４には、キーボード１０２（または外付けのキーボード）からの入力を受け付けるインターフェースであるキーボードＩ／Ｆ２０８が接続されている。
【００２４】
また、ＩＣＨ２０４に接続されているネットワークＩ／Ｆ２０９は、インターネット等のネットワークを介してサーバ２５０等に接続するためのインターフェースであり、ノートＰＣ１００は、サーバ２５０等から所望のプログラムやコンテンツをダウンロードすることができる。また、サーバ２５０側でユーザ認証（パスワード認証）が行われる場合、ユーザにより入力されたパスワードの情報が、ネットワークＩ／Ｆ２０９を介してサーバ２５０へ送信される。
【００２５】
（実施例１）
次に、ノートＰＣ１００におけるパスワードの認証処理について図３、図４を用いて説明する。図３は、本実施例のパスワードの認証処理のソフトウェア構成を示すブロック図であり、図４は、ノートＰＣ１００におけるパスワードの認証処理の手順（パスワード認証ルーチン）を示すフローチャートである。なお、以下の処理は、ノートＰＣ１００のＣＰＵ２０１がパスワード認証ルーチンを実行することによりなされるものとするが、外部のシステムで認証処理を行う場合はノートＰＣ１００からパスワードの情報が送られ、この情報を基にサーバ等の外部システム側のＣＰＵにより以下の認証処理が実行される。
【００２６】
また、パスワード認証ルーチンは、ノートＰＣ１００または外部システムのシステムＢＩＯＳ、ＯＳ、アプリケーションのいずれにも実装することができる。なお、アプリケーションとして実装する場合は、ＯＳ側から与えられるパスワードの文字コードに対し、そのスキャンコードを問い合わせて取得する必要がある。また、パスワードは従来と同様にユーザＩＤ毎に管理される。以下では、あるユーザＩＤに対するパスワード認証処理を説明している。
【００２７】
図３に示すように、本実施例のパスワード認証ルーチンは、キーボード１０２を介してユーザにより入力されるパスワードのデータ（“スキャンデータ”およびシフト状態）を取得するパスワード取得部３０１と、各種キーボードのキー配列の種別を選択するキー配列選択部３０２と、キー配列の種別に応じて、キーボード１０２から入力されたパスワードのデータをパスワード文字列に変換する変換部３０３と、いずれかのキー配列に対する変換部３０３により変換されたパスワード文字列に基づく情報（例えば、このパスワード文字列そのもの、またはそのハッシュ値等）が、登録されているパスワード文字列に基づく情報に一致した場合に、パスワード認証成功と判定するパスワード認証部３０４と、から構成される。なお、図３では、本実施例のパスワード認証処理と、従来のパスワード認証処理とを切り替える認証処理切替部３０５も示しているが、これについては、後述の実施例３において説明する。本実施例のパスワード認証ルーチンを実行するＣＰＵ２０１は、上記各部の動作主体として機能する。
【００２８】
次に、本実施例のパスワード認証処理の詳細を、図４を参照し説明する。
【００２９】
はじめに、ステップＳ４０１で、フラットパネルディスプレイ１０７にパスワード認証画面を表示し、ユーザからのパスワード入力を受ける。本実施例では、パスワード取得部３０１としてのＣＰＵ２０１が、キーボード１０２から入力されたパスワードを“スキャンコード”とシフト状態の組の列として取得する。
【００３０】
次いで、ステップＳ４０２で、キー配列選択部３０２としてのＣＰＵ２０１が、キー配列を選択する。具体的には、ＵＳ配列、ＪＩＳ配列、ドイツ語配列、…などから１つを選択する。パスワード認証ルーチンを実装するシステムＢＩＯＳ、ＯＳまたはアプリケーションは、キー配列の種別毎に、スキャンコードおよびシフト状態と、文字コードとを対応付けたテーブル（図５参照）を備えている。本ステップでは、このテーブルに登録されているキー配列を選択する。
【００３１】
次いで、ステップＳ４０３で、変換部３０３としてのＣＰＵ２０１が、ステップＳ４０１で取得したパスワード（“スキャンコード”とシフト状態の組の列）を、図５のテーブルを用いて文字コードの列からなるパスワード文字列に変換する。このとき”スキャンコード”とシフト状態とキー配列の３要素が揃っているためこの処理が可能である。
【００３２】
次いで、ステップＳ４０４で、パスワード認証部３０４としてのＣＰＵ２０１が、ステップＳ４０３で生成されたパスワード文字列が下記のステップＳ４０５で認証試行済みのパスワード文字列か否かを判定する。このとき認証試行済みであれば（ステップＳ４０４でＹｅｓ）、ステップＳ４０７に進み、認証試行済みでなければ（ステップＳ４０４でＮｏ）、ステップＳ４０５に進む。第１回目の判断時は、ステップＳ４０５のパスワード認証試行は行われていないので、Ｎｏの判定となり本ステップからステップＳ４０５へ移行する。
【００３３】
ステップＳ４０５では、パスワード認証部３０４としてのＣＰＵ２０１が、ステップＳ４０３で生成されたパスワード文字列を登録済みのパスワード文字列と比較する。例えば、パスワード文字列のハッシュ値をとり、システムやデバイスに登録されているパスワードのハッシュ値との比較を行う。この比較の結果、一致すれば認証ＯＫとなる。
【００３４】
続くステップＳ４０６では、パスワード認証部３０４としてのＣＰＵ２０１により、上記ステップＳ４０５での認証結果が認証ＯＫであれば（ステップＳ４０６でＹｅｓ）、ステップＳ４０９に進み、認証ＯＫでなければ（ステップＳ４０６でＮｏ）、ステップＳ４０７に進む。
【００３５】
ステップＳ４０７では、パスワード認証部３０４としてのＣＰＵ２０１が、キー配列の情報（図５参照）を基に、全てのキー配列について認証試行を行ったか否かを判定する。認証試行済みでなければ（ステップＳ４０７でＮｏ）、ステップＳ４０２に戻り、まだ認証試行していないキー配列を選択する。一方、認証試行済みであれば（ステップＳ４０７でＹｅｓ）、ステップＳ４０８に進む。
【００３６】
ステップＳ４０８では認証失敗として、認証処理を終了する。一方、ステップＳ４０９では認証成功として、認証処理を終了する。
【００３７】
本実施例では、ノートＰＣ１００側（外部のシステム側で認証処理を行う場合は外部のシステム側）で把握しているすべてのキー配列に対して、各キー配列毎に変換されたパスワード文字列を用い、入力されたパスワードの認証を行うので、どのキー配列のキーボードが使用されても、パスワードの認証を正しく行える。
【００３８】
（実施例２）
上述した実施例１では、キー配列を切り替えながらパスワード認証を行ったが、本実施例では、パスワード登録時に、キー配列を切り替えながらパスワードの登録処理を行う。本実施例では、ノートＰＣ１００が保持するキー配列の情報の個数分、正式なパスワードとして用いられる複数の等価な（代替の）パスワードが生成される。
【００３９】
ここで、ノートＰＣ１００におけるパスワードの登録処理について図６、図７を用いて説明する。図６は、本実施例のパスワードの登録処理のソフトウェア構成を示すブロック図であり、図７は、ノートＰＣ１００におけるパスワードの登録処理の手順（パスワード登録ルーチン）を示すフローチャートである。なお、以下の処理は、ノートＰＣ１００のＣＰＵ２０１がパスワード登録ルーチンを実行することによりなされるものとするが、外部のシステムでパスワードの登録処理を行う場合は、サーバ等の外部システム側のＣＰＵにより、以下の登録処理が実行される。
【００４０】
また、パスワード登録ルーチンは、ノートＰＣ１００または外部システムのシステムＢＩＯＳ、ＯＳ、アプリケーションのいずれにも実装することができる。なお、アプリケーションとして実装する場合は、ＯＳ側から与えられるパスワードの文字コードに対し、そのスキャンコードを問い合わせて取得する必要がある。また、パスワードは従来と同様にユーザＩＤ毎に管理される。以下では、あるユーザＩＤに対するパスワード登録処理を説明している。
【００４１】
図６に示すように、本実施例のパスワード登録ルーチンは、キーボード１０２を介してユーザ（または管理者）により入力されるパスワードのデータ（“スキャンデータ”およびシフト状態）を取得するパスワード取得部６０１と、各種キーボードのキー配列の種別を選択するキー配列選択部６０２と、キー配列の種別に応じて、キーボード１０２から入力されたパスワードのデータをパスワード文字列に変換する変換部６０３と、キー配列の種別に応じて変換部６０３による変換により生成されたパスワード文字列について、各パスワード文字列に基づく情報（パスワード文字列そのもの、またはそのハッシュ値等）を、パスワード取得部６０１が取得したパスワードに対応する正式なパスワードとしてそれぞれ登録するパスワード登録部６０４と、から構成される。なお、図６では、本実施例のパスワード登録処理と、従来のパスワード登録処理とを切り替える登録処理切替部６０５も示しているが、これについては、後述の実施例３において説明する。本実施例のパスワード登録処理ルーチンを実行するＣＰＵ２０１は、上記各部の動作主体として機能する。
【００４２】
続いて、本実施例のパスワード登録処理の詳細を、図７を参照し説明する。
【００４３】
はじめに、ステップＳ７０１で、フラットパネルディスプレイ１０７にパスワード登録画面を表示し、ユーザからのパスワード入力を受ける。本実施例では、パスワード取得部６０１としてのＣＰＵ２０１が、入力されたパスワードを“スキャンコード”とシフト状態の組の列として取得する。
【００４４】
次いで、ステップＳ７０２で、キー配列選択部６０２としてのＣＰＵ２０１が、キー配列を選択する。具体的には、ＵＳ配列、ＪＩＳ配列、ドイツ語配列、…などから１つを選択する。パスワード登録ルーチンを実装するシステムＢＩＯＳ、ＯＳまたはアプリケーションは、キー配列の種別毎に、スキャンコードおよびシフト状態と、文字コードとを対応付けたテーブル（図５参照）を備えている。本ステップでは、このテーブルに登録されているキー配列を選択する。
【００４５】
次いで、ステップＳ７０３で、変換部６０３としてのＣＰＵ２０１が、ステップＳ７０１で取得したパスワード（“スキャンコード”とシフト状態の組の列）を、図５のテーブルを用いて文字コードの列からなるパスワード文字列に変換する。
【００４６】
続くステップＳ７０４では、パスワード登録部６０４としてのＣＰＵ２０１が、ステップＳ７０３で生成されたパスワード文字列が、下記のステップＳ７０５のパスワード登録試行で登録済みのパスワード文字列か否かを判定する。登録試行済みであれば（ステップＳ７０４でＹｅｓ）、ステップＳ７０６に進み、登録試行済みでなければ（ステップＳ７０４でＮｏ）、ステップＳ７０５に進む。
【００４７】
ステップＳ７０５では、パスワード登録部６０４としてのＣＰＵ２０１が、ステップＳ７０３の変換により生成されたパスワード文字列を登録する。このとき、パスワード文字列のハッシュ値を求め、これを登録するようにしてもよい。なお、この場合、パスワードの認証を行う際には、認証するパスワードのハッシュ値を求め、登録済みのハッシュ値と比較することになる。そして、この比較の結果、一致すれば認証ＯＫとなる。
【００４８】
ステップＳ７０６では、パスワード登録部６０４としてのＣＰＵ２０１が、キー配列の情報（図５参照）を基に、全てのキー配列についてパスワード登録試行を行ったか否かを判定する。全てのキー配列についてパスワード登録試行済みでなければ（ステップＳ７０６でＮｏ）、ステップＳ７０２に戻り、このステップで、まだ登録試行していないキー配列を選択し、ステップＳ７０３以降の処理を実行する。一方全てのキー配列について登録試行済みであれば（ステップＳ７０６でＹｅｓ）、パスワード登録処理を終了する。
【００４９】
以上の登録処理によって、キー配列毎の複数のパスワードが登録される。ユーザが使用するキーボードのキー配列の種別にかかわらず、ユーザが入力したパスワード文字列が正しければ、そのパスワードは、上記登録処理によって登録されたキー配列毎のパスワードのいずれかに一致することになり、正しく認証を行える。
【００５０】
以上説明した実施例１および実施例２では、以下の効果を奏する。すなわち、
（１）パスワード入力時にキー配列をユーザに選択してもらう必要がない。
（２）特定のキー配列を前提としてパスワード入力してもらう必要がない（すなわち、ユーザは、キーボードのキー配列を気にする必要がない）。（３）パスワードの登録と認証が、（物理的、シーケンス的に）異なる装置で行われる場合でもそれらでキー配列の同期をとる必要がない。
（４）パスワード登録時に使用したものとキー配列の異なるキーボードを用いても正しくパスワード認証が行える。
【００５１】
（実施例３）
次に、実施例１のキー配列を切り替えながらパスワード認証を試行する機能または実施例２のキー配列を切り替えながらパスワード登録を試行する機能（これらをここではパスワード認証拡張と称す）を有効化／無効化するＳＥＴＵＰオプションを設けた実施例について図８を用いて説明する。図８は、パスワード認証拡張の有効化／無効化のオプション設定画面の一例を示す図である。以下に説明するパスワード認証拡張の有効化／無効化の機能は、パスワード認証処理に関しては図３に示した認証処理切替部３０５により、また、パスワード登録処理に関しては図８に示した登録処理切替部６０５により達成される。
【００５２】
本実施例は、図８に例示するオプション設定画面で、パスワード認証拡張が“Ｏｎ”に設定された場合には、実施例１のキー配列を切り替えながらパスワード認証を試行する機能を有効にし、あるいは、実施例２のキー配列を切り替えながらパスワード登録を試行する機能を有効にする。
【００５３】
一方、オプション設定で、パスワード認証拡張が“Ｏｆｆ”に設定された場合は、実施例１のキー配列を切り替えながらパスワード認証を試行する機能または実施例２のキー配列を切り替えながらパスワード登録を試行する機能が無効化される。この場合、実施例１については図４のＳ４０２、Ｓ４０４およびＳ４０７のステップを、実施例２については図７のＳ７０２、Ｓ７０４およびＳ７０６のステップを省略した処理を実行する。なお、この場合は、特定のキー配列について、従来のパスワードの認証／登録処理が行われることになる。
【００５４】
本実施例は、実施例１や実施例２の次の問題点を回避する選択肢をユーザに提供するためのものである。
【００５５】
（１）ユーザがパスワードを１回入力するたびに複数のパスワード文字列を生成してパスワード認証ないしパスワード登録を行うため、パスワードの強度がやや弱まってしまう。なお、この問題点は、パスワード文字長を１文字追加すれば十分回避できる。
【００５６】
（２）キー配列を特定するわけではないので、パスワード登録または認証後に続けてパスワード変更するといった機能に制限が発生する。例えば、ＨＤＤ１台につき最大で２つのパスワードしか登録できない場合キー配列を特定しないままパスワード変更を行おうとすると登録しきれない場合がある。
【００５７】
本実施例は、パスワード認証拡張を“Ｏｆｆ”に設定することにより、このような問題点を回避することができる。
【００５８】
なお、本実施形態のノートＰＣ１００やサーバ等の外部システムで実行されるプログラムは、ＨＤＤ等に予め組み込まれて提供される。あるいは、インストール可能な形式又は実行可能な形式のファイルでＣＤ−ＲＯＭ、フレキシブルディスク（ＦＤ）、ＣＤ−Ｒ、ＤＶＤ（Ｄｉｇｉｔａｌ  Ｖｅｒｓａｔｉｌｅ  Ｄｉｓｋ）等のコンピュータで読み取り可能な記録媒体に記録して提供するように構成してもよい。さらに、上記プログラムを、インターネット等のネットワークに接続されたコンピュータ上に格納し、ネットワーク経由でダウンロードさせることにより提供するように構成しても良い。
【符号の説明】
【００５９】
１００…ノートＰＣ、１０１…筐体、１０１ａ…下ケース、１０１ｂ…上ケース、１０２…キーボード、１０３…ヒンジ部、１０４…パネル側筐体、１０５…パームレスト部、１０６…タッチパッド、１０７…フラットパネルディスプレイ、２０１…ＣＰＵ（制御手段）、２０２…ＭＣＨ、２０３…メモリ、２０４…ＩＣＨ、２０５…グラフィクスコントローラ（ＧＰＵ）、２０６…ＢＩＯＳ−ＲＯＭ、２０７…ＨＤＤ、２０８…キーボードＩ／Ｆ、２０９…ネットワークＩ／Ｆ、２１１…グラフィックドライバ、２１２…表示タイミング情報、２１３…ＯＳ、２２１…システムＢＩＯＳ、２２２…ＶＧＡ  ＢＩＯＳ、２３１…ＰＬＬ回路、２３２…表示タイミング制御回路、２５０…サーバ、３０１…パスワード取得部、３０２…キー配列選択部、３０３…変換部、３０４…パスワード認証部、３０５…認証処理切替部、６０１…パスワード取得部、６０２…キー配列選択部、６０３…変換部、６０４…パスワード登録部、６０５…登録処理切替部
【図１】
2010257386.tif 000003
【図２】
2010257386.tif 000004
【図３】
2010257386.tif 000005
【図４】
2010257386.tif 000006
【図５】
2010257386.tif 000007
【図６】
2010257386.tif 000008
【図７】
2010257386.tif 000009
【図８】
2010257386.tif 000010