JP3863447B2 - 認証システム、ファームウェア装置、電気機器、及び認証方法 - Google Patents
認証システム、ファームウェア装置、電気機器、及び認証方法 Download PDFInfo
- Publication number
- JP3863447B2 JP3863447B2 JP2002064368A JP2002064368A JP3863447B2 JP 3863447 B2 JP3863447 B2 JP 3863447B2 JP 2002064368 A JP2002064368 A JP 2002064368A JP 2002064368 A JP2002064368 A JP 2002064368A JP 3863447 B2 JP3863447 B2 JP 3863447B2
- Authority
- JP
- Japan
- Prior art keywords
- authentication
- authenticator
- program
- execution means
- program execution
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/30—Authentication, i.e. establishing the identity or authorisation of security principals
- G06F21/31—User authentication
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2221/00—Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/21—Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/2103—Challenge-response
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2221/00—Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/21—Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/2137—Time limited access, e.g. to a computer or data
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Storage Device Security (AREA)
- Stored Programmes (AREA)
Description
【発明の属する技術分野】
本発明は、パーソナル・コンピュータ(以下、適宜、「PC」と言う。)等の電気機器、及び該電気機器に装備される認証システム、ファームウェア装置、及び認証方法に係り、詳しくは認証子の漏洩を的確に防止できる電気機器、及び該電気機器に装備される認証システム、ファームウェア装置、及び認証方法に関するものである。
【0002】
【従来の技術】
LAN(Local Area Network)及びWAN(Wide Area Network)において、ユーザが、所定のサーバからの認証を受けるために、ログ・イン時にパスワードを入力するのは公知である。そして、その場合に、認証サーバは、パスワードそのものを保持せず、パスワードに対するハッシュ関数値を演算し、この演算値と該ユーザに係る所定の保持値とを対比して、認証するか否かを決定する。このような認証システムでは、サーバが保持している、ユーザに係る保持値は、ユーザの入力するパスワードそのものではなく、該パスワードに対するハッシュ関数値であり、かつハッシュ関数は逆算不可能である。したがって、このようなハッシュ関数値がサーバから漏洩したとしても、そのハッシュ関数値を使って、認証を得ることはできないので、不正なログインを防止することができる。
【0003】
【発明が解決しようとする課題】
ハッシュ関数を利用した従来の認証システムは、例えばPCに装備される節電モード制御用ファームウェアの認証への適用では、問題が残る。例えば、PCへ侵入したコンピュータ・ウィルスが、ハッシュ関数値を保持している認証主体ではなく、ハッシュ関数の基となる認証子を保持している認証対象へアクセスして、認証子の読出しに成功する可能性がある。
【0004】
また、認証対象になり得るファームウェアのプログラムは、PCのOS実行用プロセッサとは別の専用のプロセッサにより実行されるとともに、OS実行用プロセッサ上で実行される各種プログラムは、一般に、ファームウェアのプログラムの内容を読み出すことができない。したがって、OS実行用プロセッサが、ファームウェアのプログラムのコードを読み出して、内容に基づいて認証するか否かを決定することはできない。
【0005】
本発明の目的は、一方向性関数生成のための認証子に基づいて認証を実施する認証システム、ファームウェア装置、電気機器、及び認証方法において、悪意のコード等が認証子の読出す可能性を低減し、かつ不正に読み出した認証子による不正な認証を防止することである。
【0006】
【課題を解決するための手段】
本発明の認証システムは次のものを有している。
・認証未済のプログラムは作動できないことを保証してある期間を認証子受付期間として検出する認証子受付期間検出手段
・所定のプログラムを実行するものでありかつ認証子受付期間において認証子送出の要求を受けたときに限り認証子を送出するプログラム実行手段
・プログラム実行手段から受け付けた認証子に基づいて一方向性関数値を演算しかつ該一方向性関数値とプログラム実行手段についての予め保持している保持値との対比に基づいてプログラム実行手段について認証すべきか否かを決定する認証手段
【0007】
認証期間は、認証未済のプログラムは作動できないことを保証してある期間であれば、どんな期間でもよい。すなわち、認証子受付期間は、後述のブート期間に限定されず、認証期間の始点はシステム・リセットの生成時点に限定されず、認証期間の終点はOSのアクティベートされた(activate)時点に限定されない。
【0008】
パスワードが固定されたものに限るとするならば、認証子は、このようなパスワードに限定されず、被認証の都度、変化するものであってもよいとする。例えば、二変数関数E(K,P)及びD(K,Q)が定義され、Kを固定したとき互いに逆関数(すなわちP=D(K,E(K,P)))となっているとする。認証主体としての認証手段は、任意に”チャレンジ”Kを指定し、パスワード要求と同時にKを認証対象としてのプログラム実行手段へ通知し、プログラム実行手段はP自身の代わりに”レスポンス”Q=E(K,P)を認証手段へ返す。認証手段はP’=D(K,Q)によりP’を演算する(なお、この手法は”チャレンジ・レスポンス”と呼ばれる公知の手法の”亜流”である。)。認証手段は、P’に対応する一方向性関数値H(P’)を演算する。認証手段は、演算した一方向性関数値H(P’)と、真正なPから予め求められていて保有している一方向性関数値H(P)とを対比し、プログラム実行手段を認証するか否かを決定する。認証手段は、Kの値を適宜、選択でき、Qは、Kの変更に伴い、変更される。概念上、認証子は、Qのような変化するものも包摂するものとする。
【0009】
本発明の認証システムは例えばPC(パーソナル・コンピュータ)等の電気機器に実装される。認証システムを実装する電気機器として、PCの外に、PDA(Personal Digital Assistants)、携帯電話、所定の家電、ゲーム機、産業用ロボット、自動販売機、ATM、複写機、fax機等を挙げることができる。本発明の認証システムが適用される電気機器は、概念上、1個以上のプロセッサを搭載して、プログラムを実行するものをすべて含む。認証手段は、プログラム実行手段からの認証子そのものを該プログラム実行手段について保持する保持値と対比するのではなく、プログラム実行手段からの認証子に基づいて演算した一方向性関数値と所定の保持値とを対比する。したがって、認証手段から保持値が漏洩しても、悪意のコードが、認証手段からの漏洩データに基づいて不正な認証を得る事態が有効に回避される。また、プログラム実行手段は、公開鍵方式等の演算アルゴリズムの実装を省略できるので、構造が簡単となる。
【0010】
認証システムの一態様では、プログラム実行手段の実行するプログラムのコードは、書換えられる可能性のあるもの及び/又は認証手段により読出し不能であるものである。
【0011】
プログラム実行手段がそのコードを書換可能なものである場合、悪意のコードがプログラム実行手段のコードを書換える危険性が高まる。プログラム実行手段がそのコードを書換可能なものである場合、プログラム実行手段の認証子又はその生成に必要なシーズ(seed)は、典型的には、電気回路部に保持することなく、ソフトウェアのコードと共に書換可能なメモリにストアされている。悪意のコード等が、プログラム実行手段の実行するプログラムのコードを書換えると、認証子又はその生成に必要なシーズも喪失又は変更されてしまい、該プログラム実行手段は真正の認証子を送出することは困難になる。通常の書換え可能な不揮発性記憶素子は、所定のブロック単位(例:128バイト等の複数バイト単位)で書換え可能になっており、認証子を含むブロックでは、認証子をそのままに、他のコード部のみを書換えることは困難である。また、認証子の含まれるブロックを探し出すことはメモリ構造等の相当の情報が必要となる。こうして、プログラム実行手段は、そのコードを悪意のコードにより書換えられると、真正の認証子を送出困難になり、認証手段による認証ができなくなる。
【0012】
認証主体としての認証手段は、認証対象としてのプログラム実行手段からそのプログラム・コードを読み出して、内容に基づいて真正なプログラム実行手段であるか否か、すなわち認証するか否かを判断することもできるが、プログラム・コードを読出し不能である場合には、そのような認証は、困難である。したがって、認証子受付期間にプログラム実行手段から送出のあった認証子に基づいて認証を行うことについての意義は高まる。本発明がノート型PC等のPCに適用される場合、プログラム実行手段は、例えばPCの節電モード等の電源管理を行うプログラムを実装した組込み型コントローラ(Embedded Controller)となり、認証手段は、典型的にはPCのCPUにより実行されるものとなる。そして、該組込み型コントローラのプログラム・コードはPCのCPUには読み出すことができない。プログラム実行手段としての組込み型コントローラには、PCの節電モード等の電源管理を行うプログラムを実装したコントローラの他に、ネットワーク・コントローラや、ハード・ディスク・ドライブのコントローラ、及びCD−ROMドライブのコントローラが含まれる。なお、本明細書において、「組込み型コントローラ」と言う場合、それは専用のプロセッサを内蔵したものとして使用する。
【0013】
認証子受付期間とは、例えば、システム・リセット時から認証システムのオペレーティング・システム(OS)が活性化する(activate:OSが作動可能状態になること。)までの期間(以下、「ブート期間」と言う。)に含まれる期間である。コンピューティング・プラットフォーム(Computing Platform)のトラスト(trust)及びセキュリティ(security)のオープン規格としてのTCPA(Trusted ComputingPlatform Alliiance。詳しくはURL:www.trustedpc.orgを参照されたい。)では、ブート期間において、所定の複数個のプログラムが所定の連鎖で読み込まれ、実行され、次々に認証されるようになっている。この連鎖の具体的順番は、BIOSブート・ブロック(BIOS Boot Block)、BIOS(Basic Input/Output System)、OSローダ(OS Loader)及びOS(Operating System)である、最初にコードを読み出されるBIOSブート・ブロックは、書換え困難なROMに記録されており、測定用の信用コア・ルート(Core Root of Trust for Mesurement)として働く。したがって、BIOSブート・ブロックは任意の時点で常に認証済みである。好ましい認証システムでは、ブート期間では、BIOSブート・ブロックは認証済みのものとして扱われ、該BIOSブート・ブロックを含む所定の複数個のプログラムについては各プログラムがそれより1個だけ先に認証されたプログラムから認証を受ける認証連鎖が設定され、認証手段は、認証連鎖に属するプログラムを実装して認証処理を実行するものである。
【0014】
好ましくは、プログラム実行手段はハードウェアを装備し、該ハードウェアは、プログラム実行手段からのプログラム実行手段の認証子の電気信号の送出を許容及び禁止する機能を装備し、さらに、該ハードウェアは、システム・リセット信号の検出開始時点よりプログラム実行手段からのプログラム実行手段の認証子の電気信号の送出を許容するようになっている。システム・リセット信号は、システム起動(該起動には、再起動も含む。)のために生じるものであり、例えばパワー・オン時に生成される。プログラム実行手段のハードウェアが、プログラム実行手段からのプログラム実行手段の認証子の送出を許容及び禁止することにより、また、プログラム実行手段のハードウェアがブート期間の開始としてのシステム・リセット信号を検出することにより、悪意のコードが、プログラム実行手段から不正に認証子を得る可能性がさらに低下する。
【0015】
好ましくは、ハードウェアは、外部からの所定のコマンド信号の入力に伴いプログラム実行手段からの認証子の送出を禁止又は認証子の送出に代わるエラー信号の送出を実行するようになっている。「外部から」とは、典型的には、認証手段からである。「外部からの所定のコマンド信号」には、単一のコマンドに係る信号だけでなく、複数個のコマンドの特定のシーケンスに係る信号、さらに、複数個のコマンドの中から特定の複数個のコマンドの組に係る信号等も概念上、包摂される。典型的は、プログラム実行手段はファームウェア素子である。該ファームウェア素子は、そのファームウェアを実行するプロセッサを組み込まれているものであっても、プロセッサを組み込まれず、それを外付けで接続されていてもよいとする。
【0016】
好ましくは、プログラム実行手段の認証子は、プログラム実行手段が実装するプログラムのバージョンごと、認証システムを装備する電気機器の機種ごと、及び/又は認証システムを装備する電気機器ごとに、相違している。プログラム実行手段が実装するプログラムのバージョンごと、認証システムを装備する電気機器の機種ごと、及び/又は認証システムを装備する電気機器ごとに、プログラム実行手段の認証子を相違させることにより、認証子は、プログラムのバージョン、電気機器の機種ごと、及び/又は電気機器を識別する識別子としても利用可能となる。
【0017】
本発明によれば、ファームウェアを実装するファームウェア装置は、認証子を送出する認証子送出部、外部の認証未済のプログラムは作動できないことを保証してある期間(以下、「認証子受付期間」と言う。)であるか否かを外部入力の所定の電気信号に基づいて検出する検出部、及び認証子受付期間に限り認証子送出部から認証子の送出を許容する送出制御部、を有している。好ましくは、送出制御部は、外部からの所定のコマンド信号の入力に伴い認証子送出部からの認証子の送出を禁止又は認証子の送出に代わるエラー信号の送出を実行するようになっている。また、好ましくは、送出制御部は、認証装置から認証された旨の通知を受けしだい、認証子送出部からの認証子の送出を禁止するものである。
【0018】
ファームウェア装置は、そのファームウェアを実行するためのプロセッサを組み込まれているものであっても、該プロセッサを外付けで接続されているものであってもよい。
【0019】
本発明の電気機器は、認証主体コンポーネントと、該認証主体コンポーネントにより認証されてから所定の協働用コンポーネントと協働する認証対象コンポーネントとを有している。認証対象コンポーネントは、少なくともその一部が認証対象コンポーネントの外部からのアクセス不可能な制御コードを内蔵するものであり、認証主体コンポーネントは、認証対象コンポーネントへ認証主体コンポーネントの送出要求のコマンドを送出するようになっており、認証対象コンポーネントは、認証主体コンポーネントからの認証主体コンポーネントの送出要求コマンドに応答して認証主体コンポーネントを送出するようになっている。
【0020】
認証対象コンポーネントは、その外部からは読出し困難なコードを含むので、そのコードについては、それを認証主体コンポーネントが読み出して、不正のないのものであるか否かを検証することにより、認証することは困難である。これに対処して、本発明の電気機器では、認証主体コンポーネントが、認証対象コンポーネントへ所定のコマンドを送出し、該コマンドに対する認証対象コンポーネントの応答に基づいて認証対象コンポーネントを認証するか否かを決めることによる。
【0021】
本発明の電気機器は、認証主体コンポーネントと、該認証主体コンポーネントにより認証されてから所定の協働用コンポーネントと協働する認証対象コンポーネントと、認証主体コンポーネント及び認証対象コンポーネントを含む複数個のコンポーネントを統括して制御する制御シーケンス(以下、「統括制御シーケンス」と言う。)を実装する統括制御コンポーネントとを有している。統括制御シーケンスは、電気機器の電源をオンするための信号に応答して活性化され、認証主体コンポーネントによる認証対象コンポーネントの認証は、統括制御シーケンスが活性化される前に済まされる。
【0022】
統括制御シーケンスとは例えばOSである。認証主体コンポーネントによる認証対象コンポーネントの認証が、統括制御シーケンスが活性化される前に済まされることにより、不正なコードによる認証子の不正入手が防止される。
【0023】
統括制御シーケンスとは、例えばPCのOSである。電気機器では、それに装備されてそれぞれ独自の機能や処理を達成するプロセッサ及びプログラムについて階層化することが考えられる。下位階層のプロセッサ及びプログラムは上位階層のプロセッサ及びプログラムにより統括され、電気機器全体として秩序ある又は調和された制御が達成される。統括制御シーケンスが活性化される(activate)前に、すなわち、悪意あるプログラム等が作動可能になる前に、認証が済まされ、結果、認証子の漏洩等の危険性を低下させることができる。
【0024】
本発明の認証方法は次のステップを有している。
・認証未済のプログラムは作動できないことを保証してある期間を認証子受付期間として検出する認証子受付期間検出ステップ
・所定のプログラムを実行するプログラム実行手段に対して、認証子受付期間において認証子送出の要求を受けたときに限り認証子を送出させる認証子送出ステップ
・認証手段に対して、プログラム実行手段から受け付けた認証子に基づいて一方向性関数値を演算させ、該一方向性関数値とプログラム実行手段についての予め保持している保持値との対比に基づいてプログラム実行手段について認証すべきか否かを決定させる認証決定ステップ
【0025】
本発明の認証方法には、次の技術事項を任意の組み合わせで付加することができる。
・プログラム実行手段の実行するプログラムのコードは、書換えられる可能性のあるもの及び/又は認証手段により読出し不能であるものである。
・認証子受付期間は、システム・リセット時から認証方法のオペレーティング・システムが活性化するまでの期間(以下、「ブート期間」と言う。)内に規定されている。
・ブート期間では、BIOSブート・ブロックは認証済みのものとして扱われ、該BIOSブート・ブロックを含む所定の複数個のプログラムについては各プログラムがそれより1個だけ先に認証されたプログラムから認証を受ける認証連鎖が設定され、認証手段を、認証連鎖に属するプログラムを実装して認証処理を実行するものとして、認証決定ステップを実行する。
・認証子送出ステップの実行のために、プログラム実行手段にはハードウェアを装備させ、該ハードウェアには、プログラム実行手段からのプログラム実行手段の認証子の送出を許容及び禁止する機能を装備させ、さらに、該ハードウェアには、システム・リセット信号の検出開始時点よりプログラム実行手段からのプログラム実行手段の認証子の送出を許容するように、
させる。
・認証子送出ステップの実行のために、ハードウェアには、外部からの所定のコマンド信号の入力に伴いプログラム実行手段からの認証子の送出を禁止又は認証子の送出に代わるエラー信号の送出を実行するように、させる。
・プログラム実行手段をファームウェア素子とする。
・プログラム実行手段の認証子を、プログラム実行手段が実装するプログラムのバージョンごと、認証方法を装備する電気機器の機種ごと、及び/又は認証方法を装備する電気機器ごとに、相違させる。
【0026】
【発明の実施の形態】
以下、発明の実施の形態について図面を参照して説明する。
【0027】
図1はPC(パーソナル・コンピュータ)10へのTCPA(TrustedComputing Platform Alliiance:コンピュータ・プラットフォームのトラスト及びセキュリティのオープン・スタンダード)の適用における完全性測定(integrity measurement)についての説明図である。図1において、Aは認証の測定(measurement)を表し、Bは認証結果のストア(store)を表し、Cは報告(report)を表す。システム・リセットが、パワー・オン等に伴い、生じると、ブートが開始される。ブートでは、BIOSブート・ブロック11、BIOS12、OSローダ13、及びOS14がその順番で実行される。BIOSブート・ブロック11、BIOS12、OSローダ13、及びOS14の読出し及び実行の連鎖は認証の連鎖でもあり、各プログラムは、それより1個、先に認証を受けたプログラムから認証を受け、この後、次に読み出したプログラムを認証するか否かを決定するようになっている。すなわち、BIOS12、OSローダ13及びOS14はそれそれBIOSブート・ブロック11、BIOS12及びOSローダ13から認証を受ける。各プログラムの認証は認証主体が認証対象のプログラムの内容を検証することにより行われる。OS14は、アプリケーション・ネットワーク23の認証を行う。BIOSブート・ブロック11は、ROM内に存在し、悪意のコードがそれを書換えることは不可能であるので、本来的に認証済みコードであり、TCPAの基本要素であり、測定用の信用コア・ルート(Core Root of Trust for Mesurement)の役目をもつ。BIOS12は、OSローダ13以外にも、所定のハードウェア16及びオプションROM17の認証も受け持つ。BIOSブート・ブロック11、BIOS12、OSローダ13、及びOS14における認証結果はTPM(TrustedPlatform Module)20にストアされる。TPMは、TCPAの基本要素であり、RTS(Root of Trust for Storage:ルート・オブ・トラスト・フォー・ストレージ)及びRTR(Root of Trust for Reporting:ルート・オブ・トラスト・フォー・レポーティング)機能をもつチップである。OS14は、TPM20からの認証結果の報告を受ける。PC10において、システム・リセットが生じてから、OS14が活性化されるまでの期間を「ブート期間」と呼ぶことにする。図1において、BIOSブート・ブロック11、BIOS12、OSローダ13、OS14及びアプリケーション・ネットワーク23は、PC10の本来のCPU25により実行される。コンピュータ・ウィルス等の悪意のコードがPC10へ侵入した場合には、ユーザの意図に反して、各種データ(ファイルも含む。)の書き換え、削除等が行われてしまう。ファームウェア素子27は、例えば、ファームウェアとともにプロセッサを組み込まれた組込み型コントローラであり、例えばPC10の節電モード等の電源管理を行う組込み型コントローラである。
【0028】
CPU25は、ファームウェア素子27に書き込まれているファームウェアを読み出すことができないので、ファームウェア素子27のコード内容を読み出して検証することによりファームウェア素子27を認証するか否かを決めることは困難である。したがって、ファームウェア素子27は、BIOS12、OSローダ13及びOS14の認証方式とは別の方式で認証する必要がある。
【0029】
図2はPC10に装備される認証メカニズムの説明図である。認証手段としての認証主体30は、PC10のブート期間において認証済みプログラムとして作動するプログラムであり、図1のBIOSブート・ブロック11からOS14までの認証連鎖の中に適宜挿入されてもよいし、BIOSブート・ブロック11、BIOS12、OSローダ13及びOS14のどれかに兼務されてもよい。認証主体30は自分が認証を受けた後のブート期間中に、認証対象31へPWD(password:パスワード)送出要求(PWD Request)34を行う。認証対象31は、PWD送出要求34を受け付けると、それが受理可能な期間であるか否かを判定する(S36)。そして、S36の判定結果がNOであれば、PWD送出要求34を拒絶する処理を実施し(S40)、YESであれば、認証子としてのPWD39を送出してから(S37)、インターフェース(I/F)をロックする(S38)。PWD39の送出は、1回限りでなくてもよく、PWD送出要求34が受理可能な期間であれば、PWD送出要求34の受付の都度、PWD送出を実行してもよい。しかし、PWDの送出回数はセキュリティ上は少ないほど良い。認証主体30は、一方向性関数としてのハッシュ関数の演算アルゴリズムとしてのSHA1やMD5等を装備し、S43において、それらを使って、認証手段31より送られて来たPWD39に対するハッシュ関数値を演算する。認証主体30は、また、認証対象31のパスワードに対するハッシュ関数値を、予め認証対象31に対応付けて保持しており、S44ではこの保持中のハッシュ関数値を呼び出し、S45では、S43における演算値とS44で呼び出した保持中のハッシュ関数値とを対比する。両者が一致すれば、認証対象31は真正なものとして認証され、不一致であれば、認証対象31は不正なものとして認証を拒否される。対比結果はS46において所定のメモリに記録される。認証対象31が認証されなかったときは、(a)認証対象31を強制的にパワー・オフ(電源切)にして、認証対象31を作動させなくしたり、(b)認証対象31の認証が拒否されたことをPC10のディスプレイに表示して、認証拒否に対する対応はユーザに一任させたりしてよい。
【0030】
図3は認証対象31に装備され認証対象31のPWD(パスワード)の出力を制御するメカニズムの構成図である。認証対象31は、例えば組込み型コントローラから成り、該組込み型コントローラは、ハードウェアから成るロック回路(Lock Logic)51を装備する。図3における破線枠50内の構成は、ハードウェアから成り、ファームウェア素子への実装も可能である。PC10のパワー・オン(電源入)やOSの再起動に伴い、システム・リセット信号が生成され、該システム・リセット信号はシステム・リセット検出器(System Reset Detection Logic)53により検出される。システム・リセット検出器53の出力は負論理であり、システム・リセット検出器53によるリセット信号の検出に伴い、ロック回路51のAND回路58の出力は”0”となり、フリップ・フロップ回路59はリセットされ、選択器(selecter)60は、0側入力のPWDをデータ出力器(Data Output Logic)55へ出力する。典型的には、選択器60の0側入力端及び1側入力端には、それぞれPWD及びエラー指示が常時待機状態になっている。認証対象31は、PWDの種(seed)を保持して、決定論的な論理により該種からPWDを生成して、選択器60の0側入力へ必要時に供給することもできる。システム・リセット検出器53の出力は、システム・リセット信号の消失後、直ちに、”1”に復帰するが、フリップ・フロップ回路59の出力としての”0”がOR回路61を介してAND回路58の他方へ入力されているため、フリップ・フロップ回路59はリセット状態を維持し、選択器60はPWDを出力し続ける。一方、コマンド検出器(Command Decode Logic)54は外部からのコマンドをデコードするものであり、コマンド検出器54のデコードしたコマンドは制御シーケンス発生器56へ送られる。制御シーケンス発生器56の出力としてのチェック完(Check Done)信号は正論理である。コマンド検出器54へ入力されるコマンドの中には、(a)PWDのRead(読出し)とLock(ロック)とを兼ねる”Read PWD”コマンド、及び(b)”Read PWD”と”Lock”とのコマンドが別々である場合がある。(a)では、コマンド検出器54が”Read PWD”を受け付けると、制御シーケンス発生器56は、データ出力器55に対し出力許可を与え、PWDの出力終了後は、データ出力器55に対し出力許可を取り消す。そして、制御シーケンス発生器56は、”Check Done”信号を活性化させ、これにより、フリップ・フロップ回路59はセット状態となり、以後、選択器60の出力はエラー指示側に固定される。(b)の場合では、コマンド検出器54が”Read PWD”のコマンドを受け付けると、制御シーケンス発生器56は、データ出力器55に対し出力許可を与え、出力終了後は、データ出力器55に対する出力許可を取り消す。また、コマンド検出器54が”Lock”を受け付けると、制御シーケンス発生器56は”Check Done”信号を活性化させ、以後、選択器60の出力はエラー指示側に固定する。こうして、データ出力器55からのPWDの出力は、システム・リセット信号発生から1回目のPWD送出までロック信号の受理までの期間に限定される。
【0031】
図4は組込み型コントローラ68の認証システムにおいて各種信号がPC10のハードウェア回路をどのように流れているかを示す図である。組込み型コントローラ68は図2の認証対象31の一例である。CPU25は、メモリーI/O制御器65を介して各種メモリ装置としてのTPM20、メイン・メモリー66、他の周辺機器67、組込み型コントローラ(Embedded controller)68、及びROM69へ接続されている。ROM69は、改ざんが不可能なコード(書き換えられないコード)としての耐改ざんコード(Tamper proof Code)74、改ざんが不可能なデータ(書き換えられないデータ)としての耐改ざんデータ(Tamper proof Data)75、改ざん検出可能コード/データ(Tamper evident Code/Data)76、及びその他(Others)77を含み、耐改ざんコード74及び耐改ざんデータ75はコアRTM(Core RTM)78を構成する。CPU25は、最初に、耐改ざんコード74から認証プログラムを読み出すとともに(D1)、耐改ざんデータ75から組込み型コントローラ68のパスワードに対するハッシュ関数値を読み出す(D2)。次に、CPU25は、組込み型コントローラ68から組込み型コントローラ68のパスワードを受け付け(D3)、この受け付けたパスワードに対するハッシュ関数値を演算し、ハッシュ関数値とD2において読み出したハッシュ関数値とを対比する。そして、両者が一致していれば、組込み型コントローラ68は真正のものであるとして、組込み型コントローラ68を認証し、両者が不一致であれば、組込み型コントローラ68は不正であるとして、組込み型コントローラ68の認証を拒否する。CPU25は、組込み型コントローラ68を認証した場合は、組込み型コントローラ68へロックの指示を送出する(D4)。CPU25は、また、組込み型コントローラ68についての認証結果をTPM20に記録する(D5)。E1,2は、D1,D2におけるコード及びデータが、その改ざんが行われていないことを確認されてから、使用されることを意味する。
【0032】
図5は認証システムの機能ブロック図である。各ブロックは、所定プログラムを実装し、それに対応の機能を実現する手段となっている。認証子受付期間検出手段96は、認証システムにおける認証子受付期間を検出する。認証子受付期間は、例えば、システム・リセット信号が生じた時刻からOSが活性化される(activate:OSが読み込まれて、作動可能状態になること。)までの期間、すなわちブート期間である。PC10のブート期間を検出するブート期間検出手段は認証子受付期間検出手段96の具体的態様の1つである。プログラム実行手段97は、CPU25(図1)からは読出し困難な制御コードを実装している。プログラム実行手段97の具体的態様は例えばファームウェア素子及び組込み型コントローラである。なお、組込み型コントローラにはプロセッサが組込まれているおり、ファームウェア素子には、プロセッサが必ずしも組み込まれていない。プログラム実行手段97は、認証子受付期間検出手段96からの入力情報に基づいて認証子受付期間を認知する。プログラム実行手段97は、認証子受付期間に限定して認証手段98へパスワードを例えば1回だけ送る。認証手段98は、プログラム実行手段97へパスワード送出要求を発行して、プログラム実行手段97から送られて来たパスワードに対するハッシュ関数値を演算する。そして、その演算値とプログラム実行手段97についてのハッシュ関数値として予め保持しているデータとを対比し、両者が一致するならば、プログラム実行手段97を認証し、不一致であれば、プログラム実行手段97の認証を拒絶する。認証手段98の具体例としては、図1のBIOSブート・ブロック11及びBIOS12等があり、BIOSブート・ブロック11及びBIOS12のコードの中に、プログラム実行手段97の認証用のコードが挿入されてもよい。ハッシュ関数値の演算はプロセッサの負担を大幅に増大させるが、この認証システムでは、プログラム実行手段97はハッシュ関数値の演算処理を免れる。また、認証手段98が保持する一切のデータはコンピュータ・ウィルスやコンピュータ・ワーム等の認証手段98の外部の悪意のコードからのアクセスにより読まれる可能性があるが、認証手段98は、プログラム実行手段97のパスワードそのものは保持しておらず、プログラム実行手段97のパスワードに対するハッシュ関数値を保持しているので、悪意のコードが該ハッシュ関数値の読出しに成功しても、その基になっているパスワードは入手できないので、悪意のコードが、認証子受付期間検出手段96に成り済まして認証を受けることが防止される。ブート期間等の認証子受付期間は、認証されたプログラム以外は、CPU25上で作動できず、また、プログラム実行手段97のパスワードの送出は認証子受付期間に限られるので、CPU25上で作動するかもしれない悪意のコードがプログラム実行手段97のパスワードを読み出すことが防止される。
【0033】
図6は認証システムを実装する電気機器80のブロック図である。認証システムを実装する電気機器80の例として、PC10以外に、産業用ロボット、自動販売機、ATM(Automated−Teller Machine:現金自動預け入れ払い機)、複写機、及びゲーム機等が挙げられる。各コンポーネントは、所定のプログラムを実装して、該プログラムに対応する機能を実現する手段であったり、電気回路等のハードウェアであったりする。統括制御コンポーネント81は、例えばOS等の統括制御シーケンスを実現するコンポーネントであってもよい。電気機器80が複数個のプロセッサ及び/又はプログラムを装備し、これら複数個のプロセッサ及び/又はプログラムについて階層化が行われている場合、上位の階層のプロセッサ及び/又はプログラムはそれより下位の複数個のプロセッサ及び/又はプログラムを統括することになる。統括制御コンポーネント81は、電気機器80の最高位の階層のコンポーネントでなくてもよいが、被統括制御コンポーネント群85に含まれる全部のプロセッサ及び/又はプログラムに対してはそれらより上位の階層に属しているものでなくてはならない。統括制御コンポーネント81は、例えばOSから成る統括制御シーケンス82を備える。被統括制御コンポーネント群85は、認証主体コンポーネント88、認証対象コンポーネント89、及び協働コンポーネント91を含む。認証主体コンポーネント88は、認証手段98と同じく、例えばBIOS及びBIOSブート・ブロック等を装備する。認証対象コンポーネント89は、その外部からは読み取り不可能となっている制御コード90を装備する。制御コード90の具体例として、例えば、電気機器80の使用状態やユーザ指示に基づいて電気機器80の電力モードを制御するコードがある。電力モード制御の一例では、電気機器80がノート型PC10である場合に、バッテリの電力残量や装備機器の使用状態に基づいて電力モードをフル電力、スタンバイ、サスペンド、及びパワー・オフ等へ切替える。協働コンポーネント91は、制御コード90が電力モード制御のコードである場合は、例えば電力供給回路である。協働コンポーネント91は、認証対象コンポーネント89と協働して、電気機器80についての所定の制御を達成する。認証主体コンポーネント88は、認証対象コンポーネント89の制御コード90の少なくとも一部を読み出すことができず、したがって、認証主体コンポーネント88は、制御コード90から所定のコードを読み出して、それを検証することにより、認証対象コンポーネント89を認証するか否かを決定することはできない。
【0034】
認証主体コンポーネント88が認証対象コンポーネント89の認証を行う期間は、例えばブート期間であるが、これに限定されなくてもよい。認証対象コンポーネント89は、認証主体コンポーネント88からの認証子送出要求に対して認証子を送出する。認証主体コンポーネント88は、認証対象コンポーネント89からの送出認証子に基づいて認証対象コンポーネント89が真正であるか否かを判定し、真正とした場合には認証対象コンポーネント89を認証する。認証対象コンポーネント89は、認証主体コンポーネント88により認証されてから、協働コンポーネント91と協働して、電気機器80について所定の制御を達成する。
【0035】
【発明の効果】
本発明によれば、認証対象としてのプログラム実行手段は、認証子受付期間認証未済のプログラムは作動できないことを保証してある期間において、認証子を送出するようになっている。したがって、悪意のコードが、不正に認証子を読み出したり、不正に取得した認証子を使って、不正な認証を受けたり、及び認証主体に成り済ましたりすることを有効に防止できる。
【図面の簡単な説明】
【図1】PCへのTCPAの適用における完全性測定についての説明図である。
【図2】PCに装備される認証メカニズムの説明図である。
【図3】認証対象に装備され認証対象のパスワードの出力を制御するメカニズムの構成図である。
【図4】組込み型コントローラの認証システムにおいて各種信号がPCのハードウェア回路をどのように流れているかを示す図である。
【図5】認証システムの機能ブロック図である。
【図6】認証システムを実装する電気機器のブロック図である。
【符号の説明】
10 PC
11 BIOSブート・ブロック
12 BIOS
13 OSローダ
14 OS
25 CPU
27 ファームウェア素子
30 認証主体
31 認証対象
81 統括制御コンポーネント
85 被統括制御コンポーネント群
88 認証主体コンポーネント
89 認証対象コンポーネント
91 協働コンポーネント
96 認証子受付期間検出手段
97 プログラム実行手段
98 認証手段
Claims (21)
- 認証未済のプログラムは作動できないことを保証してある期間を認証子受付期間として検出する認証子受付期間検出手段、
所定のプログラムを実行するものでありかつ前記認証子受付期間において認証子送出の要求を受けたときに限り認証子を送出するプログラム実行手段、及び
前記プログラム実行手段から受け付けた認証子に基づいて一方向性関数値を演算しかつ該一方向性関数値と前記プログラム実行手段についての予め保持している保持値との対比に基づいて前記プログラム実行手段について認証すべきか否かを決定する認証手段、
を有していることを特徴とする認証システム。 - 前記プログラム実行手段の実行するプログラムのコードは、書換えられる可能性のあるもの及び/又は前記認証手段により読出し不能であるものであることを特徴とする請求項1記載の認証システム。
- 前記認証子受付期間は、システム・リセット時から前記認証システムのオペレーティング・システムが活性化するまでの期間であるブート期間内に規定されていることを特徴とする請求項1記載の認証システム。
- 前記ブート期間では、BIOSブート・ブロックは認証済みのものとして扱われ、該BIOSブート・ブロックを含む所定の複数個のプログラムについては各プログラムがそれより1個だけ先に認証されたプログラムから認証を受ける認証連鎖が設定され、前記認証手段は、前記認証連鎖に属するプログラムを実装して認証処理を実行するものであることを特徴とする請求項3記載の認証システム。
- 前記プログラム実行手段はハードウェアを装備し、該ハードウェアは、前記プログラム実行手段からの前記プログラム実行手段の認証子の送出を許容及び禁止する機能を装備し、さらに、該ハードウェアは、システム・リセット信号の検出開始時点より前記プログラム実行手段からの前記プログラム実行手段の認証子の送出を許容するようになっていることを特徴とする請求項3記載の認証システム。
- 前記ハードウェアは、外部からの所定のコマンド信号の入力に伴い前記プログラム実行手段からの認証子の送出を禁止又は認証子の送出に代わるエラー信号の送出を実行するようになっていることを特徴とする請求項5記載の認証システム。
- 前記プログラム実行手段はファームウェア素子であることを特徴とする請求項1記載の認証システム。
- 前記プログラム実行手段の認証子は、前記プログラム実行手段が実装するプログラムのバージョンごと、前記認証システムを装備する電気機器の機種ごと、及び/又は前記認証システムを装備する電気機器ごとに、相違していることを特徴とする請求項1記載の認証システム。
- ファームウェアを実装するファームウェア装置において、
認証子を送出する認証子送出部、
外部の認証未済のプログラムは作動できないことを保証してある期間としての認証子受付期間であるか否かを外部入力の所定の電気信号に基づいて検出する検出部、及び
前記認証子受付期間に限り前記認証子送出部から認証子の送出を許容する送出制御部、を有していることを特徴とするファームウェア装置。 - 前記送出制御部は、外部からの所定のコマンド信号の入力に伴い前記認証子送出部からの認証子の送出を禁止又は認証子の送出に代わるエラー信号の送出を実行するようになっていることを特徴とする請求項9記載のファームウェア装置。
- 前記送出制御部は、認証装置から認証された旨の通知を受けしだい、前記認証子送出部からの認証子の送出を禁止するものであることを特徴とする請求項9記載のファームウェア装置。
- 認証主体コンポーネントと、該認証主体コンポーネントにより認証されてから所定の協働用コンポーネントと協働する認証対象コンポーネントとを有している電気機器において、
前記認証対象コンポーネントは、少なくともその一部が前記認証対象コンポーネントの外部からのアクセスが不可能な制御コードを内蔵するものであり、
前記認証主体コンポーネントは、前記電気機器において認証未済のプログラムは作動できないことを保証してある期間に限り、前記認証対象コンポーネントへ認証子送出要求のコマンドを送出するようになっており、
前記認証対象コンポーネントは、前記認証主体コンポーネントからの認証子送出要求コマンドに応答して認証子を送出するようになっている
ことを特徴とする電気機器。 - 認証主体コンポーネントと、該認証主体コンポーネントにより認証されてから所定の協働用コンポーネントと協働する認証対象コンポーネントと、前記認証主体コンポーネント及び前記認証対象コンポーネントを含む複数個のコンポーネントを統括して制御する統括制御シーケンスを実装する統括制御コンポーネントとを有している電気機器において、
前記統括制御シーケンスは、前記電気機器の電源をオンするための信号に応答して活性化され、
前記認証主体コンポーネントによる前記認証対象コンポーネントの認証は、前記統括制御シーケンスが活性化される前に済まされることを特徴とする電気機器。 - 認証未済のプログラムは作動できないことを保証してある期間を認証子受付期間として検出する認証子受付期間検出ステップ、
所定のプログラムを実行するプログラム実行手段に対して、前記認証子受付期間において認証子送出の要求を受けたときに限り認証子を送出させる認証子送出ステップ、及び
認証手段に対して、前記プログラム実行手段から受け付けた認証子に基づいて一方向性関数値を演算させ、該一方向性関数値と前記プログラム実行手段についての予め保持している保持値との対比に基づいて前記プログラム実行手段について認証すべきか否かを決定させる認証決定ステップ
を有していることを特徴とする認証方法。 - 前記プログラム実行手段の実行するプログラムのコードは、書換えられる可能性のあるもの及び/又は前記認証手段により読出し不能であるものであることを特徴とする請求項14記載の認証方法。
- 前記認証子受付期間は、システム・リセット時から前記認証方法のオペレーティング・システムが活性化するまでの期間であるブート期間内に規定されていることを特徴とする請求項14記載の認証方法。
- 前記ブート期間では、BIOSブート・ブロックは認証済みのものとして扱われ、該BIOSブート・ブロックを含む所定の複数個のプログラムについては各プログラムがそれより1個だけ先に認証されたプログラムから認証を受ける認証連鎖が設定され、前記認証手段を、前記認証連鎖に属するプログラムを実装して認証処理を実行するものとして、前記認証決定ステップを実行することを特徴とする請求項16記載の認証方法。
- 前記認証子送出ステップの実行のために、前記プログラム実行手段にはハードウェアを装備させ、該ハードウェアには、前記プログラム実行手段からの前記プログラム実行手段の認証子の送出を許容及び禁止する機能を装備させ、さらに、該ハードウェアには、システム・リセット信号の検出開始時点より前記プログラム実行手段からの前記プログラム実行手段の認証子の送出を許容するように、させることを特徴とする請求項16記載の認証方法。
- 前記認証子送出ステップの実行のために、前記ハードウェアには、外部からの所定のコマンド信号の入力に伴い前記プログラム実行手段からの認証子の送出を禁止又は認証子の送出に代わるエラー信号の送出を実行するように、させることを特徴とする請求項18記載の認証方法。
- 前記プログラム実行手段をファームウェア素子とすることを特徴とする請求項14記載の認証方法。
- 前記プログラム実行手段の認証子を、前記プログラム実行手段が実装するプログラムのバージョンごと、前記認証方法を装備する電気機器の機種ごと、及び/又は前記認証方法を装備する電気機器ごとに、相違させることを特徴とする請求項14記載の認証方法。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002064368A JP3863447B2 (ja) | 2002-03-08 | 2002-03-08 | 認証システム、ファームウェア装置、電気機器、及び認証方法 |
US10/378,394 US7424611B2 (en) | 2002-03-08 | 2003-03-03 | Authentication system and method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002064368A JP3863447B2 (ja) | 2002-03-08 | 2002-03-08 | 認証システム、ファームウェア装置、電気機器、及び認証方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2003271254A JP2003271254A (ja) | 2003-09-26 |
JP3863447B2 true JP3863447B2 (ja) | 2006-12-27 |
Family
ID=29197198
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2002064368A Expired - Fee Related JP3863447B2 (ja) | 2002-03-08 | 2002-03-08 | 認証システム、ファームウェア装置、電気機器、及び認証方法 |
Country Status (2)
Country | Link |
---|---|
US (1) | US7424611B2 (ja) |
JP (1) | JP3863447B2 (ja) |
Families Citing this family (86)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8412377B2 (en) | 2000-01-24 | 2013-04-02 | Irobot Corporation | Obstacle following sensor scheme for a mobile robot |
US8788092B2 (en) | 2000-01-24 | 2014-07-22 | Irobot Corporation | Obstacle following sensor scheme for a mobile robot |
US6956348B2 (en) | 2004-01-28 | 2005-10-18 | Irobot Corporation | Debris sensor for cleaning apparatus |
US6690134B1 (en) | 2001-01-24 | 2004-02-10 | Irobot Corporation | Method and system for robot localization and confinement |
US7571511B2 (en) | 2002-01-03 | 2009-08-11 | Irobot Corporation | Autonomous floor-cleaning robot |
US7429843B2 (en) | 2001-06-12 | 2008-09-30 | Irobot Corporation | Method and system for multi-mode coverage for an autonomous robot |
US8396592B2 (en) | 2001-06-12 | 2013-03-12 | Irobot Corporation | Method and system for multi-mode coverage for an autonomous robot |
US9128486B2 (en) | 2002-01-24 | 2015-09-08 | Irobot Corporation | Navigational control system for a robotic device |
US7487365B2 (en) * | 2002-04-17 | 2009-02-03 | Microsoft Corporation | Saving and retrieving data based on symmetric key encryption |
US7890771B2 (en) | 2002-04-17 | 2011-02-15 | Microsoft Corporation | Saving and retrieving data based on public key encryption |
DE60322366D1 (de) * | 2002-04-18 | 2008-09-04 | Advanced Micro Devices Inc | Rechnersystem mit einem für einen sicheren ausführungsmodus geeigneten cpu und einem sicherheitsdienst-prozessor die über einen gesicherten kommunikationsweg miteinander verbunden sind |
US8386081B2 (en) | 2002-09-13 | 2013-02-26 | Irobot Corporation | Navigational control system for a robotic device |
US8428778B2 (en) | 2002-09-13 | 2013-04-23 | Irobot Corporation | Navigational control system for a robotic device |
US8100323B1 (en) | 2002-12-26 | 2012-01-24 | Diebold Self-Service Systems Division Of Diebold, Incorporated | Apparatus and method for verifying components of an ATM |
JP4891521B2 (ja) * | 2003-03-28 | 2012-03-07 | 三洋電機株式会社 | データ入出力方法、およびその方法を利用可能な記憶装置およびホスト装置 |
US20050132229A1 (en) * | 2003-11-12 | 2005-06-16 | Nokia Corporation | Virtual private network based on root-trust module computing platforms |
US7332890B2 (en) | 2004-01-21 | 2008-02-19 | Irobot Corporation | Autonomous robot auto-docking and energy management systems and methods |
US7720554B2 (en) | 2004-03-29 | 2010-05-18 | Evolution Robotics, Inc. | Methods and apparatus for position estimation using reflected light sources |
US20050221766A1 (en) * | 2004-03-31 | 2005-10-06 | Brizek John P | Method and apparatus to perform dynamic attestation |
DE102005005436A1 (de) * | 2004-04-14 | 2005-11-24 | Atmel Germany Gmbh | Sicherheitseinrichtung für einen Transponder |
EP1776624A1 (en) | 2004-06-24 | 2007-04-25 | iRobot Corporation | Programming and diagnostic tool for a mobile robot |
US7694121B2 (en) * | 2004-06-30 | 2010-04-06 | Microsoft Corporation | System and method for protected operating system boot using state validation |
US7706917B1 (en) | 2004-07-07 | 2010-04-27 | Irobot Corporation | Celestial navigation system for an autonomous robot |
US8972052B2 (en) | 2004-07-07 | 2015-03-03 | Irobot Corporation | Celestial navigation system for an autonomous vehicle |
US7484247B2 (en) * | 2004-08-07 | 2009-01-27 | Allen F Rozman | System and method for protecting a computer system from malicious software |
US7568225B2 (en) | 2004-09-08 | 2009-07-28 | Hewlett-Packard Development Company, L.P. | System and method for remote security enablement |
US7711942B2 (en) * | 2004-09-23 | 2010-05-04 | Hewlett-Packard Development Company, L.P. | Computer security system and method |
US20060129824A1 (en) * | 2004-12-15 | 2006-06-15 | Hoff James P | Systems, methods, and media for accessing TPM keys |
US8392021B2 (en) | 2005-02-18 | 2013-03-05 | Irobot Corporation | Autonomous surface cleaning robot for wet cleaning |
US7620476B2 (en) | 2005-02-18 | 2009-11-17 | Irobot Corporation | Autonomous surface cleaning robot for dry cleaning |
ATE468062T1 (de) | 2005-02-18 | 2010-06-15 | Irobot Corp | Autonomer oberflächenreinigungsroboter für nass- und trockenreinigung |
CN100358303C (zh) * | 2005-02-28 | 2007-12-26 | 联想(北京)有限公司 | 一种对被管理设备进行监控的方法 |
US8930023B2 (en) | 2009-11-06 | 2015-01-06 | Irobot Corporation | Localization by learning of wave-signal distributions |
US8972743B2 (en) * | 2005-05-16 | 2015-03-03 | Hewlett-Packard Development Company, L.P. | Computer security system and method |
US8554686B2 (en) * | 2005-06-30 | 2013-10-08 | Advanced Micro Devices, Inc. | Anti-hack protection to restrict installation of operating systems and other software |
ATE499658T1 (de) * | 2005-08-03 | 2011-03-15 | St Ericsson Sa | Sicheres endgerät, routine und verfahren zum schützen eines geheimen schlüssels |
JP4754299B2 (ja) * | 2005-08-18 | 2011-08-24 | 株式会社エヌ・ティ・ティ・データ | 情報処理装置 |
US8201240B2 (en) | 2005-09-16 | 2012-06-12 | Nokia Corporation | Simple scalable and configurable secure boot for trusted mobile phones |
KR100746012B1 (ko) * | 2005-11-07 | 2007-08-06 | 삼성전자주식회사 | 코드 이미지를 안전하게 갱신하고 부팅하는 방법 및 장치 |
EP2270619B1 (en) | 2005-12-02 | 2013-05-08 | iRobot Corporation | Modular robot |
EP2816434A3 (en) | 2005-12-02 | 2015-01-28 | iRobot Corporation | Autonomous coverage robot |
EP2120122B1 (en) | 2005-12-02 | 2013-10-30 | iRobot Corporation | Coverage robot mobility |
US9144360B2 (en) | 2005-12-02 | 2015-09-29 | Irobot Corporation | Autonomous coverage robot navigation system |
EP2544065B1 (en) | 2005-12-02 | 2017-02-08 | iRobot Corporation | Robot system |
US7845005B2 (en) * | 2006-02-07 | 2010-11-30 | International Business Machines Corporation | Method for preventing malicious software installation on an internet-connected computer |
US8566606B2 (en) | 2006-04-21 | 2013-10-22 | Interdigital Technology Corporation | Apparatus and method for performing trusted computing integrity measurement reporting |
EP3031377B1 (en) | 2006-05-19 | 2018-08-01 | iRobot Corporation | Removing debris from cleaning robots |
US8417383B2 (en) | 2006-05-31 | 2013-04-09 | Irobot Corporation | Detecting robot stasis |
US8082551B2 (en) * | 2006-10-30 | 2011-12-20 | Hewlett-Packard Development Company, L.P. | System and method for sharing a trusted platform module |
JP5001123B2 (ja) * | 2006-12-07 | 2012-08-15 | パナソニック株式会社 | 記録デバイス、集積回路、アクセス制御方法、プログラム記録媒体 |
JP4998019B2 (ja) | 2007-03-06 | 2012-08-15 | 富士通株式会社 | 状態表示制御装置 |
KR101168481B1 (ko) | 2007-05-09 | 2012-07-26 | 아이로보트 코퍼레이션 | 자동 커버리지 로봇 |
US20080301466A1 (en) * | 2007-05-30 | 2008-12-04 | Mediatek Inc. | Methods for program verification and apparatuses using the same |
US7941863B1 (en) * | 2007-09-27 | 2011-05-10 | Symantec Corporation | Detecting and preventing external modification of passwords |
JP5085287B2 (ja) * | 2007-11-21 | 2012-11-28 | 株式会社リコー | 情報処理装置、正当性検証方法および正当性検証プログラム |
US20090193261A1 (en) * | 2008-01-25 | 2009-07-30 | Mediatek Inc. | Apparatus and method for authenticating a flash program |
US8261093B1 (en) * | 2008-03-27 | 2012-09-04 | Mcafee, Inc. | System, method, and computer program product for disabling a communication channel during authentication |
NO328200B1 (no) * | 2008-04-04 | 2010-01-04 | Safe Innovations As | Vibrasjonslogging i datamaskiner |
WO2009158538A1 (en) * | 2008-06-27 | 2009-12-30 | Wms Gaming, Inc. | Authenticating components in wagering game systems |
EP2356763A1 (en) * | 2008-12-08 | 2011-08-17 | BAE Systems Information and Electronic Systems Integration Inc. | Method for collaborative discrimation between authentic and spurious signals in a wireless cognitive network |
US9805196B2 (en) * | 2009-02-27 | 2017-10-31 | Microsoft Technology Licensing, Llc | Trusted entity based anti-cheating mechanism |
JP5335634B2 (ja) * | 2009-09-29 | 2013-11-06 | レノボ・シンガポール・プライベート・リミテッド | システム管理モードの特権レベルを保護するコンピュータ |
US8799754B2 (en) * | 2009-12-07 | 2014-08-05 | At&T Intellectual Property I, L.P. | Verification of data stream computations using third-party-supplied annotations |
US8800107B2 (en) | 2010-02-16 | 2014-08-12 | Irobot Corporation | Vacuum brush |
EP2418828A1 (en) * | 2010-08-09 | 2012-02-15 | Eltam Ein Hashofet | Process and system for loading firmware |
US8793350B2 (en) * | 2011-03-09 | 2014-07-29 | Asset Science Llc | Systems and methods for modifying content of mobile communication devices |
US11471020B2 (en) | 2011-04-29 | 2022-10-18 | Irobot Corporation | Robotic vacuum cleaning system |
CN107019467B (zh) | 2011-04-29 | 2019-08-23 | 艾罗伯特公司 | 机器人真空吸尘器 |
US9992024B2 (en) * | 2012-01-25 | 2018-06-05 | Fujitsu Limited | Establishing a chain of trust within a virtual machine |
US8627097B2 (en) | 2012-03-27 | 2014-01-07 | Igt | System and method enabling parallel processing of hash functions using authentication checkpoint hashes |
US9317689B2 (en) | 2012-06-15 | 2016-04-19 | Visa International Service Association | Method and apparatus for secure application execution |
US9141802B2 (en) * | 2012-09-25 | 2015-09-22 | Intel Corporation | Computing device boot software authentication |
WO2014175861A1 (en) | 2013-04-23 | 2014-10-30 | Hewlett-Packard Development Company, L.P. | Recovering from compromised system boot code |
US9990255B2 (en) | 2013-04-23 | 2018-06-05 | Hewlett-Packard Development Company, L.P. | Repairing compromised system data in a non-volatile memory |
US10733288B2 (en) * | 2013-04-23 | 2020-08-04 | Hewlett-Packard Development Company, L.P. | Verifying controller code and system boot code |
JP6421405B2 (ja) * | 2013-06-07 | 2018-11-14 | 株式会社リコー | 情報処理システム、情報処理装置、セキュリティ確保方法及びプログラム |
JP6492944B2 (ja) * | 2015-05-07 | 2019-04-03 | 株式会社バッファロー | 情報処理システム、情報処理装置、及びファームウェアプログラム |
CN106452783B (zh) * | 2016-09-26 | 2021-02-09 | 上海兆芯集成电路有限公司 | 计算机系统及安全执行的方法 |
US10512384B2 (en) | 2016-12-15 | 2019-12-24 | Irobot Corporation | Cleaning roller for cleaning robots |
US10595624B2 (en) | 2017-07-25 | 2020-03-24 | Irobot Corporation | Cleaning roller for cleaning robots |
US11237877B2 (en) * | 2017-12-27 | 2022-02-01 | Intel Corporation | Robot swarm propagation using virtual partitions |
DE102018103152A1 (de) * | 2018-02-13 | 2019-08-14 | Infineon Technologies Ag | Vorrichtung und verfahren zum überwachen einer digitalen steuereinheit hinsichtlich funktionaler sicherheit sowie steuergerät |
US10936722B2 (en) * | 2018-04-18 | 2021-03-02 | Nuvoton Technology Corporation | Binding of TPM and root device |
WO2020159533A1 (en) | 2019-02-01 | 2020-08-06 | Hewlett-Packard Development Company, L.P. | Security credential derivation |
US11520662B2 (en) | 2019-02-11 | 2022-12-06 | Hewlett-Packard Development Company, L.P. | Recovery from corruption |
US11109727B2 (en) | 2019-02-28 | 2021-09-07 | Irobot Corporation | Cleaning rollers for cleaning robots |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6401208B2 (en) * | 1998-07-17 | 2002-06-04 | Intel Corporation | Method for BIOS authentication prior to BIOS execution |
US6920553B1 (en) * | 2000-04-28 | 2005-07-19 | Intel Corporation | Method and apparatus for reading initial boot instructions from a bootable device connected to the USB port of a computer system |
US7490250B2 (en) * | 2001-10-26 | 2009-02-10 | Lenovo (Singapore) Pte Ltd. | Method and system for detecting a tamper event in a trusted computing environment |
-
2002
- 2002-03-08 JP JP2002064368A patent/JP3863447B2/ja not_active Expired - Fee Related
-
2003
- 2003-03-03 US US10/378,394 patent/US7424611B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
US20030221114A1 (en) | 2003-11-27 |
JP2003271254A (ja) | 2003-09-26 |
US7424611B2 (en) | 2008-09-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP3863447B2 (ja) | 認証システム、ファームウェア装置、電気機器、及び認証方法 | |
CN106855814B (zh) | 管理基本输入输出系统设定的系统和方法 | |
US7725703B2 (en) | Systems and methods for securely booting a computer with a trusted processing module | |
Garriss et al. | Trustworthy and personalized computing on public kiosks | |
US9424431B2 (en) | Protecting operating system configuration values using a policy identifying operating system configuration settings | |
CN103080904B (zh) | 提供多阶段锁步完整性报告机构 | |
JP3689431B2 (ja) | 暗号化キーの安全処理のための方法及び装置 | |
US7921286B2 (en) | Computer initialization for secure kernel | |
JP4064914B2 (ja) | 情報処理装置、サーバ装置、情報処理装置のための方法、サーバ装置のための方法および装置実行可能なプログラム | |
KR101768583B1 (ko) | 보안 배터리 인증 | |
US20050021968A1 (en) | Method for performing a trusted firmware/bios update | |
EP2727040B1 (en) | A secure hosted execution architecture | |
US20110093693A1 (en) | Binding a cryptographic module to a platform | |
US11106798B2 (en) | Automatically replacing versions of a key database for secure boots | |
JP6391439B2 (ja) | 情報処理装置、サーバ装置、情報処理システム、制御方法及びコンピュータプログラム | |
EP2005356A1 (en) | Authentication of a request to alter at least one of a bios and a setting associated with the bios | |
CN113065140B (zh) | 一种芯片化控制保护装置内嵌安全防护系统及方法 | |
CN113515779A (zh) | 文件的完整性校验方法、装置、设备及存储介质 | |
US20240037216A1 (en) | Systems And Methods For Creating Trustworthy Orchestration Instructions Within A Containerized Computing Environment For Validation Within An Alternate Computing Environment | |
WO2023200487A1 (en) | Firmware controlled secrets | |
CN117313101A (zh) | 一种计算机安全可信启动的处理方法、装置及存储介质 | |
Du et al. | Trusted firmware services based on TPM | |
Akram et al. | Trusted Platform Module: State-of-the-Art to Future Challenges |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
RD14 | Notification of resignation of power of sub attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7434 Effective date: 20050912 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A821 Effective date: 20051025 |
|
RD12 | Notification of acceptance of power of sub attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7432 Effective date: 20051025 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A821 Effective date: 20051026 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20060614 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20060718 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20060824 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20060926 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20060928 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20091006 Year of fee payment: 3 |
|
S111 | Request for change of ownership or part of ownership |
Free format text: JAPANESE INTERMEDIATE CODE: R313113 |
|
S202 | Request for registration of non-exclusive licence |
Free format text: JAPANESE INTERMEDIATE CODE: R315201 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20091006 Year of fee payment: 3 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20091006 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20091006 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20101006 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20101006 Year of fee payment: 4 |
|
LAPS | Cancellation because of no payment of annual fees |