JP3863447B2 - 認証システム、ファームウェア装置、電気機器、及び認証方法 - Google Patents

認証システム、ファームウェア装置、電気機器、及び認証方法 Download PDF

Info

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
Application number
JP2002064368A
Other languages
English (en)
Other versions
JP2003271254A (ja
Inventor
明 日野
栄太郎 笠松
章義 田中
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by International Business Machines Corp filed Critical International Business Machines Corp
Priority to JP2002064368A priority Critical patent/JP3863447B2/ja
Priority to US10/378,394 priority patent/US7424611B2/en
Publication of JP2003271254A publication Critical patent/JP2003271254A/ja
Application granted granted Critical
Publication of JP3863447B2 publication Critical patent/JP3863447B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/31User authentication
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing 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/2103Challenge-response
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing 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/2137Time 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

【0001】
【発明の属する技術分野】
本発明は、パーソナル・コンピュータ(以下、適宜、「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. 認証未済のプログラムは作動できないことを保証してある期間を認証子受付期間として検出する認証子受付期間検出手段、
    所定のプログラムを実行するものでありかつ前記認証子受付期間において認証子送出の要求を受けたときに限り認証子を送出するプログラム実行手段、及び
    前記プログラム実行手段から受け付けた認証子に基づいて一方向性関数値を演算しかつ該一方向性関数値と前記プログラム実行手段についての予め保持している保持値との対比に基づいて前記プログラム実行手段について認証すべきか否かを決定する認証手段、
    を有していることを特徴とする認証システム。
  2. 前記プログラム実行手段の実行するプログラムのコードは、書換えられる可能性のあるもの及び/又は前記認証手段により読出し不能であるものであることを特徴とする請求項1記載の認証システム。
  3. 前記認証子受付期間は、システム・リセット時から前記認証システムのオペレーティング・システムが活性化するまでの期間であるブート期間内に規定されていることを特徴とする請求項1記載の認証システム。
  4. 前記ブート期間では、BIOSブート・ブロックは認証済みのものとして扱われ、該BIOSブート・ブロックを含む所定の複数個のプログラムについては各プログラムがそれより1個だけ先に認証されたプログラムから認証を受ける認証連鎖が設定され、前記認証手段は、前記認証連鎖に属するプログラムを実装して認証処理を実行するものであることを特徴とする請求項3記載の認証システム。
  5. 前記プログラム実行手段はハードウェアを装備し、該ハードウェアは、前記プログラム実行手段からの前記プログラム実行手段の認証子の送出を許容及び禁止する機能を装備し、さらに、該ハードウェアは、システム・リセット信号の検出開始時点より前記プログラム実行手段からの前記プログラム実行手段の認証子の送出を許容するようになっていることを特徴とする請求項3記載の認証システム。
  6. 前記ハードウェアは、外部からの所定のコマンド信号の入力に伴い前記プログラム実行手段からの認証子の送出を禁止又は認証子の送出に代わるエラー信号の送出を実行するようになっていることを特徴とする請求項5記載の認証システム。
  7. 前記プログラム実行手段はファームウェア素子であることを特徴とする請求項1記載の認証システム。
  8. 前記プログラム実行手段の認証子は、前記プログラム実行手段が実装するプログラムのバージョンごと、前記認証システムを装備する電気機器の機種ごと、及び/又は前記認証システムを装備する電気機器ごとに、相違していることを特徴とする請求項1記載の認証システム。
  9. ファームウェアを実装するファームウェア装置において、
    認証子を送出する認証子送出部、
    外部の認証未済のプログラムは作動できないことを保証してある期間としての認証子受付期間であるか否かを外部入力の所定の電気信号に基づいて検出する検出部、及び
    前記認証子受付期間に限り前記認証子送出部から認証子の送出を許容する送出制御部、を有していることを特徴とするファームウェア装置。
  10. 前記送出制御部は、外部からの所定のコマンド信号の入力に伴い前記認証子送出部からの認証子の送出を禁止又は認証子の送出に代わるエラー信号の送出を実行するようになっていることを特徴とする請求項9記載のファームウェア装置。
  11. 前記送出制御部は、認証装置から認証された旨の通知を受けしだい、前記認証子送出部からの認証子の送出を禁止するものであることを特徴とする請求項9記載のファームウェア装置。
  12. 認証主体コンポーネントと、該認証主体コンポーネントにより認証されてから所定の協働用コンポーネントと協働する認証対象コンポーネントとを有している電気機器において、
    前記認証対象コンポーネントは、少なくともその一部が前記認証対象コンポーネントの外部からのアクセス不可能な制御コードを内蔵するものであり、
    前記認証主体コンポーネントは、前記電気機器において認証未済のプログラムは作動できないことを保証してある期間に限り、前記認証対象コンポーネントへ認証子送出要求のコマンドを送出するようになっており、
    前記認証対象コンポーネントは、前記認証主体コンポーネントからの認証子送出要求コマンドに応答して認証子を送出するようになっている
    ことを特徴とする電気機器。
  13. 認証主体コンポーネントと、該認証主体コンポーネントにより認証されてから所定の協働用コンポーネントと協働する認証対象コンポーネントと、前記認証主体コンポーネント及び前記認証対象コンポーネントを含む複数個のコンポーネントを統括して制御する統括制御シーケンスを実装する統括制御コンポーネントとを有している電気機器において、
    前記統括制御シーケンスは、前記電気機器の電源をオンするための信号に応答して活性化され、
    前記認証主体コンポーネントによる前記認証対象コンポーネントの認証は、前記統括制御シーケンスが活性化される前に済まされることを特徴とする電気機器。
  14. 認証未済のプログラムは作動できないことを保証してある期間を認証子受付期間として検出する認証子受付期間検出ステップ、
    所定のプログラムを実行するプログラム実行手段に対して、前記認証子受付期間において認証子送出の要求を受けたときに限り認証子を送出させる認証子送出ステップ、及び
    認証手段に対して、前記プログラム実行手段から受け付けた認証子に基づいて一方向性関数値を演算させ、該一方向性関数値と前記プログラム実行手段についての予め保持している保持値との対比に基づいて前記プログラム実行手段について認証すべきか否かを決定させる認証決定ステップ
    を有していることを特徴とする認証方法。
  15. 前記プログラム実行手段の実行するプログラムのコードは、書換えられる可能性のあるもの及び/又は前記認証手段により読出し不能であるものであることを特徴とする請求項14記載の認証方法。
  16. 前記認証子受付期間は、システム・リセット時から前記認証方法のオペレーティング・システムが活性化するまでの期間であるブート期間内に規定されていることを特徴とする請求項14記載の認証方法。
  17. 前記ブート期間では、BIOSブート・ブロックは認証済みのものとして扱われ、該BIOSブート・ブロックを含む所定の複数個のプログラムについては各プログラムがそれより1個だけ先に認証されたプログラムから認証を受ける認証連鎖が設定され、前記認証手段を、前記認証連鎖に属するプログラムを実装して認証処理を実行するものとして、前記認証決定ステップを実行することを特徴とする請求項16記載の認証方法。
  18. 前記認証子送出ステップの実行のために、前記プログラム実行手段にはハードウェアを装備させ、該ハードウェアには、前記プログラム実行手段からの前記プログラム実行手段の認証子の送出を許容及び禁止する機能を装備させ、さらに、該ハードウェアには、システム・リセット信号の検出開始時点より前記プログラム実行手段からの前記プログラム実行手段の認証子の送出を許容するように、させることを特徴とする請求項16記載の認証方法。
  19. 前記認証子送出ステップの実行のために、前記ハードウェアには、外部からの所定のコマンド信号の入力に伴い前記プログラム実行手段からの認証子の送出を禁止又は認証子の送出に代わるエラー信号の送出を実行するように、させることを特徴とする請求項18記載の認証方法。
  20. 前記プログラム実行手段をファームウェア素子とすることを特徴とする請求項14記載の認証方法。
  21. 前記プログラム実行手段の認証子を、前記プログラム実行手段が実装するプログラムのバージョンごと、前記認証方法を装備する電気機器の機種ごと、及び/又は前記認証方法を装備する電気機器ごとに、相違させることを特徴とする請求項14記載の認証方法。
JP2002064368A 2002-03-08 2002-03-08 認証システム、ファームウェア装置、電気機器、及び認証方法 Expired - Fee Related JP3863447B2 (ja)

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)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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

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