JPWO2009044533A1 - セキュアブート端末、セキュアブート方法、セキュアブートプログラム、記録媒体及び集積回路 - Google Patents
セキュアブート端末、セキュアブート方法、セキュアブートプログラム、記録媒体及び集積回路 Download PDFInfo
- Publication number
- JPWO2009044533A1 JPWO2009044533A1 JP2009535966A JP2009535966A JPWO2009044533A1 JP WO2009044533 A1 JPWO2009044533 A1 JP WO2009044533A1 JP 2009535966 A JP2009535966 A JP 2009535966A JP 2009535966 A JP2009535966 A JP 2009535966A JP WO2009044533 A1 JPWO2009044533 A1 JP WO2009044533A1
- Authority
- JP
- Japan
- Prior art keywords
- software module
- certificate
- software
- value
- update
- 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.)
- Granted
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/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/57—Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
- G06F21/575—Secure boot
Landscapes
- Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
- Storage Device Security (AREA)
Abstract
Description
図17において、本来は、それぞれのモジュールにおいて検証と起動とを行ない、BIOSの検証、BIOSの起動、OSの検証、OSの起動、通信モジュールの検証、通信モジュールの起動といった図17に示す番号の順番で検証と起動を行うことでブート処理が行なわれる。
101 CPU
102 セキュリティデバイス
103 代替構成情報累積部
104 更新手段
105 ブート制御手段
106 ソフトウェアモジュール格納手段
107 証明書格納手段
108 通知手段
以下本発明の実施の形態について、図面を参照しながら説明する。
本発明の第1の実施形態における端末100の構成について説明する。
セキュアブート処理を完了していないと判定した場合には、ステップS501に戻り、次に実行するソフトウェアモジュールと証明書に関してステップS501からステップS507までの処理を繰り返す。
ステップS611では、セキュアブート制御部112が、さらに、更新前の旧証明書の署名の検証を行い、有効な電子署名が施された証明書であることを検証する(ステップS611)。署名検証の結果、電子署名が有効であった場合には、ステップS612へ進む。
(実施の形態2)
図7を用いて本発明の実施の形態2について説明する。
(実施の形態3)
本発明の実施の形態3では、更新時セキュアブート処理を行って起動した場合の端末100の動作モードを、更新時セキュアブート処理の際に行った照合処理に結果に応じて一部の機能を制限するなどの制御できるように構成したものについて説明する。
(実施の形態4)
実施の形態1では、更新処理の際、旧証明書を消去せずに保持しておく必要があったが、
本発明の実施の形態4では、それを不要とするように構成したものについて説明する。
(実施の形態5)
図11、13を用いて本発明の実施の形態5について説明する。
(実施の形態6)
本発明の実施の形態6では、古いソフトウェアモジュールが実行されることを、より確実に防止し、端末100のソフトウェア構成が常に最新のソフトウェア構成となるように構成したものについて説明する。
(実施の形態7)
本発明の実施の形態7では、上述してきた実施の形態1から実施の形態6をTrusted Computing Group(TCG)で規定している仕様に基づいて実現してもよい。
(その他変形例)
なお、本発明を上記実施の形態に基づいて説明してきたが、本発明は、上記の実施の形態に限定されないのはもちろんである。以下のような場合も本発明に含まれる。
また、セキュアなコンピュータプラットフォームを開発、普及させることを目的として、Trusted Computing Group(TCG)が設立されている。TCGでは、Trusted Platform Module(TPM)と呼ばれるセキュリティコアモジュールを利用し、安全な端末環境を実現している(非特許文献1〜5参照)。
図17において、本来は、それぞれのモジュールにおいて検証と起動とを行ない、BIOSの検証、BIOSの起動、OSの検証、OSの起動、通信モジュールの検証、通信モジュールの起動といった図17に示す番号の順番で検証と起動を行うことでブート処理が行なわれる。
また、ソフトウェアモジュールの更新では、ソフトウェアモジュールのコードイメージと、それに対応する証明書の両方を更新する必要があるため、証明書の更新を完了し、コードイメージの更新を完了する前に電源断等が起こった場合に課題がある。更新された証明書と更新されなかったコードイメージとは整合性が取れていないため検証がエラーとなり、端末はブート処理を正しく完了できす、起動できない状態となってしまう。
この構成によれば、デジタル証明書やソフトウェアモジュールの更新の際に電源断が起こるなどによって、ソフトウェアモジュールのコードイメージや証明書間に不整合が生じてしまった場合でも、ブート処理を完了させその後に、デジタル証明書、ソフトウェアモジュールの更新処理を再開することが出来る。
また、前記代替累積手段は、更に、前記更新があったソフトウェアモジュールについては、前記ソフトウェアモジュールから算出される要約値が、前記ソフトウェアモジュールに係るデジタル証明書に含まれる目標要約値と一致するか否かを確認し、一致する場合に、前記更新前のデジタル証明書に含まれる目標要約値を累積演算することとしてもよい。
また、前記代替累積手段は、前記代替累積値を暗号化して前記第2格納手段に格納することとしてもよい。
また、前記セキュアブート端末は、更に、前記検証手段による有効性の検証が失敗したソフトウェアモジュールが前記ブート制御手段によって起動された場合、当該ソフトウェアモジュールに対応するデジタル証明書の更新が必要である旨を通知する通知手段を備えることとしてもよい。
また、前記デジタル証明書は、対応するソフトウェアモジュールについて、前記検証手段による検証が失敗した場合に制限すべき機能を示す制限情報を含み、前記ブート制御手段は、前記検証手段による検証が失敗したソフトウェアモジュールを起動する場合、前記制限情報により示される機能を制限した状態で前記ソフトウェアモジュールを起動することとしてもよい。
例えば、制限情報に「検証手段による検証が失敗した場合に、更新処理の再開以外の処理を制限する」という内容を規定した場合、更新処理が正常終了していない状態でブート処理が行われると、ブート処理の後、更新処理の再開以外の処理が制限されるため、更新処理が優先的に実行され、より高い確度で更新処理を完了させるとともに、更新処理以外の処理が行われるのを防ぐことができる。
本発明の一実施態様であるセキュアブート方法は、複数のソフトウェアモジュールを予め定められた順番で起動するセキュアブート端末に用いられるセキュアブート方法であって、前記複数のソフトウェアモジュールそれぞれについて、当該ソフトウェアモジュールから要約値として算出されるべき目標要約値と、当該ソフトウェアモジュールより先に起動される他のソフトウェアモジュールそれぞれの目標要約値を累積演算した場合に得られるべき目標累積値とを含むデジタル証明書を格納する第1格納ステップと、起動の順番に達したソフトウェアモジュールについて、当該ソフトウェアモジュールより先に起動される他のソフトウェアモジュールそれぞれの要約値を累積演算した実累積値と、当該ソフトウェアモジュールに対応するデジタル証明書に含まれる目標累積値とを比較して、当該ソフトウェアモジュールより先に起動されるソフトウェアモジュールの有効性を検証する検証ステップと、前記複数のソフトウェアモジュールのうち1つのソフトウェアモジュール、及び前記1つのソフトウェアモジュールに係るデジタル証明書を更新する更新ステップと、前記他のソフトウェアモジュールそれぞれについて、デジタル証明書が更新されている場合は更新前のデジタル証明書に含まれる目標要約値を累積演算し、更新されていない場合は当該デジタル証明書に含まれる目標要約値を累積演算した代替累積値を格納する第2格納ステップと、(a)前記検証手段による有効性の検証が成功した場合、前記起動の順番に達したソフトウェアモジュールを起動し、(b)前記検証手段による有効性の検証が失敗した場合、前記代替累積値と前記起動の順番に達したソフトウェアモジュールに係るデジタル証明書に含まれる目標累積値とを比較し、前記目標累積値と前記代替累積値が一致すれば、前記起動の順番に達したソフトウェアモジュールを起動するブート制御ステップとを含む。
以下本発明の実施の形態について、図面を参照しながら説明する。
本発明の第1の実施形態における端末100の構成について説明する。
端末100は、図1に示すように、CPU101と、耐タンパ性を備えるセキュリティデバイス102と、CPU101が実行するソフトウェアモジュールのコードイメージを格納するソフトウェアモジュール格納部106と、ソフトウェアモジュールの証明書を格納する証明書格納手段107と、ソフトウェアモジュール格納部106に格納されるソフトウェアモジュールと証明書格納手段107に格納される証明書とを更新する更新手段と104と、ソフトウェアモジュールの更新前のソフトウェア構成における構成情報を示す代替構成情報累積部103と、端末100のブート処理を制御するブート制御手段105と、端末100のユーザにブート処理の状況を通知する通知手段108と、から構成される。
代替構成情報累積部103と更新手段104とブート制御手段105は、具体的には、以下において詳しく説明する動作を行う専用ハードウェアまたはCPU101が実行するソフトウェアによって実現され、ソフトウェアによって実現される場合には、端末100上のメモリ(不図示)にソフトウェア・オブジェクトデータとして生成される。この場合、特に更新フラグ保持部111は、不揮発性のメモリ上に実現される。
通知手段108は、具体的にはディスプレイやスピーカ、LED等のインジケータ等によって実現される。
さらに、セキュリティデバイス102は、図2(a)に示すように、CPU101が実際に実行するソフトウェアモジュールの構成を示す構成情報を保持する構成情報累積部201と、ソフトウェアモジュールの証明書の有効性を検証する証明書検証部202と、構成情報累積部201が保持する構成情報を証明書の中の照合値と照合する照合部203と、ソフトウェアモジュールの有効なバージョンの下限を示すカウンタ値を保持するカウンタ部204と、データの暗復号及び署名生成や署名検証を行う暗復号部205と、を備える。また、構成情報累積部201は、ソフトウェアモジュールのハッシュ値の累積演算を行なう累積部211と、累積部211が算出した累積値(以下、累積演算の結果をこのように呼ぶ)を保持する構成情報保持部212と、を備えている。
累積部211は、構成情報保持部212が保持する値のバイト列とソフトウェアモジュールのハッシュ演算の結果のバイト列とを連結し、さらに連結したバイト列に対してハッシュ演算を行い、その結果を構成情報保持部212に格納する。
累積部221は、代替構成情報保持部222が保持する値のバイト列とソフトウェアモジュールのハッシュ演算の結果のバイト列とを連結し、さらに連結したバイト列(この場合、例えば、代替構成情報保持部222が保持する値が20バイト、ソフトウェアモジュールのハッシュ演算の結果が20バイトの場合、連結したバイト列は40バイトのバイト列となる)に対してハッシュ演算を行い、その結果を代替構成情報保持部222に格納する。
まず、図12を用いて、ソフトウェアモジュール格納手段106に格納されるソフトウェアモジュールのコードイメージと証明書格納手段107に格納される証明書とを更新する端末100の更新処理における動作について説明する。
最新のソフトウェアモジュールのコードイメージと証明書は、更新処理を行うソフトウェアモジュールのコードイメージと証明書の一覧を示す更新リストファイルと共に、ネットワーク通信手段(不図示)を介してダウンロードまたは蓄積媒体(不図示)を介して更新手段104の内部の記憶領域に一時的に保持されるものとする。また、具体的には、1つの更新されるソフトウェアモジュールに関して、そのソフトウェアモジュールのコードイメージと証明書、さらには、参照累積値304が更新されるソフトウェアモジュールに依存している証明書と更新リストファイルとが更新手段104の内部の記憶領域に保持される。
更新リストファイルには、更新処理を行う順番でソフトウェアモジュールの証明書の識別情報とコードイメージの識別情報とが順番に記載されている。この順番は、セキュアブート処理の際に先に実行されるソフトウェアモジュールの順番に従っており、先に実行されるソフトウェアモジュールほど、そのソフトウェアモジュールの証明書とコードイメージの更新処理が先に行われるように記載されている。
また、証明書の参照累積値304が更新されるソフトウェアモジュールに依存していない場合には、更新リストファイルと、それぞれのソフトウェアモジュールのコードイメージと証明書とが更新手段104の内部の記憶領域に保持される。
本実施の形態では、モジュール構造体を使って、各ソフトウェアモジュール(BIOS、OS、通信モジュール)について、最新の証明書と旧証明書を管理している。本実施の形態ではモジュール構造体は2つあるが、一方は更新用に用いる構造体である。また、もう一方は現在のソフトウェア構成におけるソフトウェアモジュールの実体や証明書へのポインタを含む構造体であり、ソフトウェアモジュールの起動に用いる。本実施の形態では、ソフトウェアモジュールの更新があった場合は、更新用の構造体(すなわち、現在使用していない方の構造体)について、新しいソフトウェアモジュールのコードイメージや証明書の実体へのポインタを格納する。その上で、現在使用している方の構造体から、更新用の構造体へ各モジュール構造体へのポインタを切り替えることで、モジュール構造体の更新を完了する。すなわち、使用中のモジュール構造体と更新用のモジュール構造体と入れ替わるので、更新用のモジュール構造体の方が、新しく現在使用中のモジュール構造体となる。
次に、更新手段104は、ソフトウェアモジュールの証明書の更新を行う(ステップS1202)。この時、証明書格納手段107に格納される更新前の証明書は証明書格納手段107からは消去されず、ブート制御手段105において旧証明書として管理されるようになる。
次に、図4、5、6を用いて、端末100のセキュアブート処理における動作について説明する。
図4は、端末100が行なうセキュアブート処理のフローの概要を示している。
通常セキュアブート処理(ステップS402)へ進んだ場合、セキュアブート制御部112は図5に示すフローに基づいてセキュアブート処理を行なう。
まず、通常セキュアブート処理(ステップS402)における端末100の動作について説明する。
通常セキュアブート処理では、まず、セキュアブート制御部112がソフトウェアモジュールと証明書との照合を行いソフトウェアモジュールに対応する証明書が存在することを検証する(ステップS501)。具体的には、ソフトウェアモジュールのコードイメージのハッシュ演算(例えば、SHA−1などのハッシュ演算)を行い、その結果と証明書の参照計測値303とを照合する。照合の結果、参照計測値303と一致した場合には、セキュリティデバイス102に証明書の検証を要求してステップS502へ進む。
ステップS502では、セキュリティデバイス102の証明書検証部202が、証明書のバージョンの検証を行い、証明書が古い無効化された証明書でないこと検証する(ステップS502)。具体的には、セキュリティデバイスのカウンタ部204が保持するカウンタ値と証明書の参照カウンタ値305とを比較する。カウンタ部204には、ソフトウェアモジュールの有効なバージョンの下限を示すカウンタ値が保持されており、カウンタ値の比較の結果、参照カウンタ値305が、カウンタ部204が保持するカウンタ値以上であった場合には、ステップS503へ進む。
ステップS503では、セキュリティデバイス102の証明書検証部202が、さらに、証明書の署名の検証を行い、有効な電子署名が施された証明書であることを検証する(ステップS503)。署名検証の結果、電子署名が有効であった場合には、ステップS504へ進む。
ステップS501、S502、S503の検証により、ソフトウェアモジュールと証明書とは対応関係にあり、かつ、その証明書の有効性が検証されることにより、ソフトウェアモジュール自体の有効性が検証される。
ステップS505では、セキュリティデバイス102の構成情報累積部201の累積部211が、構成情報保持部212が保持する値のバイト列と証明書の参照累積値のフィールドに設定されている参照累積値のバイト列とを連結し、さらに連結したバイト列に対してハッシュ演算(例えば、SHA−1のハッシュ演算)を行い、その結果を構成情報保持部212に格納する(ステップS505)。
ステップS507では、セキュアブート処理を完了したか否かを判定する。
セキュアブート処理において実行されるべき全てのソフトウェアモジュールの実行を完了した場合には、通常セキュアブート処理(ステップS402)を完了し、
セキュアブート処理を完了していないと判定した場合には、ステップS501に戻り、次に実行するソフトウェアモジュールと証明書に関してステップS501からステップS507までの処理を繰り返す。
更新時セキュアブート処理では、まず、セキュアブート制御部112がソフトウェアモジュールと証明書との照合を行いソフトウェアモジュールに対応する証明書が存在することを検証する(ステップS601)。具体的には、ソフトウェアモジュールのコードイメージのハッシュ演算(例えば、SHA−1などのハッシュ演算)を行い、その結果と証明書の参照計測値303とを照合する。照合の結果、参照計測値303と一致した場合には、セキュリティデバイス102に証明書の検証を要求してステップS602へ進む。
ステップS602では、セキュリティデバイス102の証明書検証部202が、証明書のバージョンの検証を行い、証明書が古い無効化された証明書でないこと検証する(ステップS602)。具体的には、セキュリティデバイスのカウンタ部204が保持するカウンタ値と証明書の参照カウンタ値305とを比較する。カウンタ部204には、ソフトウェアモジュールの有効なバージョンの下限を示すカウンタ値が保持されており、カウンタ値の比較の結果、参照カウンタ値305が、カウンタ部204が保持するカウンタ値以上であった場合には、ステップS603へ進む。
ステップS603では、セキュリティデバイス102の証明書検証部202が、さらに、証明書の署名の検証を行い、有効な電子署名が施された証明書であることを検証する(ステップS603)。署名検証の結果、電子署名が有効であった場合には、ステップS604へ進む。
ステップS601、S602、S603の検証により、ソフトウェアモジュールとそれに対応する証明書との対応関係が正しいことが検証され、かつ、その証明書の有効性が検証されることにより、ソフトウェアモジュール自体の有効性が検証される。
照合に成功した場合、つまり、証明書の参照累積値と構成情報保持部212が保持する構成情報とが一致し、ソフトウェアモジュールを実行する前の状態として正しい状態であることが検証された場合には、ステップS608へ進む。
ステップS608では、セキュリティデバイス102の構成情報累積部201の累積部211が、構成情報保持部212が保持する値のバイト列と証明書の参照累積値のフィールドに設定されている参照累積値のバイト列とを連結し、さらに連結したバイト列に対してハッシュ演算(例えば、SHA−1のハッシュ演算)を行い、その結果を構成情報保持部212に格納する(ステップS608)。
ステップS610では、セキュアブート制御部112が、更新前の旧証明書のバージョンの検証を行い、旧証明書が更新処理を行う前のバージョンの証明書であること検証する(ステップS610)。具体的には、セキュリティデバイスのカウンタ部204が保持するカウンタ値と証明書の参照カウンタ値305とを照合する。カウンタ部204には、ソフトウェアモジュールの有効なバージョンの下限を示すカウンタ値が保持されており、カウンタ値の照合の結果、参照カウンタ値305が、カウンタ部204が保持するカウンタ値以上であった場合には、ステップS611へ進む。
ステップS611では、セキュアブート制御部112が、さらに、更新前の旧証明書の署名の検証を行い、有効な電子署名が施された証明書であることを検証する(ステップS611)。署名検証の結果、電子署名が有効であった場合には、ステップS612へ進む。
ステップS610、S611の検証により、旧証明書が更新処理を行う前のバージョンの有効な証明書であることが検証される。
ステップS615では、セキュアブート制御部112がセキュアブート処理を完了したか否かを判定する。
セキュアブート処理を完了していないと判定した場合には、ステップS601に戻り、次に実行するソフトウェアモジュールと証明書に関してステップS601からステップS615までの処理を繰り返す。
ステップS607の処理をした場合には、更新処理においてソフトウェアモジュール及び証明書との間に不整合があり、更新処理が完了していないということであり、ステップS405へ進む。
ステップS607の処理をしなかった場合には、ソフトウェアモジュール及び証明書との間に不整合がなく更新されていることを意味し、ステップS406へ進み、セキュアブート制御部は更新フラグをリセットし、更新前の旧証明書を消去する。
なお、以上では、更新フラグ保持部111をブート制御手段105の内部に設けたが、セキュリティデバイス102の内部に設けるようにしても良い。セキュリティデバイス102は、耐タンパ性を備えているため、更新フラグの改ざんを防止することができ、端末100の安全性が向上する。
また、なお、ソフトウェアモジュールのコードイメージのハッシュ演算のアルゴリズムとしてSHA256を用いるようにしてもよい。
また、なお、セキュアブート処理を開始する前に、ブート制御手段が改ざんされていないことをセキュリティデバイス102が検証するようにしてもよい。
また、なお、証明書に施される電子署名のアルゴリズムとして、RSA暗号または楕円曲線暗号またはHMACを使用するようにしてもよい。
(実施の形態2)
図7を用いて本発明の実施の形態2について説明する。
本実施の形態の場合、更新時セキュアブート処理(ステップS403)を開始する際に、代替構成情報生成部713が、セキュリティデバイス102の構成情報保持部212に保持されている値を読み出し、代替構成情報保持部222に設定することで、代替構成情報累積部103を生成する。それ以外の動作に関しては、第1の実施形態における端末100の場合と同じである。
(実施の形態3)
本発明の実施の形態3では、更新時セキュアブート処理を行って起動した場合の端末100の動作モードを、更新時セキュアブート処理の際に行った照合処理に結果に応じて一部の機能を制限するなどの制御できるように構成したものについて説明する。
機能制御定義807には、機能制御の条件と機能制御の内容が、例えば、XML等の形式で記述される。
また、機能制御の内容としては、「更新処理の再開以外の処理が制限される緊急モード」や「外部との通信が制限される通信不可モード」、「セキュリティデバイス102を利用する暗号処理などのセキュリティサービスを利用不可とする制限モード」、「特定の外部通信(緊急電話など)のみ使用可能とする通報モード」などが規定される。
(実施の形態4)
実施の形態1では、更新処理の際、旧証明書を消去せずに保持しておく必要があったが、
本発明の実施の形態4では、それを不要とするように構成したものについて説明する。
旧参照計測値907には、ソフトウェアモジュールを更新する前に、ソフトウェアモジュール格納手段106に格納されていたソフトウェアモジュールのコードイメージのハッシュ演算の結果が設定される。これは、証明書を更新する前に、証明書格納手段107に格納されていた証明書の参照計測値303に設定されている値と同じである。
動作における1つ目の相違点は、実施の形態4の場合、更新処理のステップS1202において旧証明書を保持せずに消去する点である。
2つ目の相違点は、実施の形態4の場合、図10に示すように、更新時セキュアブート処理のステップS609において、更新フラグが有効になっているソフトウェアモジュールである場合(つまり、更新処理中または更新処理を完了したソフトウェアモジュールである場合)には、ステップS1012へ進み、代替構成情報累積部103の累積部221が、代替構成情報保持部222が保持する値のバイト列と証明書の旧参照累積値907のフィールドに設定されている旧参照累積値のバイト列とを連結し、さらに連結したバイト列に対してハッシュ演算を行い、その結果を代替構成情報保持部222に格納する(ステップS1012)点である。
本実施の形態の場合、旧証明書を保持しておくために必要であったメモリが不要となり、携帯電話等のリソースに制限がある端末においても適用することが容易になる。
(実施の形態5)
図11、13を用いて本発明の実施の形態5について説明する。
サイレントブート処理は、具体的には、最新のソフトウェアモジュールのコードイメージと証明書とをダウンロードした直後等のタイミングでおこなわれるとする。ただし、端末処理負荷が低いタイミングで行うなどとしてもよく、このタイミングに限定するものではない。
ステップS1304では、サイレントブート部1121が、証明書の参照累積値と代替構成情報保持部222が保持する構成情報とを照合し、ソフトウェアモジュールを実行する前の状態として正しい状態(その前に実行されているソフトウェアモジュールが有効なソフトウェアモジュールであり、正しい順番で実行されている)であることが検証される。証明書の参照累積値と代替構成情報保持部222が保持する構成情報とが一致した場合には、ステップS1305へ進み、それ以外の場合には、エラーとなりサイレントブート部1121を完了せずに終了する。
サイレントブート処理において実行されるべき全てのソフトウェアモジュールの実行を完了した場合には、サイレントブート処理を完了し、セキュアブート処理を完了していないと判定した場合には、ステップS1301に戻り、次に実行されるべきソフトウェアモジュールと証明書に関してステップS1301からステップS507までの処理を繰り返す。
本実施の形態の場合、更新処理を開始する前に、入手したソフトウェアモジュールのコードイメージと証明書と更新対象ではない証明書との整合性を検証する。これにより、誤って整合性がない構成に更新されてしまうことを防止し、確実にソフトウェアモジュールのコードイメージ及び証明書との間に不整合がないソフトウェア構成に更新することが出来る。
(実施の形態6)
本発明の実施の形態6では、古いソフトウェアモジュールが実行されることを、より確実に防止し、端末100のソフトウェア構成が常に最新のソフトウェア構成となるように構成したものについて説明する。
端末100の構成は、実施の形態1の場合と基本的には同じであり、ステップS406の後の処理以外は、動作に関しても実施の形態1の場合と同じである。
ステップS406の後、つまり、更新時セキュアブート処理においてソフトウェアモジュール及び証明書との間に不整合がなく、ステップS406において、更新フラグをリセットし、更新前の旧証明書を消去した後、処理はステップS1407へ進む。ステップS1407では、証明書格納手段107に格納されている証明書の内、セキュリティデバイス102のカウンタ部204が示す値と参照カウンタ値が同じ証明書(つまり、更新されていない証明書)に関して、証明書格納手段に格納されている既存の証明書を用いて更新する。この時、セキュアブート制御部112は、更新手段104に証明書の更新処理を要求する。また、更新手段104がセキュアブート制御部112からの要求に基づきセキュリティデバイス102に命令を送信する。セキュリティデバイス102は、証明書の参照カウンタ値305にセキュリティデバイス102のカウンタ部204に保持されているカウンタ値に1を加算した値を設定し、セキュリティデバイス102の暗復号部205に保持されている暗号鍵によって署名を生成して、電子署名307のフィールドに設定する。なお、証明書の更新は、証明書格納手段に格納されている証明書を用いて行われるので、実質的には、この処理によって、証明書の参照カウンタ値305と電子署名307のフィールドのみが更新され、その他のフィールドの値は変わらない。
ステップS1407、ステップS1408の処理により、すべての証明書の参照カウンタ値305とセキュリティデバイス102のカウンタ部に保持されているカウンタ値とが常に同じ値に設定されることになる。
(実施の形態7)
本発明の実施の形態7では、上述してきた実施の形態1から実施の形態6をTrusted Computing Group(TCG)で規定している仕様に基づいて実現してもよい。
(その他変形例)
なお、本発明を上記実施の形態に基づいて説明してきたが、本発明は、上記の実施の形態に限定されないのはもちろんである。以下のような場合も本発明に含まれる。
(1)上記の各装置は、具体的には、マイクロプロセッサ、ROM、RAM、ハードディスクユニット、ディスプレイユニット、キーボード、マウスなどから構成されるコンピュータシステムである。前記RAMまたはハードディスクユニットには、コンピュータプログラムが記憶されている。前記マイクロプロセッサが、前記コンピュータプログラムにしたがって動作することにより、各装置は、その機能を達成する。ここでコンピュータプログラムは、所定の機能を達成するために、コンピュータに対する指令を示す命令コードが複数個組み合わされて構成されたものである。なお、各装置は、マイクロプロセッサ、ROM、RAM、ハードディスクユニット、ディスプレイユニット、キーボード、マウスなどの全てを含むコンピュータシステムには限らず、これらの一部から構成されているコンピュータシステムであってもよい。
また、ここでは、システムLSIとしたが、集積度の違いにより、IC、LSI、スーパーLSI、ウルトラLSIと呼称されることもある。また、集積回路化の手法はLSIに限るものではなく、専用回路又は汎用プロセッサで実現してもよい。LSI製造後に、プログラムすることが可能なFPGA(Field Programmable Gate Array)や、LSI内部の回路セルの接続や設定を再構成可能なリコンフィギュラブル・プロセッサーを利用しても良い。
(3)上記の各装置を構成する構成要素の一部または全部は、各装置に脱着可能なICカードまたは単体のモジュールから構成されているとしてもよい。前記ICカードまたは前記モジュールは、マイクロプロセッサ、ROM、RAMなどから構成されるコンピュータシステムである。前記ICカードまたは前記モジュールは、上記の超多機能LSIを含むとしてもよい。マイクロプロセッサが、コンピュータプログラムにしたがって動作することにより、前記ICカードまたは前記モジュールは、その機能を達成する。このICカードまたはこのモジュールは、耐タンパ性を有するとしてもよい。
また、本発明は、前記コンピュータプログラムまたは前記デジタル信号をコンピュータ読み取り可能な記録媒体、例えば、フレキシブルディスク、ハードディスク、CD−ROM、MO、DVD、DVD−ROM、DVD−RAM、BD(Blu−ray Disc)、半導体メモリなどに記録したものとしてもよい。また、これらの記録媒体に記録されている前記デジタル信号であるとしてもよい。
また、本発明は、マイクロプロセッサとメモリを備えたコンピュータシステムであって、前記メモリは、上記コンピュータプログラムを記憶しており、前記マイクロプロセッサは、前記コンピュータプログラムにしたがって動作するとしてもよい。
(5)セキュリティデバイスは、耐タンパソフトウェアまたはソフトウェアと及びハードウェアにより実施されるよしてもよい。
(7)上記実施の形態及び上記変形例をそれぞれ組み合わせるとしてもよい。
本発明の端末に搭載されるセキュリティモジュールをそれらの機器に搭載し、本発明の端末と同様の構成にすることによって、機器のソフトウェアが複数のソフトウェアモジュールから構成される場合において、古いソフトウェアモジュールにすりかえるといった不正行為を防止し、各ソフトウェアモジュールの更新処理を個別に行うことが可能となる。
101 CPU
102 セキュリティデバイス
103 代替構成情報累積部
104 更新手段
105 ブート制御手段
106 ソフトウェアモジュール格納手段
107 証明書格納手段
108 通知手段
Claims (13)
- 複数のソフトウェアモジュールを予め定められた順番で起動するセキュアブート端末であって、
前記複数のソフトウェアモジュールそれぞれについて、当該ソフトウェアモジュールから要約値として算出されるべき目標要約値と、当該ソフトウェアモジュールより先に起動される他のソフトウェアモジュールそれぞれの目標要約値を累積演算した場合に得られるべき目標累積値とを含むデジタル証明書を格納している第1格納手段と、
起動の順番に達したソフトウェアモジュールについて、当該ソフトウェアモジュールより先に起動される他のソフトウェアモジュールそれぞれの要約値を累積演算した実累積値と、当該ソフトウェアモジュールに対応するデジタル証明書に含まれる目標累積値とを比較して、当該ソフトウェアモジュールより先に起動されるソフトウェアモジュールの有効性を検証する検証手段と、
前記複数のソフトウェアモジュールのうち1つのソフトウェアモジュール、及び前記1つのソフトウェアモジュールに係るデジタル証明書を更新する更新手段と、
前記他のソフトウェアモジュールそれぞれについて、デジタル証明書が更新されている場合は更新前のデジタル証明書に含まれる目標要約値を累積演算し、更新されていない場合は当該デジタル証明書に含まれる目標要約値を累積演算した代替累積値を格納する第2格納手段と、
(a)前記検証手段による有効性の検証が成功した場合、前記起動の順番に達したソフトウェアモジュールを起動し、(b)前記検証手段による有効性の検証が失敗した場合、前記代替累積値と前記起動の順番に達したソフトウェアモジュールに係るデジタル証明書に含まれる目標累積値とを比較し、前記目標累積値と前記代替累積値が一致すれば、前記起動の順番に達したソフトウェアモジュールを起動するブート制御手段と
を備えることを特徴とするセキュアブート端末。 - 前記更新手段は、更に、
全ソフトウェアモジュールが起動した後に、前記検証手段による検証に失敗したソフトウェアモジュールについて、当該ソフトウェアモジュールに対応するデジタル証明書を更新する
ことを特徴とする請求項1記載のセキュアブート端末。 - 前記セキュアブート端末は、更に、
前記他のソフトウェアモジュールそれぞれについて更新があったか否かを判定する更新判定手段と、
更新があったソフトウェアモジュールについては、当該ソフトウェアモジュールに係る更新前のデジタル証明書に含まれる目標要約値を累積演算し、更新がなかったソフトウェアモジュールについては、当該ソフトウェアモジュールに係るデジタル証明書に含まれる目標要約値を累積演算して前記代替累積値を算出し、前記第2格納手段に記録する代替累積手段と
を備えることを特徴とする請求項2記載のセキュアブート端末。 - 前記代替累積手段は、更に、
前記更新があったソフトウェアモジュールについては、前記ソフトウェアモジュールから算出される要約値が、前記ソフトウェアモジュールに係るデジタル証明書に含まれる目標要約値と一致するか否かを確認し、一致する場合に、前記更新前のデジタル証明書に含まれる目標要約値を累積演算する
ことを特徴とする請求項3記載のセキュアブート端末。 - 前記代替累積手段は、前記代替累積値を暗号化して前記第2格納手段に格納する
ことを特徴とする請求項3記載のセキュアブート端末。 - 前記セキュアブート端末は、更に、
前記検証手段による有効性の検証が失敗したソフトウェアモジュールが前記ブート制御手段によって起動された場合、当該ソフトウェアモジュールに対応するデジタル証明書の更新が必要である旨を通知する通知手段
を備えることを特徴とする請求項1記載のセキュアブート端末。 - 前記デジタル証明書は、対応するソフトウェアモジュールについて、前記検証手段による検証が失敗した場合に制限すべき機能を示す制限情報を含み、
前記ブート制御手段は、前記検証手段による検証が失敗したソフトウェアモジュールを起動する場合、前記制限情報により示される機能を制限した状態で前記ソフトウェアモジュールを起動する
ことを特徴とする請求項1記載のセキュアブート端末。 - 前記セキュアブート端末は、更に、
前記複数のソフトウェアモジュールのそれぞれについて、
前記ソフトウェアモジュールを示す情報と、前記ソフトウェアモジュールに係る現在のデジタル証明書を示す情報と、前記ソフトウェアモジュールに係る更新前のデジタル証明書を示す情報とを格納する領域を持つ複数の構造体、及び、前記複数の構造体のうち1つの構造体を使用中の現構造体として指し示す現構造体ポインタを記憶する構造体格納手段を備え、
前記更新手段は、
前記1つのソフトウェアモジュールの更新版及び前記1つのソフトウェアモジュールに係るデジタル証明書の更新版を取得する取得部と、
前記1つのソフトウェアモジュールに対応する構造体のうち、現構造体ポインタによって示されていない構造体である更新用構造体について、
(a)前記更新用構造体の前記ソフトウェアモジュールを示す情報として、前記1つのソフトウェアモジュールの更新版を示す情報を格納し、(b)前記更新用構造体の前記現在のデジタル証明書を示す情報として、前記1つのソフトウェアモジュールに係るデジタル証明書の更新版を示す情報を格納し、(c)前記更新用構造体の前記更新前のデジタル証明書を示す情報として、前記現構造体ポインタの示す構造体の前記現在のデジタル証明書を示す情報を格納する構造体更新部と、
前記現構造体ポインタを、前記更新用構造体を示すよう更新するポインタ変更部と
を備えることを特徴とする請求項1記載のセキュアブート端末。 - 前記セキュアブート端末は、更に、
前記複数のソフトウェアモジュールのうち1つのソフトウェアモジュールについてデジタル証明書の更新版を取得する取得手段と、
前記1つのソフトウェアモジュールより起動の順番が前の他のソフトウェアモジュールそれぞれに対応する目標要約値を累積演算して事前累積値を生成する事前累積値生成手段と、
前記事前累積値と、前記デジタル証明書の更新版に含まれる目標累積値とを比較して、前記1つのソフトウェアモジュールよりも起動の順番が前のソフトウェアモジュールの有効性を検証する事前検証手段とを備え、
前記更新手段は、更に、前記事前検証手段による検証に成功した場合に、前記デジタル証明書の更新版で、前記1つのソフトウェアモジュールに係るデジタル証明書を更新する
ことを特徴とする請求項1記載のセキュアブート端末。 - 複数のソフトウェアモジュールを予め定められた順番で起動するセキュアブート端末に用いられるセキュアブート方法であって、
前記複数のソフトウェアモジュールそれぞれについて、当該ソフトウェアモジュールから要約値として算出されるべき目標要約値と、当該ソフトウェアモジュールより先に起動される他のソフトウェアモジュールそれぞれの目標要約値を累積演算した場合に得られるべき目標累積値とを含むデジタル証明書を格納する第1格納ステップと、
起動の順番に達したソフトウェアモジュールについて、当該ソフトウェアモジュールより先に起動される他のソフトウェアモジュールそれぞれの要約値を累積演算した実累積値と、当該ソフトウェアモジュールに対応するデジタル証明書に含まれる目標累積値とを比較して、当該ソフトウェアモジュールより先に起動されるソフトウェアモジュールの有効性を検証する検証ステップと、
前記複数のソフトウェアモジュールのうち1つのソフトウェアモジュール、及び前記1つのソフトウェアモジュールに係るデジタル証明書を更新する更新ステップと、
前記他のソフトウェアモジュールそれぞれについて、デジタル証明書が更新されている場合は更新前のデジタル証明書に含まれる目標要約値を累積演算し、更新されていない場合は当該デジタル証明書に含まれる目標要約値を累積演算した代替累積値を格納する第2格納ステップと、
(a)前記検証手段による有効性の検証が成功した場合、前記起動の順番に達したソフトウェアモジュールを起動し、(b)前記検証手段による有効性の検証が失敗した場合、前記代替累積値と前記起動の順番に達したソフトウェアモジュールに係るデジタル証明書に含まれる目標累積値とを比較し、前記目標累積値と前記代替累積値が一致すれば、前記起動の順番に達したソフトウェアモジュールを起動するブート制御ステップと
を含むことを特徴とするセキュアブート方法。 - 複数のソフトウェアモジュールを予め定められた順番で起動するセキュアブート端末に用いられるセキュアブートプログラムであって、
前記複数のソフトウェアモジュールそれぞれについて、当該ソフトウェアモジュールから要約値として算出されるべき目標要約値と、当該ソフトウェアモジュールより先に起動される他のソフトウェアモジュールそれぞれの目標要約値を累積演算した場合に得られるべき目標累積値とを含むデジタル証明書を格納する第1格納ステップと、
起動の順番に達したソフトウェアモジュールについて、当該ソフトウェアモジュールより先に起動される他のソフトウェアモジュールそれぞれの要約値を累積演算した実累積値と、当該ソフトウェアモジュールに対応するデジタル証明書に含まれる目標累積値とを比較して、当該ソフトウェアモジュールより先に起動されるソフトウェアモジュールの有効性を検証する検証ステップと、
前記複数のソフトウェアモジュールのうち1つのソフトウェアモジュール、及び前記1つのソフトウェアモジュールに係るデジタル証明書を更新する更新ステップと、
前記他のソフトウェアモジュールそれぞれについて、デジタル証明書が更新されている場合は更新前のデジタル証明書に含まれる目標要約値を累積演算し、更新されていない場合は当該デジタル証明書に含まれる目標要約値を累積演算した代替累積値を格納する第2格納ステップと、
(a)前記検証手段による有効性の検証が成功した場合、前記起動の順番に達したソフトウェアモジュールを起動し、(b)前記検証手段による有効性の検証が失敗した場合、前記代替累積値と前記起動の順番に達したソフトウェアモジュールに係るデジタル証明書に含まれる目標累積値とを比較し、前記目標累積値と前記代替累積値が一致すれば、前記起動の順番に達したソフトウェアモジュールを起動するブート制御ステップと
を含むことを特徴とするセキュアブートプログラム。 - 複数のソフトウェアモジュールを予め定められた順番で起動するセキュアブート端末に用いられるセキュアブートプログラムを記録する記録媒体であって、
前記セキュアブートプログラムは、
前記複数のソフトウェアモジュールそれぞれについて、当該ソフトウェアモジュールから要約値として算出されるべき目標要約値と、当該ソフトウェアモジュールより先に起動される他のソフトウェアモジュールそれぞれの目標要約値を累積演算した場合に得られるべき目標累積値とを含むデジタル証明書を格納する第1格納ステップと、
起動の順番に達したソフトウェアモジュールについて、当該ソフトウェアモジュールより先に起動される他のソフトウェアモジュールそれぞれの要約値を累積演算した実累積値と、当該ソフトウェアモジュールに対応するデジタル証明書に含まれる目標累積値とを比較して、当該ソフトウェアモジュールより先に起動されるソフトウェアモジュールの有効性を検証する検証ステップと、
前記複数のソフトウェアモジュールのうち1つのソフトウェアモジュール、及び前記1つのソフトウェアモジュールに係るデジタル証明書を更新する更新ステップと、
前記他のソフトウェアモジュールそれぞれについて、デジタル証明書が更新されている場合は更新前のデジタル証明書に含まれる目標要約値を累積演算し、更新されていない場合は当該デジタル証明書に含まれる目標要約値を累積演算した代替累積値を格納する第2格納ステップと、
(a)前記検証手段による有効性の検証が成功した場合、前記起動の順番に達したソフトウェアモジュールを起動し、(b)前記検証手段による有効性の検証が失敗した場合、前記代替累積値と前記起動の順番に達したソフトウェアモジュールに係るデジタル証明書に含まれる目標累積値とを比較し、前記目標累積値と前記代替累積値が一致すれば、前記起動の順番に達したソフトウェアモジュールを起動するブート制御ステップと
を含む
ことを特徴とする記録媒体。 - 複数のソフトウェアモジュールを予め定められた順番で起動する集積回路であって、
前記複数のソフトウェアモジュールそれぞれについて、当該ソフトウェアモジュールから要約値として算出されるべき目標要約値と、当該ソフトウェアモジュールより先に起動される他のソフトウェアモジュールそれぞれの目標要約値を累積演算した場合に得られるべき目標累積値とを含むデジタル証明書を格納している第1格納手段と、
起動の順番に達したソフトウェアモジュールについて、当該ソフトウェアモジュールより先に起動される他のソフトウェアモジュールそれぞれの要約値を累積演算した実累積値と、当該ソフトウェアモジュールに対応するデジタル証明書に含まれる目標累積値とを比較して、当該ソフトウェアモジュールより先に起動されるソフトウェアモジュールの有効性を検証する検証手段と、
前記複数のソフトウェアモジュールのうち1つのソフトウェアモジュール、及び前記1つのソフトウェアモジュールに係るデジタル証明書を更新する更新手段と、
前記他のソフトウェアモジュールそれぞれについて、デジタル証明書が更新されている場合は更新前のデジタル証明書に含まれる目標要約値を累積演算し、更新されていない場合は当該デジタル証明書に含まれる目標要約値を累積演算した代替累積値を格納する第2格納手段と、
(a)前記検証手段による有効性の検証が成功した場合、前記起動の順番に達したソフトウェアモジュールを起動し、(b)前記検証手段による有効性の検証が失敗した場合、前記代替累積値と前記起動の順番に達したソフトウェアモジュールに係るデジタル証明書に含まれる目標累積値とを比較し、前記目標累積値と前記代替累積値が一致すれば、前記起動の順番に達したソフトウェアモジュールを起動するブート制御手段と
を備えることを特徴とする集積回路。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2009535966A JP5385148B2 (ja) | 2007-10-05 | 2008-09-30 | セキュアブート端末、セキュアブート方法、セキュアブートプログラム、記録媒体及び集積回路 |
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2007261977 | 2007-10-05 | ||
JP2007261977 | 2007-10-05 | ||
PCT/JP2008/002728 WO2009044533A1 (ja) | 2007-10-05 | 2008-09-30 | セキュアブート端末、セキュアブート方法、セキュアブートプログラム、記録媒体及び集積回路 |
JP2009535966A JP5385148B2 (ja) | 2007-10-05 | 2008-09-30 | セキュアブート端末、セキュアブート方法、セキュアブートプログラム、記録媒体及び集積回路 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPWO2009044533A1 true JPWO2009044533A1 (ja) | 2011-02-03 |
JP5385148B2 JP5385148B2 (ja) | 2014-01-08 |
Family
ID=40525965
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2009535966A Expired - Fee Related JP5385148B2 (ja) | 2007-10-05 | 2008-09-30 | セキュアブート端末、セキュアブート方法、セキュアブートプログラム、記録媒体及び集積回路 |
Country Status (4)
Country | Link |
---|---|
US (1) | US8555049B2 (ja) |
EP (1) | EP2196936A4 (ja) |
JP (1) | JP5385148B2 (ja) |
WO (1) | WO2009044533A1 (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2017517028A (ja) * | 2014-04-17 | 2017-06-22 | ソフトバンク・ロボティクス・ヨーロッパSoftbank Robotics Europe | ロボットとの対話を取り扱う方法とシステム |
Families Citing this family (50)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9069990B2 (en) * | 2007-11-28 | 2015-06-30 | Nvidia Corporation | Secure information storage system and method |
US9158896B2 (en) * | 2008-02-11 | 2015-10-13 | Nvidia Corporation | Method and system for generating a secure key |
US20090204801A1 (en) * | 2008-02-11 | 2009-08-13 | Nvidia Corporation | Mechanism for secure download of code to a locked system |
US9069706B2 (en) * | 2008-02-11 | 2015-06-30 | Nvidia Corporation | Confidential information protection system and method |
US9613215B2 (en) | 2008-04-10 | 2017-04-04 | Nvidia Corporation | Method and system for implementing a secure chain of trust |
JP5178341B2 (ja) * | 2008-06-23 | 2013-04-10 | パナソニック株式会社 | オプショナルなコンポーネントを伴うセキュアブートの方法 |
EP2293216A1 (en) * | 2008-06-23 | 2011-03-09 | Panasonic Corporation | Information processing device, information processing method, and computer program and integrated circuit for the realization thereof |
US8375211B2 (en) * | 2009-04-21 | 2013-02-12 | International Business Machines Corporation | Optimization of signing soap body element |
RU2011148523A (ru) * | 2009-07-01 | 2013-08-20 | Панасоник Корпорэйшн | Способ защищенной загрузки и устройство защищенной загрузки |
US8205257B1 (en) * | 2009-07-28 | 2012-06-19 | Symantec Corporation | Systems and methods for preventing threats originating from a non-process based component hosted by a trusted process |
EP2558972A1 (en) * | 2010-04-12 | 2013-02-20 | InterDigital Patent Holdings, Inc. | Staged control release in boot process |
US20120084562A1 (en) * | 2010-10-04 | 2012-04-05 | Ralph Rabert Farina | Methods and systems for updating a secure boot device using cryptographically secured communications across unsecured networks |
KR101649115B1 (ko) * | 2010-11-11 | 2016-08-19 | 삼성전자주식회사 | 디스플레이 장치 및 이에 적용되는 마이컴 코드 업데이트 방법 |
KR20130114672A (ko) | 2011-01-19 | 2013-10-17 | 인터내셔널 비지네스 머신즈 코포레이션 | 소프트웨어를 업데이트하는 장치 및 방법 |
US9015455B2 (en) * | 2011-07-07 | 2015-04-21 | Intel Corporation | Processsor integral technologies for BIOS flash attack protection and notification |
US8812830B2 (en) | 2011-08-31 | 2014-08-19 | Microsoft Corporation | Attestation protocol for securely booting a guest operating system |
CN103136019A (zh) * | 2011-11-29 | 2013-06-05 | 国际商业机器公司 | 用于加载配置信息的方法和装置 |
US9262637B2 (en) * | 2012-03-29 | 2016-02-16 | Cisco Technology, Inc. | System and method for verifying integrity of platform object using locally stored measurement |
US9489924B2 (en) | 2012-04-19 | 2016-11-08 | Nvidia Corporation | Boot display device detection and selection techniques in multi-GPU devices |
EP2973156B1 (en) * | 2013-03-15 | 2018-04-25 | Intel Corporation | Key revocation in system on chip devices |
CN103338450A (zh) * | 2013-06-26 | 2013-10-02 | 华为技术有限公司 | 一种验证方法及设备 |
CN105981326B (zh) * | 2014-02-26 | 2019-05-14 | 三菱电机株式会社 | 证书管理装置和证书管理方法 |
US9438627B2 (en) | 2014-06-11 | 2016-09-06 | International Business Machines Corporation | Shared security utility appliance for secure application and data processing |
US10552827B2 (en) * | 2014-09-02 | 2020-02-04 | Google Llc | Dynamic digital certificate updating |
US9916451B2 (en) * | 2015-02-09 | 2018-03-13 | Dell Products L.P. | Information handling system boot pre-validation |
AT517154B1 (de) * | 2015-03-05 | 2018-07-15 | Siemens Ag Oesterreich | Überwachung des Startvorgangs einer integrierten Schaltung |
US9674162B1 (en) | 2015-03-13 | 2017-06-06 | Amazon Technologies, Inc. | Updating encrypted cryptographic key pair |
US9893885B1 (en) | 2015-03-13 | 2018-02-13 | Amazon Technologies, Inc. | Updating cryptographic key pair |
US9479340B1 (en) | 2015-03-30 | 2016-10-25 | Amazon Technologies, Inc. | Controlling use of encryption keys |
US10003467B1 (en) * | 2015-03-30 | 2018-06-19 | Amazon Technologies, Inc. | Controlling digital certificate use |
JP6601491B2 (ja) * | 2015-05-20 | 2019-11-06 | 富士通株式会社 | プログラム検証方法、検証プログラム、及び情報処理装置 |
JP6595822B2 (ja) * | 2015-07-07 | 2019-10-23 | キヤノン株式会社 | 情報処理装置及びその制御方法 |
US10503931B2 (en) * | 2016-05-09 | 2019-12-10 | Arris Enterprises Llc | Method and apparatus for dynamic executable verification |
EP3333748A1 (de) * | 2016-12-08 | 2018-06-13 | Siemens Aktiengesellschaft | Geräteeinheit geeignet für den betrieb im geschützten und/oder offenen betriebszustand sowie zugehöriges verfahren |
EP3542298B1 (en) | 2017-01-12 | 2022-08-03 | Google LLC | Verified boot and key rotation |
EP3382590B1 (en) * | 2017-03-31 | 2019-10-16 | OMRON Corporation | Method for initializing a computerized system and computerized system against rollback attacks |
JP2018194879A (ja) | 2017-05-12 | 2018-12-06 | ルネサスエレクトロニクス株式会社 | 半導体装置、ブート方法、およびブートプログラム |
WO2019036795A1 (en) | 2017-08-22 | 2019-02-28 | Absolute Software Corporation | MONITORING INTEGRITY OF A FIRMWARE USING "SILVER" MEASURES |
EP3489853B1 (en) | 2017-11-27 | 2021-02-24 | Schneider Electric Industries SAS | A method for providing a firmware update of a device |
US11068600B2 (en) * | 2018-05-21 | 2021-07-20 | Kct Holdings, Llc | Apparatus and method for secure router with layered encryption |
US11120137B2 (en) | 2018-06-19 | 2021-09-14 | Netgear, Inc. | Secure transfer of registered network access devices |
US11347879B2 (en) * | 2018-09-07 | 2022-05-31 | Truist Bank | Determining the relative risk for using an originating IP address as an identifying factor |
JP7182966B2 (ja) * | 2018-09-12 | 2022-12-05 | キヤノン株式会社 | 情報処理装置、情報処理装置の起動方法、及びプログラム |
US10771264B2 (en) | 2018-10-10 | 2020-09-08 | Hewlett Packard Enterprise Development Lp | Securing firmware |
US11861011B2 (en) * | 2019-06-25 | 2024-01-02 | ZPE Systems, Inc. | Secure boot process |
JP7289739B2 (ja) * | 2019-06-27 | 2023-06-12 | キヤノン株式会社 | 情報処理装置、情報処理方法およびプログラム |
KR20210091585A (ko) * | 2020-01-14 | 2021-07-22 | 삼성전자주식회사 | 사용자 인증에 기반한 펌웨어 업데이트를 수행하는 전자 장치 및 이의 동작방법 |
US11431510B1 (en) * | 2020-04-30 | 2022-08-30 | Wells Fargo Bank, N.A. | Code-sign white listing (CSWL) |
US11681513B2 (en) * | 2020-05-14 | 2023-06-20 | Texas Instmments Incorporated | Controlled scope of authentication key for software update |
FR3122749B1 (fr) | 2021-05-10 | 2023-10-27 | Marbeuf Conseil Et Rech | Procédé pour sécuriser l’utilisation d’un logiciel |
Family Cites Families (20)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6157721A (en) * | 1996-08-12 | 2000-12-05 | Intertrust Technologies Corp. | Systems and methods using cryptography to protect secure computing environments |
US7194092B1 (en) * | 1998-10-26 | 2007-03-20 | Microsoft Corporation | Key-based secure storage |
US6263431B1 (en) * | 1998-12-31 | 2001-07-17 | Intle Corporation | Operating system bootstrap security mechanism |
US6757824B1 (en) * | 1999-12-10 | 2004-06-29 | Microsoft Corporation | Client-side boot domains and boot rules |
US6715085B2 (en) * | 2002-04-18 | 2004-03-30 | International Business Machines Corporation | Initializing, maintaining, updating and recovering secure operation within an integrated system employing a data access control function |
JP2004013477A (ja) | 2002-06-06 | 2004-01-15 | Nec Viewtechnology Ltd | ブートプログラム選択及び更新方法並びにこれを用いたフラッシュメモリ |
US7216369B2 (en) * | 2002-06-28 | 2007-05-08 | Intel Corporation | Trusted platform apparatus, system, and method |
US20050021968A1 (en) | 2003-06-25 | 2005-01-27 | Zimmer Vincent J. | Method for performing a trusted firmware/bios update |
US7533274B2 (en) * | 2003-11-13 | 2009-05-12 | International Business Machines Corporation | Reducing the boot time of a TCPA based computing system when the core root of trust measurement is embedded in the boot block code |
US7318150B2 (en) * | 2004-02-25 | 2008-01-08 | Intel Corporation | System and method to support platform firmware as a trusted process |
US20060136705A1 (en) * | 2004-12-21 | 2006-06-22 | Motorola, Inc. | Multiple stage software verification |
JP4093494B2 (ja) * | 2005-09-08 | 2008-06-04 | インターナショナル・ビジネス・マシーンズ・コーポレーション | 秘密情報へのアクセスを制御するシステムおよびその方法 |
KR100746012B1 (ko) * | 2005-11-07 | 2007-08-06 | 삼성전자주식회사 | 코드 이미지를 안전하게 갱신하고 부팅하는 방법 및 장치 |
JP4769608B2 (ja) * | 2006-03-22 | 2011-09-07 | 富士通株式会社 | 起動検証機能を有する情報処理装置 |
US7827397B2 (en) * | 2006-07-13 | 2010-11-02 | Aristocrat Technologies Australia Pty, Ltd. | Gaming machine having a secure boot chain and method of use |
US7743422B2 (en) * | 2006-08-21 | 2010-06-22 | International Business Machines Corporation | System and method for validating a computer platform when booting from an external device |
US8117429B2 (en) * | 2006-11-01 | 2012-02-14 | Nokia Corporation | System and method for a distributed and flexible configuration of a TCG TPM-based local verifier |
US8254568B2 (en) * | 2007-01-07 | 2012-08-28 | Apple Inc. | Secure booting a computing device |
US20080178257A1 (en) * | 2007-01-20 | 2008-07-24 | Takuya Mishina | Method for integrity metrics management |
US8621191B2 (en) * | 2007-12-26 | 2013-12-31 | Nokia Corporation | Methods, apparatuses, and computer program products for providing a secure predefined boot sequence |
-
2008
- 2008-09-30 WO PCT/JP2008/002728 patent/WO2009044533A1/ja active Application Filing
- 2008-09-30 US US12/676,960 patent/US8555049B2/en not_active Expired - Fee Related
- 2008-09-30 JP JP2009535966A patent/JP5385148B2/ja not_active Expired - Fee Related
- 2008-09-30 EP EP08835878A patent/EP2196936A4/en not_active Withdrawn
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2017517028A (ja) * | 2014-04-17 | 2017-06-22 | ソフトバンク・ロボティクス・ヨーロッパSoftbank Robotics Europe | ロボットとの対話を取り扱う方法とシステム |
Also Published As
Publication number | Publication date |
---|---|
WO2009044533A1 (ja) | 2009-04-09 |
US8555049B2 (en) | 2013-10-08 |
EP2196936A4 (en) | 2012-05-02 |
EP2196936A1 (en) | 2010-06-16 |
JP5385148B2 (ja) | 2014-01-08 |
US20100185845A1 (en) | 2010-07-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5385148B2 (ja) | セキュアブート端末、セキュアブート方法、セキュアブートプログラム、記録媒体及び集積回路 | |
US9626513B1 (en) | Trusted modular firmware update using digital certificate | |
JP5357152B2 (ja) | 情報処理装置、情報処理方法、これらを実現するコンピュータプログラム及び集積回路 | |
US8479000B2 (en) | Information processing device, authentication system, authentication device, information processing method, information processing program, recording medium, and integrated circuit | |
US9680648B2 (en) | Securely recovering a computing device | |
JP5178341B2 (ja) | オプショナルなコンポーネントを伴うセキュアブートの方法 | |
JP5411122B2 (ja) | 情報処理装置 | |
US8732445B2 (en) | Information processing device, information processing method, information processing program, and integrated circuit | |
KR100998344B1 (ko) | 신뢰되는 모바일 전화들을 위한 크기조절 가능하고 구성가능한 간단한 보안 부트 | |
CN101578609B (zh) | 安全启动计算设备 | |
JP5530460B2 (ja) | セキュアブート方法およびセキュアブート装置 | |
US8392724B2 (en) | Information terminal, security device, data protection method, and data protection program | |
KR20110050488A (ko) | 티켓 인증 보안 설치 및 부트 | |
JP2009003853A (ja) | 複数のソフトウェアを正しい順番で起動する情報端末およびセキュリティモジュール | |
JP2012039390A (ja) | フレキシブル認証ルールの修正 | |
WO2020027159A1 (ja) | 情報処理装置、検証方法および検証プログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20110613 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20130702 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20130821 |
|
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: 20130910 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20131003 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5385148 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
LAPS | Cancellation because of no payment of annual fees |