(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B1)
(11)【特許番号】
(24)【登録日】2023-03-09
(45)【発行日】2023-03-17
(54)【発明の名称】情報処理システム、情報処理装置、サーバ、及び制御方法
(51)【国際特許分類】
G06F 21/60 20130101AFI20230310BHJP
G06F 21/31 20130101ALI20230310BHJP
【FI】
G06F21/60 360
G06F21/60 320
G06F21/31
(21)【出願番号】P 2022010027
(22)【出願日】2022-01-26
【審査請求日】2022-01-26
(73)【特許権者】
【識別番号】505205731
【氏名又は名称】レノボ・シンガポール・プライベート・リミテッド
(74)【代理人】
【識別番号】100161207
【氏名又は名称】西澤 和純
(74)【代理人】
【識別番号】100169764
【氏名又は名称】清水 雄一郎
(74)【代理人】
【識別番号】100175824
【氏名又は名称】小林 淳一
(74)【代理人】
【識別番号】100206081
【氏名又は名称】片岡 央
(72)【発明者】
【氏名】荒木 直幸
(72)【発明者】
【氏名】佐々木 健
(72)【発明者】
【氏名】松浦 佑樹
(72)【発明者】
【氏名】三田村 公智
(72)【発明者】
【氏名】福田 涼
【審査官】局 成矢
(56)【参考文献】
【文献】特表2011-527804(JP,A)
【文献】米国特許出願公開第2014/0245433(US,A1)
【文献】特開2016-181806(JP,A)
【文献】特開2017-188130(JP,A)
【文献】特開2018-7196(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06F 21/60
G06F 21/31
(57)【特許請求の範囲】
【請求項1】
情報処理装置と、前記情報処理装置と通信接続されるサーバとを備える情報処理システムであって、
前記情報処理装置は、
OS(Operating System)のプログラムを一時的に記憶するメモリと、
前記OSのプログラムを実行するプロセッサと、
複数のキーが配列されている操作部に対するユーザの操作により操作されたキーを示す第1キー情報を前記操作部から取得し、取得した前記第1キー情報と時刻に応じて変更される暗号化ルールとに基づいて前記第1キー情報と異なる第2キー情報を生成して前記プロセッサへ送信するEC(Embedded Controller)と、
を備え、
前記プロセッサは、前記第1キー情報を取得せずに前記ECにより生成された前記第2キー情報に基づくデータを前記サーバへ送信し、
前記サーバは、
前記情報処理装置から送信された前記第2キー情報に基づくデータを取得し、取得した前記第2キー情報に基づくデータと、前記情報処理装置で使用される前記暗号化ルールと同一時刻において同一の暗号化が行われる共通の暗号化ルールとに基づいて前記第1キー情報を得る、
情報処理システム。
【請求項2】
前記暗号化ルールは、
前記操作部に配列されている複数のキーのそれぞれに対応するスキャンコードの時刻に応じた変更ルールであり、
前記ECは、
前記操作部から取得した前記第1キー情報と前記第1キー情報を取得したときの時刻とに基づいて、当該時刻における前記暗号化ルールに従って前記第1キー情報をスキャンコードに変換して前記第2キー情報を生成する、
請求項1に記載の情報処理システム。
【請求項3】
前記サーバは、
前記第2キー情報に基づくデータを取得した時刻と前記共通の暗号化ルールとに基づいて前記第2キー情報に基づくデータを複合して認証処理を実行する、
請求項1または請求項2に記載の情報処理システム。
【請求項4】
前記サーバは、
前記第2キー情報に基づくデータを取得した時刻と前記共通の暗号化ルールとに基づいて、予め登録された文字列を暗号化した認証用データを生成し、前記認証用データと前記第2キー情報に基づくデータとに基づいて認証処理を実行する、
請求項1または請求項2に記載の情報処理システム。
【請求項5】
前記暗号化ルールを示す情報とユーザの識別情報とが関連付けられて、前記情報処理装置及び前記サーバのそれぞれの記憶部に記憶される、
請求項1から請求項4のいずれか一項に記載の情報処理システム。
【請求項6】
複数のユーザそれぞれの識別情報に対して共通の前記暗号化ルールを示す情報が関連付けられて、前記情報処理装置及び前記サーバのそれぞれの記憶部に記憶される、
請求項5に記載の情報処理システム。
【請求項7】
一人のユーザの識別情報に対して複数の前記暗号化ルールを示す情報が関連付けられて、前記情報処理装置及び前記サーバのそれぞれの記憶部に記憶される、
請求項5に記載の情報処理システム。
【請求項8】
前記暗号化ルールを示す情報が情報処理装置の記憶部に記憶された状態で工場から出荷される、
請求項1から請求項7のいずれか一項に記載の情報処理システム。
【請求項9】
前記情報処理装置における前記暗号化ルールを示す情報は、前記EC内の記憶部に記憶される、
請求項1から請求項8のいずれか一項に記載の情報処理システム。
【請求項10】
前記ECは、
前記プロセッサで実行されているBIOS(Basic Input Output System)に対して時刻情報を要求し、
前記プロセッサは、
前記ECからの時刻情報の要求に応じて、前記BIOSの処理により現在時刻の情報を前記ECへ送信する、
請求項1から請求項9のいずれか一項に記載の情報処理システム。
【請求項11】
前記ECは、
前記操作部に配列されているキーのうちの特定のキーに対するユーザの操作に応じて、前記第1キー情報を前記暗号化ルールに基づいて暗号化する処理モードへ移行する、
請求項1から請求項10のいずれか一項に記載の情報処理システム。
【請求項12】
OS(Operating System)のプログラムを一時的に記憶するメモリと、
前記OSのプログラムを実行するプロセッサと、
複数のキーが配列されている操作部に対するユーザの操作により操作されたキーを示す第1キー情報を前記操作部から取得し、取得した第1キー情報と時刻に応じて変更される暗号化ルールとに基づいて前記第1キー情報と異なる第2キー情報を生成して前記プロセッサへ送信するEC(Embedded Controller)と、
を備え、
前記プロセッサは、前記第1キー情報を取得せずに前記ECにより生成された前記第2キー情報に基づくデータを送信する、
情報処理装置。
【請求項13】
複数のキーが配列されている操作部に対するユーザの操作により操作されたキーを示す第1キー情報を前記操作部から取得し、取得した第1キー情報と時刻に応じて変更される暗号化ルールとに基づいて前記第1キー情報と異なる第2キー情報を生成し、生成した前記第2キー情報に基づくデータを送信する情報処理装置と通信接続されるサーバであって、
前記情報処理装置から送信された前記第2キー情報に基づくデータを取得し、取得した前記第2キー情報に基づくデータと、前記情報処理装置で使用される前記暗号化ルールと同一時刻において同一の暗号化が行われる共通の前記暗号化ルールとに基づいて前記第1キー情報を得る、
サーバ。
【請求項14】
OS(Operating System)のプログラムを一時的に記憶するメモリと前記OSのプログラムを実行するプロセッサとEC(Embedded Controller)とを備える情報処理装置と、前記情報処理装置と通信接続されるサーバとを備える情報処理システムにおける制御方法であって、
前記情報処理装置において、
前記ECが、複数のキーが配列されている操作部に対するユーザの操作により操作されたキーを示す第1キー情報を前記操作部から取得するステップと、
前記ECが、取得した第1キー情報と時刻に応じて変更される暗号化ルールとに基づいて前記第1キー情報と異なる第2キー情報を生成して前記プロセッサへ送信するステップと、
前記プロセッサが、前記第1キー情報を取得せずに前記ECにより生成された前記第2キー情報に基づくデータを前記サーバへ送信するステップと、
を含み、
前記サーバにおいて、
前記情報処理装置から送信された前記第2キー情報に基づくデータを取得するステップと、
取得した前記第2キー情報に基づくデータと、前記情報処理装置で使用される前記暗号化ルールと同一時刻において同一の暗号化が行われる共通の前記暗号化ルールとに基づいて前記第1キー情報を得るステップと、
を含む制御方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、情報処理システム、情報処理装置、サーバ、及び制御方法に関する。
【背景技術】
【0002】
PC(パーソナルコンピュータ)、スマートフォンなどの情報処理装置を用いて、銀行、保険会社、ネットショップ(electronic commerce)などをオンラインで利用する際に、ログインや決済などの重要な処理において、IDとパスワードとを使用した認証に加えて、ハードウェアトークンやセキュリティカード(乱数表カード)の文字列を回答させて、二要素認証を行う技術が知られている(例えば、特許文献1)。
【先行技術文献】
【特許文献】
【0003】
【発明の概要】
【発明が解決しようとする課題】
【0004】
しかしながら、ハードウェアトークンやセキュリティカードは、ワンタイム認証に使用される文字列が視認できるため、落としたり紛失したりすると他人に不正アクセスされてしまう懸念がある。
【0005】
本発明は、上記した事情に鑑みてなされたもので、不正アクセスに対する安全性を高めた情報処理システム、情報処理装置、サーバ、及び制御方法を提供することを目的の一つとする。
【課題を解決するための手段】
【0006】
本発明は上記の課題を解決するためになされたものであり、本発明の第1態様に係る情報処理システムは、情報処理装置と、前記情報処理装置と通信接続されるサーバとを備える情報処理システムであって、前記情報処理装置は、OS(Operating System)のプログラムを一時的に記憶するメモリと、前記OSのプログラムを実行するプロセッサと、複数のキーが配列されている操作部に対するユーザの操作により操作されたキーを示す第1キー情報を前記操作部から取得し、取得した前記第1キー情報と時刻に応じて変更される暗号化ルールとに基づいて前記第1キー情報と異なる第2キー情報を生成して前記プロセッサへ送信するEC(Embedded Controller)と、を備え、前記プロセッサは、前記第1キー情報を取得せずに前記ECにより生成された前記第2キー情報に基づくデータを前記サーバへ送信し、前記サーバは、前記情報処理装置から送信された前記第2キー情報に基づくデータを取得し、取得した前記第2キー情報に基づくデータと、前記情報処理装置で使用される前記暗号化ルールと同一時刻において同一の暗号化が行われる共通の暗号化ルールとに基づいて前記第1キー情報を得る。
【0007】
上記情報処理システムにおいて、前記暗号化ルールは、前記操作部に配列されている複数のキーのそれぞれに対応するスキャンコードの時刻に応じた変更ルールであり、前記ECは、前記操作部から取得した前記第1キー情報と前記第1キー情報を取得したときの時刻とに基づいて、当該時刻における前記暗号化ルールに従って前記第1キー情報をスキャンコードに変換して前記第2キー情報を生成してもよい。
【0008】
上記情報処理システムにおいて、前記サーバは、前記第2キー情報に基づくデータを取得した時刻と前記共通の暗号化ルールとに基づいて前記第2キー情報に基づくデータを複合して認証処理を実行してもよい。
【0009】
上記情報処理システムにおいて、前記サーバは、前記第2キー情報に基づくデータを取得した時刻と前記共通の暗号化ルールとに基づいて、予め登録された文字列を暗号化した認証用データを生成し、前記認証用データと前記第2キー情報に基づくデータとに基づいて認証処理を実行してもよい。
【0010】
上記情報処理システムにおいて、前記暗号化ルールを示す情報とユーザの識別情報とが関連付けられて、前記情報処理装置及び前記サーバのそれぞれの記憶部に記憶されてもよい。
【0011】
上記情報処理システムにおいて、複数のユーザそれぞれの識別情報に対して共通の前記暗号化ルールを示す情報が関連付けられて、前記情報処理装置及び前記サーバのそれぞれの記憶部に記憶されてもよい。
【0012】
上記情報処理システムにおいて、一人のユーザの識別情報に対して複数の前記暗号化ルールを示す情報が関連付けられて、前記情報処理装置及び前記サーバのそれぞれの記憶部に記憶されてもよい。
【0013】
上記情報処理システムにおいて、前記暗号化ルールを示す情報が情報処理装置の記憶部に記憶された状態で工場から出荷されてもよい。
【0014】
上記情報処理システムにおいて、前記情報処理装置における前記暗号化ルールを示す情報は、前記EC内の記憶部に記憶されてもよい。
【0015】
上記情報処理システムにおいて、前記ECは、前記プロセッサで実行されているBIOS(Basic Input Output System)に対して時刻情報を要求し、前記プロセッサは、前記ECからの時刻情報の要求に応じて、前記BIOSの処理により現在時刻の情報を前記ECへ送信してもよい。
【0016】
上記情報処理システムにおいて、前記ECは、前記操作部に配列されているキーのうちの特定のキーに対するユーザの操作に応じて、前記第1キー情報を前記暗号化ルールに基づいて暗号化する処理モードへ移行してもよい。
【0017】
また、本発明の第2態様に係る情報処理装置は、OS(Operating System)のプログラムを一時的に記憶するメモリと、前記OSのプログラムを実行するプロセッサと、複数のキーが配列されている操作部に対するユーザの操作により操作されたキーを示す第1キー情報を前記操作部から取得し、取得した第1キー情報と時刻に応じて変更される暗号化ルールとに基づいて前記第1キー情報と異なる第2キー情報を生成して前記プロセッサへ送信するEC(Embedded Controller)と、を備え、前記プロセッサは、前記第1キー情報を取得せずに前記ECにより生成された前記第2キー情報に基づくデータを送信する。
【0018】
また、本発明の第3態様に係る、複数のキーが配列されている操作部に対するユーザの操作により操作されたキーを示す第1キー情報を前記操作部から取得し、取得した第1キー情報と時刻に応じて変更される暗号化ルールとに基づいて前記第1キー情報と異なる第2キー情報を生成し、生成した前記第2キー情報に基づくデータを送信する情報処理装置と通信接続されるサーバは、前記情報処理装置から送信された前記第2キー情報に基づくデータを取得し、取得した前記第2キー情報に基づくデータと、前記情報処理装置で使用される前記暗号化ルールと同一時刻において同一の暗号化が行われる共通の前記暗号化ルールとに基づいて前記第1キー情報を得る。
【0019】
また、本発明の第4態様に係る、OS(Operating System)のプログラムを一時的に記憶するメモリと前記OSのプログラムを実行するプロセッサとEC(Embedded Controller)とを備える情報処理装置と、前記情報処理装置と通信接続されるサーバとを備える情報処理システムにおける制御方法は、前記情報処理装置において、前記ECが、複数のキーが配列されている操作部に対するユーザの操作により操作されたキーを示す第1キー情報を前記操作部から取得するステップと、前記ECが、取得した第1キー情報と時刻に応じて変更される暗号化ルールとに基づいて前記第1キー情報と異なる第2キー情報を生成して前記プロセッサへ送信するステップと、前記プロセッサが、前記第1キー情報を取得せずに前記ECにより生成された前記第2キー情報に基づくデータを前記サーバへ送信するステップと、を含み、前記サーバにおいて、前記情報処理装置から送信された前記第2キー情報に基づくデータを取得するステップと、取得した前記第2キー情報に基づくデータと、前記情報処理装置で使用される前記暗号化ルールと同一時刻において同一の暗号化が行われる共通の前記暗号化ルールとに基づいて前記第1キー情報を得るステップと、を含む。
【発明の効果】
【0020】
本発明の上記態様によれば、不正アクセスに対する安全性を高めた情報処理装置を提供することができる。
【図面の簡単な説明】
【0021】
【
図1】第1の実施形態に係る情報処理システムの構成例を示す図。
【
図2】第1の実施形態に係るスキャンコードの変更例を示す図。
【
図3】第1の実施形態に係る情報処理装置の外観を示す斜視図。
【
図4】第1の実施形態に係る情報処理装置のハードウェア構成の一例を示すブロック図。
【
図5】第1の実施形態に係る認証処理の一例を示すフローチャート。
【
図6】第1の実施形態に係るパスワード認証の仕組みの他の例の説明図。
【
図7】第2の実施形態に係る情報処理システムの構成例を示す図。
【
図8】第3の実施形態に係る情報処理システムの構成例を示す図。
【
図9】第4の実施形態に係る情報処理システムの構成例を示す図。
【発明を実施するための形態】
【0022】
以下、図面を参照して、本発明の実施形態について説明する。
<第1の実施形態>
まず、第1の実施形態について説明する。
【0023】
図1は、本実施形態に係る情報処理システム1の構成例を示す図であり、本実施形態におけるパスワード認証の仕組みの一例を示している。図示する情報処理システム1は、ネットワークNTを介して通信接続される情報処理装置10と認証サーバ80とを備えている。ネットワークNTは、LAN(Local Area Network)、WAN(Wide Area Network)、インターネットなどのいずれか又は組み合わせによって構成される通信ネットワークである。情報処理装置10と認証サーバ80とは、それぞれプロセッサ、メモリ、記憶装置、電源回路などを備えるコンピュータ装置である。
【0024】
情報処理装置10は、例えば、PC(パーソナルコンピュータ)、スマートフォンなどのようなユーザが利用する端末装置である。ここでは、情報処理装置10は、クラムシェル型(ノート型)のPCとして説明する。
【0025】
認証サーバ80は、ユーザが情報処理装置10からシステムの利用またはネットワークへの接続(アクセス)などを行う際にユーザ認証を行うサーバ装置である。例えば、認証サーバ80は、銀行、保険会社、ネットショップ(electronic commerce)などのオンラインシステムへのログインや取引、決済などを行う際のユーザ認証、VPN(Virtual Private Network)などのネットワークに接続(アクセス)する際のユーザ認証などの認証処理を行う。
【0026】
認証処理には、例えばパスワード認証などの処理が用いられるが、重要な処理などには、二要素認証の処理が用いられることがある。従来の二要素認証では、IDとパスワードとを使用した認証に加えて、ハードウェアトークンやセキュリティカード(乱数表カード)の文字列を用いる技術がある。しかしながら、ハードウェアトークンやセキュリティカードは、文字列が視認できるため、落としたり紛失したりすると他人に不正アクセスされてしまう懸念がある。
【0027】
そこで、本実施形態の情報処理システム1では、キーボード32にキー入力されたパスワードの文字列を、時刻に応じて変更される暗号化ルールに基づいて暗号化した暗号化データを用いてワンタイム認証の処理を行う。暗号化ルールとは、キーボード32に配列されている複数のキーのそれぞれに対応するスキャンコードを時刻に応じて変更する変更ルールである。
【0028】
図2は、本実施形態に係るスキャンコードの変更例を示す図である。上段の(A)には、規定のキー配列とスキャンコードとの対応関係を示すスキャンコードマップの一例を示している。これに対し、下段の(B)には、時刻に応じてキー配列とスキャンコードとの対応関係を変更したスキャンコードマップの一例を示している。スキャンコードマップが変更されると、同じキーを操作しても異なるスキャンコードが送られることになる。例えば、パスワードとして文字列「ABC」が入力された場合、基準となるスキャンコードマップでは「ABC」のそれぞれキーに対応するスキャンコードが送られるが、スキャンコードマップが変更されると、変更後のスキャンコードマップで「ABC」のそれぞれのキーに対応するスキャンコードが送られることになる。
【0029】
そのため、パスワードとして入力された文字列「ABC」が、変更後のスキャンコードマップを用いてスキャンコードに変換された時点で、その変更後のスキャンコードマップを使用しない限り入力された文字列が不明となり、暗号化されたことになる。具体的には、例えば「A」のキーに対して操作をしても、規定のスキャンコードマップで「E」のキーに対応するスキャンコードが変更後のスキャンコードマップで「A」のキーに対応付けられている場合には、「E」として暗号化される。暗号化に使用したスキャンコードマップがわからない限り、この暗号化された「E」が「A」であることはわからない。
【0030】
時刻に応じて(例えば、30秒毎に)スキャンコードマップを変更していくことにより、パスワードとして入力された文字列に対してワンタイムスキャンコードによる暗号化が可能となる。情報処理システム1は、パスワードによる認証に加えて、パスワードとして入力された文字列をワンタイムスキャンコードで暗号化することにより、二要素認証を行う。以下では、このワンタイムスキャンコードを用いて認証処理を行うモードを「ワンタイムスキャンコードモード」と称する。また、ワンタイムスキャンコードモードにおいて、時刻に応じて(例えば、30秒毎に)変更されるスキャンコードマップのことを、「ワンタイムスキャンコードマップ」と称する。
【0031】
図1に戻り、情報処理システム1は、内部の記憶領域に「セキュアキー」が記憶されており、この「セキュアキー」と時刻に基づいて、予め設定された時刻ごとに(例えば、30秒毎に)、ワンタイムスキャンコードマップを生成する。「セキュアキー」は、時刻に応じて変更されるワンタイムスキャンコードマップを生成するための暗号化ルールを定めた情報が格納されたデータである。例えば、「セキュアキー」は、時刻に基づいて乱数列を発生し、発生した数値を順番にキー配列の順にしたがって各キーのスキャンコードとして割り当てる。時刻によってワンタイムスキャンコードマップが変化するため、パスワードとして入力された文字列が、時刻ごとに異なる文字列に暗号化される。
【0032】
図1に示す例において、ワンタイムスキャンコードモードでは、パスワードとして文字列「ABC」が入力された場合、時刻「12:45:10」では文字列「EFG」、時刻「12:45:40」では文字列「AHK」、時刻「12:46:10」では文字列「AHK」などのように異なる文字列に暗号化される。
【0033】
情報処理システム1で暗号化された文字列(パスワード)の暗号化データは、情報処理システム1からネットワークNTを介して認証サーバ80へ送信される。認証サーバ80は、情報処理装置10と共通の「セキュアキー」を有している。共通の「セキュアキー」とは、同一時刻において同一の配列のワンタイムスキャンコードマップが生成される同一の暗号化ルールが設定された「セキュアキー」である。異なる「セキュアキー」では、基本的に同一時刻において異なる配列のワンタイムスキャンコードマップが生成される。
【0034】
認証サーバ80は、情報処理装置10から暗号化データを取得すると、取得した暗号化データを、情報処理装置10と共通の「セキュアキー」を用いて認証処理を実行する。例えば、認証サーバ80は、暗号化データを取得した時刻と「セキュアキー」とに基づいてワンタイムスキャンコードマップを生成し、生成したワンタイムスキャンコードマップを用いて暗号化データを複合する。情報処理装置10が暗号化した時刻と認証サーバ80が暗号化データを取得した時刻とが一致すれば、暗号化に用いたワンタイムスキャンコードマップと複合に用いたワンタイムスキャンコードマップとが同一のスキャンコードの配列であるため、正しく複合することができる。ここで、時刻の一致とは、ワンタイムスキャンコードマップを生成する時間の間隔(例えば、30秒)毎に一致すること指している。
【0035】
例えば、
図1に示す例において、認証サーバ80は、時刻「12:45:10」に暗号化された暗号化データ「EFG」を情報処理装置10から取得すると、取得した時刻が時刻「12:45:10」から30秒以内であれば、時刻「12:45:10」と共通の「セキュアキー」とに基づいて生成したワンタイムスキャンコードマップを用いて文字列「ABC」に複合することができる。同様に、認証サーバ80は、時刻「12:45:40」に暗号化された暗号化データ「AHK」を情報処理装置10から取得すると、取得した時刻が時刻「12:45:40」から30秒以内であれば、時刻「12:45:40」と共通の「セキュアキー」とに基づいて生成したワンタイムスキャンコードマップを用いて文字列「ABC」に複合することができる。同様に、認証サーバ80は、時刻「12:46:10」に暗号化された暗号化データ「S5T」を情報処理装置10から取得すると、取得した時刻が時刻「12:46:10」から30秒以内であれば、時刻「12:46:10」と共通の「セキュアキー」とに基づいて生成したワンタイムスキャンコードマップを用いて文字列「ABC」に複合することができる。
【0036】
[情報処理装置10の外観構成]
図3は、本実施形態に係る情報処理装置の外観を示す斜視図である。
図示する情報処理装置10は、クラムシェル型のノートPC(Personal Computer)である。情報処理装置10は、表示部14(ディスプレイ)が搭載されたディスプレイ筐体101と、キーボード32が搭載された機器筐体102と、ヒンジ機構103とを備えている。ディスプレイ筐体101及び機器筐体102は、略四角形の板状(例えば、平板状)の筐体である。
【0037】
ディスプレイ筐体101の側面の一つと機器筐体102の側面の一つとがヒンジ機構103を介して結合(連結)されており、ヒンジ機構103がなす回転軸の周りにディスプレイ筐体101と機器筐体102とが相対的に回動可能である。ディスプレイ筐体101と機器筐体102との回転軸の周りの開き角θが略0°の状態が、ディスプレイ筐体101と機器筐体102とが重なり合って閉じた状態(「閉状態」と称する)である。閉状態に対してディスプレイ筐体101と機器筐体102とが開いた状態のことを「開状態」と称する。開状態とは、開き角θが予め設定された閾値(例えば、10°)より大きくなるまで、ディスプレイ筐体101と機器筐体102とが相対的に回動された状態である。この
図1に示す情報処理装置10の外観は、開状態の一例を示している。
【0038】
ここでは、ディスプレイ筐体101の表示部14が設けられている面をディスプレイ面101a、ディスプレイ面101aに対して反対側の面をトップ面101bと称する。また、機器筐体102のキーボード32が設けられている面をキーボード面102a、キーボード面102aに対して反対側の面をボトム面102bと称する。閉状態においてディスプレイ面101aとキーボード面102aとは互いに対面する側の面である。図示する例において、キーボード32は、ユーザの操作を受け付ける複数のキー(操作子の一例)が配列された物理的なキーボードである。なお、キーボード面102aには、キーボード32以外にタッチパッドなどが設けられてもよい。また、機器筐体102の側面には、電源ボタン35が設けられている。
【0039】
閉状態では、ディスプレイ筐体101のディスプレイ面101aと機器筐体102のキーボード面102aとが対面して重なり合うため、表示部14が視認できない状態、且つキーボード32への操作ができない状態となる。一方、開状態では、表示部14が視認可能な状態、且つキーボードへの操作が可能な状態となる。
【0040】
[情報処理装置10のハードウェア構成]
図4は、本実施形態に係る情報処理装置10の主要なハードウェア構成の一例を示すブロック図である。
図4に示すように、情報処理装置10は、CPU11と、メインメモリ12と、ビデオサブシステム13と、表示部14と、チップセット21と、BIOSメモリ22と、通信部23と、RTC電源25と、エンベデッドコントローラ31と、キーボード32と、電源回路33と、電源ボタン35と、バッテリ60とを備える。なお、この
図4において、
図2の各部に対応する構成には同一の符号を付しており、その説明を適宜省略する。
【0041】
CPU11は、プログラム制御により種々の演算処理を実行し、情報処理装置10の全体を制御している。例えば、CPU11は、OS(Operating System)やBIOS(Basic Input Output System)などのプログラムに基づく処理を実行する。
【0042】
メインメモリ12は、CPU11の実行プログラムの読み込み領域として、又は、実行プログラムの処理データを書き込む作業領域として利用される書き込み可能メモリである。メインメモリ12は、例えば、複数個のDRAM(Dynamic Random Access Memory)チップで構成される。この実行プログラムには、OS、周辺機器類をハードウェア操作するための各種ドライバ、各種サービス/ユーティリティ、アプリケーションプログラム等が含まれる。
【0043】
ビデオサブシステム13は、画像表示に関連する機能を実現するためのサブシステムであり、ビデオコントローラを含んでいる。このビデオコントローラは、CPU11からの描画命令を処理し、処理した描画情報をビデオメモリに書き込むとともに、ビデオメモリからこの描画情報を読み出して、表示部14に描画データ(表示データ)として出力する。
【0044】
表示部14は、例えば、液晶ディスプレイや有機ELディスプレイであり、ビデオサブシステム13から出力された描画データ(表示データ)に基づく表示画面を表示する。
【0045】
チップセット21は、USB(Universal Serial Bus)、シリアルATA(AT Attachment)、SPI(Serial Peripheral Interface)バス、PCI(Peripheral Component Interconnect)バス、PCI-Expressバス、及びLPC(Low Pin Count)バスなどのコントローラを備えており複数のデバイスが接続される。
図4では、複数のデバイスの例として、BIOSメモリ22と、エンベデッドコントローラ31と、記憶装置40とがチップセット21に接続されている。また、チップセット21は、時刻を計時するRTC(Real Time Clock)211を備えている。RTC211は、RTC電源25(例えば、コイン電池)からの給電により動作する。
【0046】
BIOSメモリ22は、例えば、SPI(Serial Peripheral Interface)フラッシュメモリや、EEPROM(Electrically Erasable Programmable Read Only Memory)などの不揮発性メモリで構成される。BIOSメモリ22は、BIOSのプログラム、エンベデッドコントローラ31を制御するためのプログラムなどのシステムファームウェアを記憶する。また、BIOSメモリ22は、BIOSのデータやコード、エンベデッドコントローラ31の制御に関するデータなどを記憶する。
【0047】
通信部23は、無線LANまたは有線LANに対応した通信アダプタを含んで構成され、ネットワークNTを介して認証サーバ80などの外部装置と通信接続する。
【0048】
記憶装置40は、SSD(Solid State Drive)、HDD(Hard Disk Drive)などを含んで構成される。例えば、記憶装置40は、OS、各種ドライバ、各種サービス/ユーティリティ、アプリケーションプログラム、及び各種データを記憶する。
【0049】
エンベデッドコントローラ(EC:Embedded Controller)31は、OSやBIOSの処理を実行するCPU11とは別に設けられているプロセッサである。例えば、エンベデッドコントローラ31は、不図示のCPU、ROM、RAM、フラッシュメモリ、複数チャネルのA/D入力端子、D/A出力端子、タイマ、及びデジタル入出力端子を備えるワンチップマイコン(One-Chip Microcomputer)である。エンベデッドコントローラ31には、それぞれの入力端子を介して、例えば、キーボード32、電源回路33、及び電源ボタン35などが接続されている。また、エンベデッドコントローラ31は、バスを介して接続されているチップセット21を経由して、CPU11とデータの授受を行う。
【0050】
例えば、エンベデッドコントローラ31は、電源ボタン35に対するユーザの操作に応じた操作信号を受取り、電源回路33の制御およびシステムの起動の指示などを行う。また、エンベデッドコントローラ31は、キーボード32に対するユーザの操作に応じた操作信号を受取り、当該操作信号に応じた処理を行う。また、エンベデッドコントローラ31は、本実施形態に係るワンタイムスキャンコードモードにおけるパスワードの暗号化処理を実行する。このワンタイムスキャンコードモードにおける処理ついて詳しくは後述する。
【0051】
キーボード32は、ユーザの操作を受け付ける複数のキー(操作子の一例)が配列された入力デバイスである。キーボード32は、
図1に示すように、機器筐体102のキーボード面102aに設けられている。キーボード32は、ユーザの操作に応じた操作信号をエンベデッドコントローラ31へ出力する。なお、キーボード32以外の入力デバイスとして、ポインティング・デバイス、タッチパッドなどの任意の入力デバイスが任意の場所に設けられてもよい。
【0052】
電源回路33は、例えば、DC/DCコンバータ、充放電ユニットなどを含んで構成されている。DC/DCコンバータは、ACアダプタ(外部電源)もしくはバッテリ60から供給される直流電力の電圧を、各部で要求される電圧に変換する。DC/DCコンバータにより電圧が変換された電力が各電源系統を介して各部へ供給される。例えば、電源部400は、エンベデッドコントローラ31による制御に基づいて各電源系統を介して各部に電力を供給する。
【0053】
[ワンタイムスキャンコードモード]
図1及び
図2を参照して説明したワンタイムスキャンコードモードにおけるパスワードの暗号化処理は、主にエンベデッドコントローラ31の制御により実行される。
【0054】
エンベデッドコントローラ31は、キーボード32に対するユーザの操作により操作されたキーを示すキー情報をキーボード32から取得する。例えば、エンベデッドコントローラ31は、キーボード32に対するユーザの操作により文字列「ABC」が入力された場合、キーボード32における「A」、「B」、及び「C」それぞれのキーの位置を示すキー情報を取得する。そして、エンベデッドコントローラ31は、取得したキー情報を、時刻に応じて変更される暗号化ルールに基づいて暗号化した暗号化データを生成する。
【0055】
例えば、暗号化ルールは、前述したように、キーボード32に配列されている複数のキーのそれぞれに対応するスキャンコードの時刻に応じた変更ルールである。エンベデッドコントローラ31は、キーボード32から取得したキー情報とキー情報を取得したときの時刻とに基づいて、当該時刻における暗号化ルールに従ってキー情報をスキャンコードに変換して暗号化データを生成する。
【0056】
具体的には、時刻に応じて変更されるワンタイムスキャンコードマップを生成するための暗号化ルールを定めた「セキュアキー」が、エンベデッドコントローラ31内部の記憶部(例えば、ROM、フラッシュメモリなど)に記憶されている。エンベデッドコントローラ31は、予め設定された時刻ごとに(例えば、30秒毎に)「セキュアキー」に応じて、時刻ごとの暗号化ルールとしてのワンタイムスキャンコードマップを生成する。
【0057】
なお、エンベデッドコントローラ31は、CPU11で実行されているBIOSから現在時刻の情報を取得する。
【0058】
そして、エンベデッドコントローラ31は、キーボード32に対するユーザの操作によりパスワードが入力された場合、入力された文字列に対応するキー情報をキーボード32から取得し、取得したキー情報とキー情報を取得したときの時刻とに基づいて、当該時刻に対応するワンタイムスキャンコードマップに従ってキー情報をスキャンコード(ワンタイムスキャンコード)に変換して暗号化する。エンベデッドコントローラ31は、変換したスキャンコードをCPU11へ出力する。
【0059】
CPU11は、OSの処理により、エンベデッドコントローラ31から出力されたスキャンコードを取得すると、取得したスキャンコードを規定のスキャンコードマップに基づいて文字列(文字コード)に変換して通信部23を介して認証サーバ80へ送信する。これにより、
図1を参照して説明したように、キーボード32に対してパスワードとして文字列「ABC」が入力された場合、時刻によって文字列「EFG」、文字列「AHK」、文字列「S5T」などのように暗号化された文字列(文字コード)のデータが認証サーバ80へ送信される。
【0060】
また、CPU11は、BIOSの処理により、エンベデッドコントローラ31からの時刻情報の要求を受けると、現在時刻の情報をRTC211から取得してエンベデッドコントローラ31へ送信する。なお、RTC211で計時されている時刻は、OSの処理に基づいて、ネットワークNTを介して通信接続されるタイムサーバにより随時、正しい現在時刻に調整される。また、認証サーバ80における現在時刻も同様にタイムサーバなどにより随時、正しい現在時刻に調整されている。
【0061】
認証サーバ80は、情報処理装置10から暗号化された文字列(文字コード)のデータを受信して取得すると、取得した時刻と「セキュアキー」(情報処理装置10と共通の「セキュアキー」)とにより生成されたワンタイムスキャンコードマップ(共通の暗号化ルール)を用いて、暗号化された文字列(文字コード)のデータを複合して、情報処理装置10でユーザにより入力された元の文字列を得る。そして、認証サーバ80は、認証処理を実行する。例えば、認証サーバ80は、暗号化された文字列(文字コード)のデータを複合し、複合した文字列(情報処理装置10でパスワードとして入力された文字列)と、予めユーザIDと関連付けて登録されているパスワードの文字列とを照合することにより、ユーザ認証を行う。
【0062】
[ワンタイムスキャンコードモードによる認証処理]
次に、本実施形態に係る情報処理システム1で実行されるワンタイムスキャンコードモードによる認証処理の動作について説明する。
図5は、本実施形態に係る情報処理システム1における認証処理の一例を示すフローチャートである。
【0063】
(ステップS101)CPU11は、BIOSの起動、及びユーザ認証の後OSの起動処理を実行する。なお、この起動時のユーザ認証は、例えば、パスワード認証、指紋認証、顔認証などの一要素認証であって、ワンタイムスキャンコードモードによる認証とは異なる。システムが起動すると、ステップS103の処理へ進む。
【0064】
(ステップS103)エンベデッドコントローラ31は、キーボード32に配列されているキーのうちの特定のキーに対する操作に応じて、ワンタイムスキャンコードモードに移行する。特定のキーに対する操作とは、例えば、「Fn」+「P」などの複数の特定のキーを組み合わせた操作である。なお、エンベデッドコントローラ31は、特定のキーに対する操作に限らず、特定のアプリケーション内における操作によりワンタイムスキャンコードモードに移行してもよいし、特定のアプリケーションが起動することにより自動でワンタイムスキャンコードモードに移行してもよい。そして、ステップS105の処理へ進む。
【0065】
(ステップS105)エンベデッドコントローラ31は、CPU11に対して時刻情報を要求する。そして、ステップS107の処理へ進む。
【0066】
(ステップS107)CPU11は、BIOSの処理により、エンベデッドコントローラ31からの時刻情報の要求に応じて、現在時刻の情報をエンベデッドコントローラ31へ送信する。エンベデッドコントローラ31は、CPU11(BIOS)から現在時刻の情報を取得する。そして、ステップS109の処理へ進む。
【0067】
(ステップS109)エンベデッドコントローラ31は、「セキュアキー」と時刻とに基づいてワンタイムスキャンコードマップを生成する。そして、ステップS111の処理へ進む。
【0068】
(ステップS111)キーボード32に対するユーザの操作によりパスワードが入力されると、エンベデッドコントローラ31は、入力された文字列に対応するキー情報をキーボード32から取得する。そして、ステップS113の処理へ進む。
【0069】
(ステップS113)エンベデッドコントローラ31は、取得したキー情報とキー情報を取得したときの時刻とに基づいて、当該時刻に対応するワンタイムスキャンコードマップに従ってキー情報(パスワード)をスキャンコード(ワンタイムスキャンコード)に変換して暗号化する。そして、ステップS115の処理へ進む。
【0070】
(ステップS115)エンベデッドコントローラ31は、パスワードを暗号化したスキャンコードをCPU11へ出力する。そして、ステップS117の処理へ進む。
【0071】
(ステップS117)CPU11は、OSの処理により、パスワードを暗号化したスキャンコードを規定のスキャンコードマップに基づいて文字列(文字コード)に変換した暗号化データを生成して、通信部23を介して認証サーバ80へ送信する。そして、ステップS201の処理へ進む。
【0072】
(ステップS201)認証サーバ80は、情報処理装置10から暗号化データを受信すると、当該暗号化データを取得して、ステップS203の処理へ進む。
【0073】
(ステップS203)認証サーバ80は、情報処理装置10から暗号化データを取得した時刻と情報処理装置10と共通の「セキュアキー」により生成されたワンタイムスキャンコードマップとに基づいて、暗号化データを複合して、情報処理装置10でユーザにより入力された元のパスワードの文字列を取得する。そして、ステップS205の処理へ進む。
【0074】
(ステップS205)認証サーバ80は、複合したパスワードに基づいて、パスワード認証の処理を実行する。例えば、認証サーバ80は、複合したパスワードの文字列(情報処理装置10でパスワードとして入力された文字列)と、予めユーザIDと関連付けて登録されているパスワードの文字列とを照合することにより、ユーザ認証の処理を実行する。
【0075】
[実施形態のまとめ]
以上説明してきたように、本実施形態に係る情報処理システム1は、情報処理装置10と、情報処理装置10と通信接続される認証サーバ80(サーバの一例)とを備えている。情報処理装置10は、OSのプログラムを一時的に記憶するメインメモリ12(メモリの一例)と、OSのプログラムを実行するCPU11(プロセッサの一例)と、CPU11とは別に設けられているプロセッサであるエンベデッドコントローラ31と、認証サーバ80と通信する通信部23(送信部の一例))とを備えている。エンベデッドコントローラ31は、複数のキーが配列されているキーボード32(操作部の一例)に対するユーザの操作により操作されたキーを示すキー情報(第1キー情報の一例)をキーボード32から取得し、取得したキー情報と時刻に応じて変更される暗号化ルール(例えば、時刻と「セキュアキー」とに基づいて生成されるワンタイムスキャンコードマップ)とに基づいて暗号化した暗号化データ(第1キー情報と異なる第2キー情報の一例)を生成してCPU11へ送信する。CPU11は、ユーザの操作により操作されたキーを示すキー情報を取得せずに、エンベデッドコントローラ31により生成された暗号化データに基づくデータを、認証サーバ80へ送信する。認証サーバ80は、情報処理装置10から送信された暗号化データに基づくデータを取得し、取得した暗号化データに基づくデータと、情報処理装置10で使用される暗号化ルールと同一時刻において同一の暗号化が行われる共通の暗号化ルールとに基づいて、ユーザの操作により操作されたキーを示すキー情報を得る。
【0076】
これにより、情報処理システム1は、情報処理装置10で入力されたパスワードが、情報処理装置10内で時刻に応じて変更される暗号化ルールに基づいて暗号化されて認証サーバ80へ送信されるため、不正アクセスに対する安全性を高めることができる。例えば、情報処理システム1は、従来のハードウェアトークンやセキュリティカードなどのようにワンタイム認証に使用される文字列が視認できるものと異なり、情報処理装置10の内部でパスワードの暗号化が行われる。そのため、情報処理システム1は、従来のハードウェアトークンやセキュリティカードなどのように、落としたり紛失したりすることによる不正アクセスの懸念が無く、不正アクセスに対する安全性を高めることができる。
【0077】
例えば、上記暗号化ルールは、キーボード32に配列されている複数のキーのそれぞれに対応するスキャンコードの時刻に応じた変更ルールであり、時刻と「セキュアキー」とに基づいて生成されるワンタイムスキャンコードマップである。エンベデッドコントローラ31は、キーボード32から取得したキー情報(第1キー情報の一例)とキー情報を取得したときの時刻とに基づいて、当該時刻における暗号化ルール(例えば、ワンタイムスキャンコードマップ)に従ってキー情報をスキャンコードに変換して暗号化データ(第2キー情報の一例)を生成する。
【0078】
これにより、情報処理装置10は、時刻に応じてワンタイムスキャンコードマップを生成することにより、キーボード32に入力されたパスワードの文字列を、時刻に応じて異なるスキャンコードに変換して暗号化することができる。
【0079】
認証サーバ80は、情報処理装置10から暗号化データ(第2キー情報の一例)に基づくデータを取得した時刻と上記の共通の暗号化ルール(例えば、ワンタイムスキャンコードマップ)とに基づいて暗号化データに基づくデータを複合して認証処理を実行する。
【0080】
これにより、認証サーバ80は、情報処理装置10で時刻に応じて異なるスキャンコードに変換して暗号化されたパスワードの文字列を複合して認証処理を実行することができる。
【0081】
なお、本実施形態では、認証サーバ80は、情報処理装置10から取得した暗号化されたパスワードの文字列を共通のワンタイムスキャンコードマップに基づいて複合して認証処理を行う例を説明したが、これに限定されるものではない。例えば、認証サーバ80は、暗号化データ(第2キー情報の一例)に基づくデータを取得した時刻と上記の共通の暗号化ルール(例えば、ワンタイムスキャンコードマップ)とに基づいて、予め登録された文字列(パスワード)を暗号化した認証用データを生成し、認証用データと暗号化データ(第2キー情報の一例)に基づくデータとに基づいて認証処理を実行してもよい。
図6を参照して説明する。
【0082】
図6は、本実施形態に係るパスワード認証の仕組みの他の例の説明図である。この図において、情報処理装置10におけるワンタイムスキャンコードモードの処理は
図1と同様である。認証サーバ80は、予め登録された文字列(パスワード)を、時刻に応じて(例えば、30秒毎に)生成したワンタイムスキャンコードマップに基づいて暗号化して認証用データを生成する。認証用データは、情報処理装置10から送信される暗号化データと照合するためのデータである。
【0083】
図6に示す例において、情報処理装置10においてパスワードとして文字列「ABC」が入力された場合、時刻「12:45:10」ではワンタイムスキャンコードマップに基づいて文字列「EFG」に暗号化されたデータが認証サーバ80へ送信される。認証サーバ80では、同時刻「12:45:10」において、予め登録された文字列(パスワード)が共通のワンタイムスキャンコードマップに基づいて文字列「EFG」に暗号化された認証用データが生成される。これにより、認証サーバ80は、情報処理装置10から送信された暗号化されたデータ(文字列「EFG」)と、認証用データ(文字列「EFG」)とを照合することにより、ユーザ認証処理を実行する。
【0084】
これにより、情報処理システム1は、情報処理装置10で入力されたパスワードが、情報処理装置10内で時刻に応じて変更される暗号化ルールに基づいて暗号化されて認証サーバ80へ送信され、認証サーバ80においてユーザ認証を行うことができるため、不正アクセスに対する安全性を高めることができる。
【0085】
なお、本実施形態では、情報処理装置10は、キーボード32に対してパスワードとして入力された文字列を暗号化したスキャンコードを規定のスキャンコードマップに基づいて文字列(文字コード)に変換した暗号化データを生成して、通信部23を介して認証サーバ80へ送信する例を説明したが、キーボード32に対してパスワードとして入力された文字列を暗号化したスキャンコードを暗号化データとして通信部23を介して認証サーバ80へ送信してもよい。この場合、認証サーバ80は、情報処理装置10から送信された暗号化されたスキャンコードをワンタイムスキャンコードマップに基づいて複合して認証処理を行ってもよいし、予め登録された文字列(パスワード)が共通のワンタイムスキャンコードマップに基づいて暗号化されたスキャンコードを認証用データとして照合することにより認証処理を行ってもよい。
【0086】
また、暗号化ルール(例えば、ワンタイムスキャンコードマップ)を示す情報(例えば、「セキュアキー」)とユーザの識別情報(例えば、ユーザID)とが関連付けられて、情報処理装置10及び認証サーバ80のそれぞれの記憶部に記憶されている。
【0087】
これにより、情報処理システム1は、ユーザ毎のパスワード認証を、ワンタイムスキャンコードモードを使用した二要素認証の処理として実行することができる。
【0088】
例えば、情報処理装置10における暗号化ルールを示す情報(例えば、「セキュアキー」)は、エンベデッドコントローラ31内の記憶部(例えば、ROM、フラッシュメモリなど)に記憶される。
【0089】
これにより、情報処理装置10は、ハードウェア内のデータでワンタイム認証を行うことができるため、従来のハードウェアトークンやセキュリティカードなどのように、落としたり紛失したりすることによる不正アクセスの懸念が無く、不正アクセスに対する安全性を高めることができる。
【0090】
なお、情報処理装置10のエンベデッドコントローラ31内の記憶部に「セキュアキー」を記憶させる方法としては、認証サーバ80などの「セキュアキー」を提供するサーバからダウンロードする方法を適用できる。このダウンロードを行う際には、パスワード認証に加えて、ワンタイム認証用メールアドレスに送信されたワンタイムキーを入力するワンタイム認証を用いてもよい。
【0091】
エンベデッドコントローラ31は、CPU11で実行されているBIOSに対して時刻情報を要求する。CPU11は、エンベデッドコントローラ31からの時刻情報の要求に応じて、BIOSの処理により現在時刻の情報をエンベデッドコントローラ31へ送信する。
【0092】
これにより、情報処理装置10は、正確な時刻に応じてワンタイムスキャンコードマップを生成することができるため、認証サーバ80における認証処理を適切に行うことができる。
【0093】
エンベデッドコントローラ31は、キーボード32に配列されているキーのうちの特定のキーに対するユーザの操作(例えば、「Fn」+「P」などの複数の特定のキーを組み合わせた操作)に応じて、ワンタイムスキャンコードモード(キー情報を暗号化ルールに基づいて暗号化する処理モード)へ移行する。
【0094】
これにより、情報処理装置10は、ユーザによる簡単な操作でワンタイムスキャンコードモードを使用した二要素認証の処理を実行することができる。
【0095】
なお、前述したように、エンベデッドコントローラ31は、特定のキーに対する操作に限らず、特定のアプリケーション内における操作によりワンタイムスキャンコードモードに移行してもよいし、特定のアプリケーションが起動することにより自動でワンタイムスキャンコードモードに移行してもよい。
【0096】
また、本実施形態に係る情報処理装置10は、OSのプログラムを一時的に記憶するメインメモリ12(メモリの一例)と、OSのプログラムを実行するCPU11(プロセッサの一例)と、CPU11とは別に設けられているプロセッサであるエンベデッドコントローラ31と、認証サーバ80と通信する通信部23(送信部の一例))とを備えている。エンベデッドコントローラ31は、複数のキーが配列されているキーボード32(操作部の一例)に対するユーザの操作により操作されたキーを示すキー情報(第1キー情報の一例)をキーボード32から取得し、取得したキー情報と時刻に応じて変更される暗号化ルール(例えば、時刻と「セキュアキー」とに基づいて生成されるワンタイムスキャンコードマップ)とに基づいて暗号化した暗号化データ(第1キー情報と異なる第2キー情報の一例)を生成してCPU11へ送信する。CPU11は、ユーザの操作により操作されたキーを示すキー情報を取得せずに、エンベデッドコントローラ31により生成された暗号化データに基づくデータを、認証サーバ80へ送信する。
【0097】
これにより、情報処理装置10は、キーボード32に入力されたパスワードが、情報処理装置10内で時刻に応じて変更される暗号化ルールに基づいて暗号化して認証サーバ80へ送信するため、不正アクセスに対する安全性を高めることができる。例えば、情報処理装置10は、従来のハードウェアトークンやセキュリティカードなどのようにワンタイム認証に使用される文字列が視認できるものと異なり、情報処理装置10の内部でパスワードの暗号化を行う。そのため、情報処理装置10は、従来のハードウェアトークンやセキュリティカードなどのように、落としたり紛失したりすることによる不正アクセスの懸念が無く、不正アクセスに対する安全性を高めることができる。
【0098】
また、本実施形態に係る認証サーバ80は、複数のキーが配列されているキーボード32(操作部の一例)に対するユーザの操作により操作されたキーを示すキー情報(第1キー情報の一例)をキーボード32から取得し、取得したキー情報と時刻に応じて変更される暗号化ルール(例えば、時刻と「セキュアキー」とに基づいて生成されるワンタイムスキャンコードマップ)とに基づいて暗号化した暗号化データ(第1キー情報と異なる第2キー情報の一例)に基づくデータを送信する情報処理装置10と通信接続される。認証サーバ80は、情報処理装置10から送信された暗号化データに基づくデータを取得し、取得した暗号化データに基づくデータと、情報処理装置10で使用される暗号化ルールと同一時刻において同一の暗号化が行われる共通の暗号化ルールとに基づいて、ユーザの操作により操作されたキーを示すキー情報を得る。
【0099】
これにより、認証サーバ80は、情報処理装置10で入力されたパスワードが時刻に応じて変更される暗号化ルールに基づいて暗号化されてから送信されるため、安全性の高い認証処理を行うことができ、不正アクセスに対する安全性を高めることができる。
【0100】
また、本実施形態に係る情報処理システム1における制御方法は、情報処理装置10において、エンベデッドコントローラ31が、複数のキーが配列されているキーボード32(操作部の一例)に対するユーザの操作により操作されたキーを示すキー情報(第1キー情報の一例)をキーボード32から取得するステップと、エンベデッドコントローラ31が、取得したキー情報と時刻に応じて変更される暗号化ルール(例えば、時刻と「セキュアキー」とに基づいて生成されるワンタイムスキャンコードマップ)とに基づいて暗号化した暗号化データ(第1キー情報と異なる第2キー情報の一例)を生成してCPU11へ送信するステップと、CPU11が、第1キー情報を取得せずにエンベデッドコントローラ31により生成された第2キー情報に基づくデータを認証サーバ80へ送信するステップと、を含み、認証サーバ80において、情報処理装置10から送信された暗号化データに基づくデータを取得するステップと、取得した暗号化データに基づくデータと、情報処理装置10で使用される暗号化ルールと同一時刻において同一の暗号化が行われる共通の暗号化ルールとに基づいて、ユーザの操作により操作されたキーを示すキー情報を得るステップと、を含む。
【0101】
これにより、情報処理システム1は、情報処理装置10で入力されたパスワードが、情報処理装置10内で時刻に応じて変更される暗号化ルールに基づいて暗号化されて認証サーバ80へ送信されるため、不正アクセスに対する安全性を高めることができる。例えば、情報処理システム1は、従来のハードウェアトークンやセキュリティカードなどのようにワンタイム認証に使用される文字列が視認できるものと異なり、情報処理装置10の内部でパスワードの暗号化が行われる。そのため、情報処理システム1は、従来のハードウェアトークンやセキュリティカードなどのように、落としたり紛失したりすることによる不正アクセスの懸念が無く、不正アクセスに対する安全性を高めることができる。
【0102】
<第2の実施形態>
次に、本発明の第2の実施形態について説明する。
本実施形態では、1つの「セキュアキー」を複数のユーザが共有して利用することができる態様について説明する。
【0103】
図7は、本実施形態に係る情報処理システム1Aの構成例を示す図である。本実施形態に係る情報処理システム1Aでは、複数のユーザそれぞれの識別情報(例えば、ユーザID)に対して共通の暗号化ルールを示す情報(例えば、「セキュアキー」)が関連付けられて、情報処理装置10及び認証サーバ80のそれぞれの記憶部に記憶されている。
【0104】
これにより、情報処理システム1Aは、例えば図書館のシステムや会社のシステムなど、複数のユーザが1つのシステム(サービス)を利用する際に、第1の実施形態で説明したワンタイムスキャンコードモードによる認証処理を適用することができる。
【0105】
<第3の実施形態>
次に、本発明の第3の実施形態について説明する。
本実施形態では、一人のユーザが複数の「セキュアキー」を利用することができる態様について説明する。
【0106】
図8は、本実施形態に係る情報処理システム1Bの構成例を示す図である。本実施形態に係る情報処理システム1Bでは、一人のユーザの識別情報(例えば、ユーザID)に対して複数の暗号化ルールを示す情報(例えば、「セキュアキー」)が関連付けられて、情報処理装置10及び認証サーバ80それぞれの記憶部に記憶されている。複数の「セキュアキー」は、銀行、保険会社、ネットショップ、VPNなどの複数のシステム(サービス)それぞれの「セキュアキー」である。複数のシステム(サービス)毎に認証サーバ80が異なる場合には、複数のシステム(サービス)毎の認証サーバ80のそれぞれに、複数のシステム(サービス)それぞれの「セキュアキー」が記憶されている。一方、ユーザが利用する1台の情報処理装置10には、複数のシステム(サービス)のそれぞれの「セキュアキー」が記憶されている。
【0107】
これにより、情報処理システム1Bは、一人のユーザが、銀行、保険会社、ネットショップ、VPNなどの複数のシステム(サービス)を利用する際に、第1の実施形態で説明したワンタイムスキャンコードモードによる認証処理を適用することができる。
【0108】
<第4の実施形態>
次に、本発明の第4の実施形態について説明する。
本実施形態では、情報処理装置10に「セキュアキー」が記憶されている状態で工場から出荷される態様について説明する。
【0109】
図9は、本実施形態に係る情報処理システム1Cの構成例を示す図である。本実施形態に係る情報処理システム1Cでは、暗号化ルールを示す情報(例えば、「セキュアキー」)が情報処理装置10のエンベデッドコントローラ31内の記憶部(例えば、ROM、フラッシュメモリなど)に記憶された状態で工場90から出荷される。複数のシステム(サービス)それぞれの「セキュアキー」は、クラウド100に記憶されて管理されている。ユーザは、情報処理装置10を購入する際に、利用するシステム(サービス)を選択し、利用するシステム(サービス)の「セキュアキー」とユーザの識別情報(例えば、ユーザID)とを関連付けて、クラウド100が提供するクラウドサービスに登録する。ユーザが購入した情報処理装置10には、選択した「セキュアキー」とユーザの識別情報(例えば、ユーザID)とが記憶されている状態で工場90から出荷され、ユーザの元へ配送される。各システム(サービス)の認証サーバ80は、クラウド100が提供するクラウドサービスにより「セキュアキー」とユーザの識別情報(例えば、ユーザID)とを取得して、認証処理を実行する。
【0110】
これにより、情報処理システム1Cは、購入した情報処理装置10がユーザの元へ配送された状態で、第1の実施形態で説明したワンタイムスキャンコードモードによる認証処理を利用することができるため利便性が良い。
【0111】
以上、この発明の各実施形態について図面を参照して詳述してきたが、具体的な構成は上述の実施形態に限られるものではなく、この発明の要旨を逸脱しない範囲の設計等も含まれる。例えば、上述の各実施形態において説明した各構成は、任意に組み合わせることができる。
【0112】
上記実施形態では、情報処理装置10がクラムシェル型のノートPCである例を示したが、デスクトップ型のPC、タブレット型のPCなどであってもよい。また、キーボード32は、情報処理装置10に設けられているものに限らず、情報処理装置10と接続される周辺機器(外部機器)としてもよい。
【0113】
なお、上述した情報処理装置10は、内部にコンピュータシステムを有している。そして、上述した情報処理装置10が備える各構成の機能を実現するためのプログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行することにより上述した情報処理装置10が備える各構成における処理を行ってもよい。ここで、「記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行する」とは、コンピュータシステムにプログラムをインストールすることを含む。ここでいう「コンピュータシステム」とは、OSや周辺機器等のハードウェアを含むものとする。また、「コンピュータシステム」は、インターネットやWAN、LAN、専用回線等の通信回線を含むネットワークを介して接続された複数のコンピュータ装置を含んでもよい。また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ROM、CD-ROM等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。このように、プログラムを記憶した記録媒体は、CD-ROM等の非一過性の記録媒体であってもよい。
【0114】
また、記録媒体には、当該プログラムを配信するために配信サーバからアクセス可能な内部又は外部に設けられた記録媒体も含まれる。なお、プログラムを複数に分割し、それぞれ異なるタイミングでダウンロードした後に情報処理装置10が備える各構成で合体される構成や、分割されたプログラムのそれぞれを配信する配信サーバが異なっていてもよい。さらに「コンピュータ読み取り可能な記録媒体」とは、ネットワークを介してプログラムが送信された場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリ(RAM)のように、一定時間プログラムを保持しているものも含むものとする。また、上記プログラムは、上述した機能の一部を実現するためのものであってもよい。さらに、上述した機能をコンピュータシステムに既に記録されているプログラムとの組み合わせで実現できるもの、いわゆる差分ファイル(差分プログラム)であってもよい。
【0115】
また、上述した実施形態における情報処理装置10が備える各機能の一部、または全部を、LSI(Large Scale Integration)等の集積回路として実現してもよい。各機能は個別にプロセッサ化してもよいし、一部、又は全部を集積してプロセッサ化してもよい。また、集積回路化の手法はLSIに限らず専用回路、または汎用プロセッサで実現してもよい。また、半導体技術の進歩によりLSIに代替する集積回路化の技術が出現した場合、当該技術による集積回路を用いてもよい。
【符号の説明】
【0116】
1,1A,1B,1C 情報処理システム、10 情報処理装置、101 ディスプレイ筐体、101a ディスプレイ面、101b トップ面、102 機器筐体、102a キーボード面、102b ボトム面、103 ヒンジ機構、11 CPU、12 メインメモリ、13 ビデオサブシステム、14 表示部、21 チップセット、211 RTC、22 BIOSメモリ、23 通信部、25 RTC電源、31 エンベデッドコントローラ、32 キーボード、33 電源回路、35 電源ボタン、40 記憶装置、60 バッテリ
【要約】
【課題】不正アクセスに対する安全性を高めた情報処理装置を提供すること。
【解決手段】情報処理システムは、情報処理装置とサーバとを備える。情報処理装置は、OSのプログラムを実行するプロセッサと、複数のキーが配列されている操作部に対するユーザの操作により操作されたキーを示す第1キー情報を操作部から取得し、取得した第1キー情報と時刻に応じて変更される暗号化ルールとに基づいて第1キー情報と異なる第2キー情報を生成してプロセッサへ送信するECと、を備える。プロセッサは、第1キー情報を取得せずにECにより生成された第2キー情報に基づくデータをサーバへ送信する。サーバは、情報処理装置から送信された第2キー情報に基づくデータを取得し、取得したデータと、情報処理装置で使用される暗号化ルールと同一時刻において同一の暗号化が行われる共通の暗号化ルールとに基づいて第1キー情報を得る。
【選択図】
図1