(57)【特許請求の範囲】
【請求項１】
コンピュータの立上時でシステム起動前に当該コンピュータの直接的又は／及び間接的にＭＰＵ配下（以下「直接的又は／及び間接的にＭＰＵ配下」を単に「ＭＰＵ配下」という。）で利用可能とするチェック対象領域のハードウエアのセキュリティ情報を取得するセキュリティ情報取得部と、
コンピュータのＭＰＵ配下のハードウエアの正当性を認証するための情報である正当性認証情報を保持する正当性認証情報保持部と、
取得したセキュリティ情報と、保持されている正当性認証情報であって、コンピュータの設計時点でのＭＰＵ配下に置かれることが定まっているハードウエアの種類をすべて特定できる設計情報に基づくハードウエアの識別情報からなる正当性認証情報とを用いて、ハードウエアの正当性をチェックする正当性チェック部と、
正当性チェック部でのチェック結果がチェック対象領域内で全てのハードウエアについて正当であるとのチェック結果である場合にシステムの起動処理を続行させ、チェック対象領域内で全てのハードウエアについて正当であるとのチェック結果でない場合にはシステムの起動処理を続行させない起動処理続行中止部と、
コンピュータのＭＰＵ配下で利用可能とするチェック対象領域内で全てのハードウエアのセキュリティ情報を記録したＲＯＭからなるセキュリティ情報蓄積部を有し、
前記セキュリティ情報取得部は、セキュリティ情報蓄積部からセキュリティ情報を取得する
正当性認証起動管理システム。
【請求項２】
コンピュータの立上時でシステム起動前に当該コンピュータのＭＰＵの立上によって得られる当該ＭＰＵ配下で利用可能とするチェック対象領域内ですべてのハードウエアのセキュリティ情報に基づいたセキュリティ情報である立上時セキュリティ情報を取得する立上時セキュリティ情報取得部を有し、
前記正当性チェック部は、
前記セキュリティ情報蓄積部に蓄積されているセキュリティ情報と、立上時セキュリティ情報とに基づいて立上時セキュリティ情報の正当性をチェックする立上時正当性チェック手段を有する請求項１に記載の正当性認証起動管理システム。
【請求項３】
セキュリティ情報蓄積部に蓄積されているセキュリティ情報と、正当性認証情報保持部に保持されている正当性認証情報とを用いて蓄積されているセキュリティ情報の真正性をチェックする蓄積セキュリティ情報真正性判断部をさらに有する請求項１又は請求項２に記載の正当性認証起動管理システム。
【請求項４】
蓄積セキュリティ情報真正性判断部での判断結果が真正でないとの判断結果である場合には、セキュリティ情報取得部は、セキュリティ情報蓄積部からセキュリティ情報を取得しないように制御する取得制限部をさらに有する請求項３に記載の正当性認証起動管理システム。
【請求項５】
正当性認証情報保持部は、耐タンパ性領域内に正当性認証情報を保持する請求項１から請求項４のいずれか一に記載の正当性認証起動管理システム。
【請求項６】
セキュリティ情報取得部は、ＭＰＵ配下で利用可能なハードウエアであるＲＯＭ内に構成されている請求項１から請求項５のいずれか一に記載の正当性認証起動管理システム。
【請求項７】
正当性チェック部は、ＭＰＵ配下のハードウエアであるＲＯＭ内に構成されており、セキュリティ情報を耐タンパ性領域内の正当性認証情報保持部に送信し、その返信の内容に応じて正当性を認証する請求項５又は請求項５に従属する請求項６に記載の正当性認証起動管理システム。
【請求項８】
セキュリティ情報取得部が構成されているＲＯＭは耐タンパ性を有する請求項６又は請求項６に従属する請求項７に記載の正当性認証起動管理システム。
【請求項９】
正当性チェック部が構成されているＲＯＭは耐タンパ性を有する請求項７又は請求項７に従属する請求項８に記載の正当性認証起動管理システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ＭＰＵ配下の周辺ハードウエアや各種チップの正当性認証を行いオペレーティングシステムの起動を管理する技術に関する発明である。
【背景技術】
【０００２】
近年、コンピュータ内に製造者又は／及び使用者が把握していないプログラム（以下、「アンノウン」と呼ぶ）が組み込まれたハードウアや各種チップが組み込まれているという事件が発生している。このアンノウンの働きによって、使用者の利用履歴や通信履歴が無断で、かつ気づかれずに第三者に情報提供されていたり、通信傍受が行われていたり、不正なプログラム処理を引き起こしたりする事件が起きている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特願２００８−２２６１９１
【発明の概要】
【発明が解決しようとする課題】
【０００４】
先行技術では、センターサーバと遠距離通信を行うＰＣが正当なＰＣであるかを、遠距離通信を求めるプログラムの正当性テストを行うことによって認証する技術が示されている。当該技術では、当初より保有しているプログラムの書き換え、変更、破損等の齟齬を検出することが可能である。しかし、当該技術を用いても無断で追加された正体不明ハードウエアであるアンノウンの存在に気づくことはできなかった。【０００５】
追加的に紛れ込んでいるアンノウンを見つけだす方法としては、物理的にハードを解体して、基板をチェックする方法や、高額かつ複雑な演算式を必要とするチェックシステムを内部に組み込む、あるいは外部に設ける方法が考えられていた。しかし、そのいずれも商品として販売する前にハードを解体する必要があったり、部品交換時に追加的に紛れ込まされた場合には検出できなかったり、費用が高額すぎたり、と現実的ではなかった。【０００６】
そこで、コンピュータ内にアンノウンが追加的に紛れ込んでいることを発見することが可能であり、簡易かつ安価な方法が求められていた。
【課題を解決するための手段】
【０００７】
そこで、上記課題を解決するために、本発明において、以下の正当性認証起動管理システムを提供する。すなわち、第一の発明として、コンピュータの立上時でシステム起動前に当該コンピュータの直接的又は／及び間接的にＭＰＵ配下（以下「直接的又は／及び間接的にＭＰＵ配下」を単に「ＭＰＵ配下」という。）で利用可能とするチェック対象領域のハードウエアのセキュリティ情報を取得するセキュリティ情報取得部と、コンピュータのＭＰＵ配下のハードウエアの正当性を認証するための情報である正当性認証情報を保持する正当性認証情報保持部と、取得したセキュリティ情報と、保持されている正当性認証情報とを用いて、ハードウエアの正当性をチェックする正当性チェック部と、正当性チェック部でのチェック結果がチェック対象領域内で全てのハードウエアについて正当であるとのチェック結果である場合にシステムの起動処理を続行させ、チェック対象領域内で全てのハードウエアについて正当であるとのチェック結果でない場合にはシステムの起動処理を続行させない起動処理続行中止部と、を有する正当性認証起動管理システムを提供する。【０００８】
次に、第二の発明として、コンピュータのＭＰＵ配下で利用可能とするチェック対象領域内で全てのハードウエアのセキュリティ情報を記録したＲＯＭからなるセキュリティ情報蓄積部を有し、前記セキュリティ情報取得部は、セキュリティ情報蓄積部からセキュリティ情報を取得する第一の発明に記載の正当性認証起動管理システムを提供する。【０００９】
次に、第三の発明として、コンピュータの立上時でシステム起動前に当該コンピュータのＭＰＵの立上によって得られる当該ＭＰＵ配下で利用可能とするチェック対象領域内ですべてのハードウエアのセキュリティ情報に基づいたセキュリティ情報である立上時セキュリティ情報を取得する立上時セキュリティ情報取得部を有し、前記正当性チェック部は、前記セキュリティ情報蓄積部に蓄積されているセキュリティ情報と、立上時セキュリティ情報とに基づいて立上時セキュリティ情報の正当性をチェックする立上時正当性チェック手段を有する第二の発明に記載の正当性認証起動管理システムを提供する。【００１０】
次に、第四の発明として、セキュリティ情報蓄積部に蓄積されているセキュリティ情報と、正当性認証情報保持部に保持されている正当性認証情報とを用いて蓄積されているセキュリティ情報の真正性をチェックする蓄積セキュリティ情報真正性判断部をさらに有する第二の発明又は第三の発明に記載の正当性認証起動管理システムを提供する。【００１１】
次に、第五の発明として、蓄積セキュリティ情報真正性判断部での判断結果が真正でないとの判断結果である場合には、セキュリティ情報取得部は、セキュリティ情報蓄積部からセキュリティ情報を取得しないように制御する取得制限部をさらに有する第四の発明に記載の正当性認証起動管理システムを提供する。【００１２】
次に、第六の発明として、正当性認証情報保持部は、耐タンパ性領域内に正当性認証情報を保持する第一の発明から第五の発明のいずれか一に記載の正当性認証起動管理システムを提供する。【００１３】
次に、第七の発明として、セキュリティ情報取得部は、ＭＰＵ配下で利用可能なハードウエアであるＲＯＭ内に構成されている第一の発明から第六の発明のいずれか一に記載の正当性認証起動管理システムを提供する。【００１４】
次に、第八の発明として、正当性チェック部は、ＭＰＵ配下のハードウエアであるＲＯＭ内に構成されており、セキュリティ情報を耐タンパ性領域内の正当性認証情報保持部に送信し、その返信の内容に応じて正当性を認証する第六の発明又は第六の発明を基礎とする第七の発明に記載の正当性認証起動管理システムを提供する。【００１５】
次に、第九の発明として、セキュリティ情報取得部が構成されているＲＯＭは耐タンパ性を有する第七の発明又は第七の発明を基礎とする第八の発明に記載の正当性認証起動管理システムを提供する。【００１６】
次に、第十の発明として、正当性チェック部が構成されているＲＯＭは耐タンパ性を有する第八の発明又は第八の発明を基礎とする第九の発明に記載の正当性認証起動管理システムを提供する。【００１７】
次に、第十一の発明として、コンピュータのＭＰＵ配下のハードウエアの正当性を認証するための情報である正当性認証情報を各ハードウエアに対応して保持する正当性認証情報保持部、を有する正当性認証起動管理システムの動作方法であって、コンピュータの立上時でシステム起動前に当該コンピュータのＭＰＵ配下のハードウエアからセキュリティ情報を取得するセキュリティ情報取得ステップと、取得したセキュリティ情報と、保持されている正当性認証情報とを用いて、各ハードウエアの正当性をチェックする正当性チェックステップと、正当性チェック部でのチェック結果がチェック対象領域内ですべてのハードウエアについて正当であるとのチェック結果である場合にシステムの起動処理を続行させ、チェック対象領域内で全てのハードウエアについて正当であるとのチェック結果でない場合にはシステムの起動処理に移行させない起動処理続行中止ステップと、を有する正当性認証起動管理システムの動作方法を提供する。【００１８】
次に、第十二の発明として、コンピュータのＭＰＵ配下のハードウエアの正当性を認証するための情報である正当性認証情報を各ハードウエアに対応して保持する正当性認証情報保持部、を有する正当性認証起動管理システムの動作プログラムであって、コンピュータの立上時でシステム起動前に当該コンピュータのＭＰＵ配下のハードウエアからセキュリティ情報を取得するセキュリティ情報取得ステップと、取得したセキュリティ情報と、保持されている正当性認証情報とを用いて、各ハードウエアの正当性をチェックする正当性チェックステップと、正当性チェック部でのチェック結果がチェック対象領域内ですべてのハードウエアについて正当であるとのチェック結果である場合にシステムの起動処理を続行させ、チェック対象領域内で全てのハードウエアについて正当であるとのチェック結果でない場合にはシステムの起動処理に移行させない起動処理続行中止ステップと、を有する正当性認証起動管理システムの動作プログラムを提供する。
【発明の効果】
【００１９】
上記のような正当性認証起動管理システムを提供することによって、繰り返し可能であり、簡易かつ安価に、コンピュータ内にアンノウンが紛れ込んでいる場合にシステムの起動を中断することが可能となる。
【図面の簡単な説明】
【００２０】
【図１−ａ】正当なマザーボードのイメージ概念図
【図１−ｂ】アンノウンが紛れ込んだマザーボードのイメージ概念図
【図２】実施形態１の正当性認証起動管理システムの、構成の一例を示す機能ブロック図
【図３】正当性認証起動管理システムを搭載したコンピュータの起動時のハードウエア構成の一例を示す図
【図４】実施形態１の正当性認証起動管理システムの、ハードウエア構成の一例を示す図
【図５】正当性認証起動管理システムの上位概念的な処理の流れの一例を示す図
【図６】実施形態１の正当性認証起動管理システムの、処理の流れの一例を示すフロー図
【図７】実施形態２の正当性認証起動管理システムの、構成の一例を示す機能ブロック図
【図８】実施形態２の正当性認証起動管理システムの、ハードウエア構成の一例を示す図
【図９】実施形態２の正当性認証起動管理システムの、処理の流れの一例を示すフロー図
【図１０】実施形態３の正当性認証起動管理システムの、構成の一例を示す機能ブロック図
【図１１】実施形態３の正当性認証起動管理システムの、ハードウエア構成の一例を示す図
【図１２】実施形態３の正当性認証起動管理システムの、立上時セキュリティ情報の正当性チェックの方法の一例を概念的に示す図
【図１３】実施形態３の正当性認証起動管理システムの、処理の流れの一例を示すフロー図
【図１４】実施形態３のその他の実施形態１の正当性認証起動管理システムの、蓄積セキュリティ情報の真正性を判断する方法の一例を概念的に示す図
【図１５】実施形態３のその他の実施形態１の正当性認証起動管理システムの、構成の一例を示す機能ブロック図
【図１６】実施形態３のその他の実施形態１の正当性認証起動管理システムの、ハードウエア構成の一例を示す図
【図１７】実施形態３のその他の実施形態１の正当性認証起動管理システムの、処理の流れの一例を示すフロー図
【図１８】実施形態３のその他の実施形態２の正当性認証起動管理システムの、構成の一例を示す機能ブロック図
【図１９】実施形態３のその他の実施形態２の正当性認証起動管理システムの、ハードウエア構成の一例を示す図
【図２０】実施形態３のその他の実施形態２の正当性認証起動管理システムの、処理の流れの構成の一例を示す図
【図２１】実施形態４の正当性認証起動管理システムの、構成の一例を示す機能ブロック図
【図２２】実施形態５の正当性認証起動管理システムの、構成の一例を示す機能ブロック図
【図２３】実施形態６の正当性認証起動管理システムの、構成の一例を示す機能ブロック図
【図２４】実施形態７の正当性認証起動管理システムの、構成の一例を示す機能ブロック図
【図２５】実施形態８の正当性認証起動管理システムの、構成の一例を示す機能ブロック図
【００２１】
以下では、本発明の実施形態について、図を用いて説明する。以下の説明は、実施形態１は請求項１に、実施形態２は請求項２に、実施形態３は請求項３、請求項４、請求項５に、実施形態４は請求項６に、実施形態５は請求項７に、実施形態６は請求項８に、実施形態７は請求項９に、実施形態８は請求項１０に、実施形態９は請求項１１に、実施形態１０は請求項１２に、それぞれ対応する。なお、本発明の内容は、以下の実施例及び具体例にのみ限定されるものではなく、本発明の要旨を逸脱しない範囲内において種々変更を加え得る。【００２２】
＜実施形態１＞
＜実施形態１  概要＞
図１−ａ及び図１−ｂはマザーボード（０１００）を鳥瞰的に見た場合の概念図である。図１−ａは、各種ハードウエアが正当に配置されている状態を示している。図１−ｂでは、図１−ａと比較してハードウエア（０１０１）が１つ多くなっている。この０１０１で示されるハードウエアがアンノウンにあたる。アンノウンが紛れ込んだマザーボードでは、ＭＰＵ配下のハードウエア構成に正当性が認められない。
本実施形態における発明は、コンピュータ又はコンピュータの部分機能の立上時に、セキュリティ情報の正当性をチェックする手法を用いて、ＭＰＵ配下のチェック対象領域内で全てのハードウエアの正当性が認められた場合にのみシステムの起動を認める、正当性認証起動管理システムである。本明細書においては「ＭＰＵ配下」とは、前述の通りＭＰＵが直接的又は／及び間接的にアクセスして情報処理を行う地位にあることを言う。一般的にはボード上の管理プロセッサと、ボード上の情報処理チップとの関係やマザーボード上のチップセットを介して管理プロセッサと情報処理をおこなうものを言い、必ずしもマザーボードにボードが限定されるものでない。また「ＭＰＵ」とはＣＰＵ、ＧＰＵなどいわゆるプロセッサを言う。【００２３】
＜実施形態１  発明の構成＞
図２は本実施形態における正当性認証管理システムの最も基本的な構成の一例を示す機能ブロック図である。図に示す様に、セキュリティ情報取得部（０２０１）、正当性認証情報保持部（０２０２）、正当性チェック部（０２０３）、起動処理続行中止部（０２０４）と、からなる。【００２４】
本願発明は、コンピュータを立ち上げて通常の利用可能状態のシステムの起動前に、コンピュータのＭＰＵ配下にあるハードウエア構成の正当性を認証して、コンピュータのシステムの起動を管理する発明である。そこで、まずコンピュータのシステムの起動過程のどの段階において本願発明における認証及び管理を実行することが可能であるかを説明する。【００２５】
コンピュータは、電源が入れられるとフラッシュメモリ内に記録されているＢＡＳＩＣＩＮＰＵＴ／ＯＵＴＰＵＴ  ＳＹＳＴＥＭ（以下、「ＢＩＯＳ」と呼ぶ）等が起動することになる。ＢＩＯＳは最初に起動させられると、まずＭＰＵ配下のマザーボード上に配置されている各種ハードウエアやチップセットを介してＭＰＵと通信する各種ハードウエア、各ポートに繋がれている接続済み各種インターフェイスの接続の有無及び接続が正常であるかを確認する（power on self test）。その後、各種ハードウエアを動作可能とするための初期化処理を各マザーボード上の各種ハードウエア及びポート接続済み各種インターフェイスに命令する。その後起動ドライブをチェックする。以上が終了した場合には起動ドライブ（例えばＯＳのインストールされたハードディスクドライブ）からＢＩＯＳは起動プログラム（ブートストラップローダー）をメインメモリに展開し、制御をブートローダに渡す。ブートローダはＯＳをメインメモリに展開してＯＳを起動状態に導く。これによってコンピュータはシステム利用可能な状態となる。アプリケーションソフトウエア、コンピュータの各種機能、通信などが可能となる。なお、本願でコンピュータとは、パーソナルコンピュータ、ノートパソコン、タブレット端末、サーバ、大型コンピュータ、スマートフォン、携帯電話、モデム、ルーター、交換機、各種家電、ロボット、スマートメーター、工作機械、プラント制御機器、自動車、飛行機、船舶、現金自動支払機（ＡＴＭ）など各種のものを含む。
本願の発明はＢＩＯＳが各種接続チェック等を行って処理をブートローダーに引き渡す前、又は、ブートローダーがＯＳ等のシステム起動処理を続行中で完了前に行われ、終了するように構成される。【００２６】
ＢＩＯＳには、上記に記載した以上に機能があり、概ねのＢＩＯＳにとって共通となる処理を簡易的に表現すると上記のようになる。以下の説明では、便宜上本願発明の出願時点で最も一般的に汎用性コンピュータにおいて採用されている技術を具体例として説明を行うものの、具体例として利用する以外の現時点で知られている技術（例えば、Ｕｎｉｆｉｅｄ  Ｅｘｔｅｎｓｉｂｌｅ  Ｆｉｒｍｕａｒｅ  Ｉｎｔｅｒｆａｃｅ（以下では、「ＵＥＦＩ」という。）を用いたコンピュータ）はもちろんのこと、本願発明の原理が再現可能な将来的に開発される技術に対しても、本願発明は同様に機能する。したがって、下記の各実施形態（実施形態１から実施形態１２）の具体的な説明はＢＩＯＳを用いたコンピュータの起動以外の場合も当然に含むものである。【００２７】
なお、本願発明では特にマザーボード上に存在する、利用者が目視で異変に気付くことが出来ないアンノウンを検出することを特徴とすることから、下記では主題を明確化するためにマザーボード上の各種ハードウエアのみを具体例として挙げることとする。したがって、明細書中の具体例としてポートに接続されたインターフェイスに関しては記載しないものの、例えばキーボード中に隠されたアンノウンがキーボードのタイピングをスチールする（いわゆる「フィッシング行為」である）といった、ポートに接続されたインターフェイス内部に隠されたアンノウンの検出可能性を排除するものではなく、本システムを用いて起動管理を行うことで、ポートにインターフェイスを接続し、接続されたインターフェイスを接続元のコンピュータによって使用可能に起動処理をする際に、正当性認証及び起動管理を行うことも本願発明は含んでいる。このことは、実施形態１から実施形態１２について共通である。【００２８】
本願発明では、ＢＩＯＳが網羅的に各種ハードウエアから受信した信号（例えば、代表的なものとして起動シグナル等が考えられる。）に与えられている各種ハードウエアの種類を識別する種類識別番号等のセキュリティ情報（詳細は後述する）のリストを、正当性認証情報と比較等の処理をすることによって、ＭＰＵ下に配置されている各種ハードウエア構成の正当性認証を行うことが可能である。そして、正当性の認証が出来た場合には、コンピュータの起動処理を完了させ、正当性の認証が出来なかった場合には、コンピュータの起動処理を中止するという起動管理を行う。【００２９】
ＢＩＯＳがそもそも起動すべきハードウエアのリストを保持しておりそのリストに則って接続チェック等を行っている場合はハードウエアの構成の正当性を認証しているという考え方も可能であるが、ＢＩＯＳがそもそも所持しているリストが書き換えられている場合があり得る。従ってＢＩＯＳのみに構成の正当性を担保させることは危険である。【００３０】
＜実施形態１  構成の説明＞
＜実施形態１  セキュリティ情報取得部＞
「セキュリティ情報取得部」は、コンピュータの立上時でシステム起動前に当該コンピュータのＭＰＵ配下のハードウエアのセキュリティ情報を取得する。「セキュリティ情報」とは、ハードウエアが正当なハードウエアであるか否かを判断するために用いられる情報である。ハードウエアのセキュリティ情報は、特定のハードウエアに与えられた秘密キーのような識別情報、ハードウエアの種類識別情報、ハードウエアの固体識別情報、ハードウエア起動ステータス情報、等のハードウエアを特定することが可能なあらかじめ設定されているＭＰＵ配下のハードウエア間でユニークな情報である。一つの情報によって構成されていてもよいし、複数の情報を組み合わせて一つのセキュリティ情報として扱ってもよい。【００３１】
セキュリティ情報取得部がセキュリティ情報を取得する手段は本実施形態においては限定していない。例えば、ＭＰＵ配下のチェック対象領域内で全てのハードウエアから送信される等して取得する方法が考えられる。あるいは、本正当性認証起動管理システムを搭載しているコンピュータのＭＰＵ配下に置かれているチェック対象領域内で全部のハードウエアのセキュリティ情報を事前に登録しておき、それをセキュリティ情報取得部が取得する方法が考えられる。この他にも、考えられるセキュリティ情報を獲得可能な方法であれば、その方法は限定していない。
ここで「チェック対象領域」とは、コンピュータの設計思想によって範囲を限定できるが、基本的にはＢＩＯＳやＵＥＦＩによるシステムの起動処理によって最終的にシステムで利用可能となるように調整されるハードウエアの範囲を言う。ただし、利用可能となるように調整されるハードウエアの一部に限定してチェック対象領域を設定することも考えられる。【００３２】
＜実施形態１  正当性認証情報保持部＞
「正当性認証情報保持部」は、コンピュータのＭＰＵ配下のハードウエアの正当性を認証するための情報である正当性認証情報を保持する。「正当性認証情報」は、本正当性認証起動管理システムを搭載しているコンピュータの設計時点でのＭＰＵ配下に置かれることが定まっているハードウエアの種類を全て特定できる設計情報に基づくハードウエアの識別情報のようなものである。コンピュータのＭＰＵ配下に設計上収められるべきハードウエアを特定できる情報によって構成されている。例えば、ハードウエアの種類識別情報、ハードウエアの固体識別情報、ハードウエア起動ステータス情報、等のハードウエアを特定することが可能なあらかじめ設定されているユニークな情報によって構成することが考えられる。あるいは、各種の識別情報をハッシュ関数等に代入することで得られる解、全ての識別情報をまとめてハッシュ関数等に代入することで得られる解、識別情報を代入すべきハッシュ関数等、等のハードウエアを特定することが可能なあらかじめ設定されているユニークな情報をハッシュ関数等の関数に代入することで得られる解がこれにあたる。【００３３】
＜実施形態１  正当性チェック部＞
「正当性チェック部」は、取得したセキュリティ情報と、保持されている正当性認証情報とを用いて、ハードウエアの正当性をチェックする。先述のように、正当性認証情報は、本正当性起動管理システムを搭載しているコンピュータのＭＰＵ配下に収められるべきハードウエアの正当な設計情報に基づいて得られる特定の情報である。後からマザーボード等に挿入されたり、入れ替えて挿入されるハードウエアは、正当な設計情報に基づいてマザーボードに配置される物でないのでこれらアンノウンに関するセキュリティ情報は、正当性認証情報では認証されないことになる。この情報とセキュリティ情報を用いて、セキュリティ情報が正当な情報であるかを判断する過程を経て、ハードウエアの正当性をチェックする。【００３４】
セキュリティ情報が正当であるかをチェックする方法としては、例えば、正当性認証情報が本正当性起動管理システムを搭載しているコンピュータのＭＰＵ配下に収められるべきハードウエアの設計情報に基づくハードウエアの識別情報である場合には、セキュリティ情報と設計情報に基づくハードウエアの識別情報とが完全に一致しているか否かを比較することによって判断することができる。セキュリティ情報と設計情報に基づくハードウエアの識別情報が完全に一致している場合に、正当性が肯定される。一部が一致しない、あるいは設計情報に基づくハードウエアの識別情報は全て一致するが設計情報に基づくハードウエアの識別情報に含まれていないセキュリティ情報が含まれている場合には、正当性が否定される。【００３５】
あるいは、正当性認証情報が本正当性起動管理システムを搭載しているコンピュータのＭＰＵ配下に収められるべきハードウエアの設計時情報とユニークに対応する情報である場合（例えば設計時情報として正当なハードウエアの全識別情報の総和のハッシュ値など）には、ユニークに対応する情報を生成したと同じ処理をハードウエアから得られるセキュリティ情報を用いて行い、その結果を比較することによって判断することができる。【００３６】
セキュリティ情報（ハードウエア識別情報）が大きな値である場合には正当性認証情報は、各セキュリティ情報のハッシュ値であってもよい。この場合には各ハードウエアから得られるセキュリティ情報をハッシュ関数に取り込んで生成された値と正当性認証情報を比較することで一つ一つのハードウエアの正当性が認証される。【００３７】
ハードウエアの正当性を一つ一つ認証する場合には正当性が認証できなかったハードウエアのみを利用不能としてシステムを立ち上げる構成を採用することも可能である。このケースを本明細書ではシステムの起動処理が一部続行されない状態であるのでシステムの起動処理を続行させない処理と称することとする。【００３８】
＜実施形態１  起動処理続行中止部＞
「起動処理続行中止部」は、正当性チェック部でのチェック結果が全てのハードウエアについて正当であるとのチェック結果である場合にシステムの起動処理を続行させ、全てのハードウエアについて正当であるとの結果でない場合にはシステムの起動処理を続行させないという処理を行う。例えば、正当性のチェックの結果が全て正当である場合には、起動処理続行中止部は起動処理の中止処理を行わないことでシステムの起動を続行させる。正当性のチェックの結果、正当性が否定された場合には、起動処理続行中止部は起動処理を中止する命令を出し、起動処理を中止するという構成が考えられる。あるいは、例えば、正当性のチェック結果が全て正当である場合には、起動処理続行中止部が起動続行命令を出し起動処理を続行させ、正当性のチェック結果が全て正当であるとの結果ではない場合には、起動処理続行中止部が起動処理命令をだすことで起動処理を中止させるという構成も考えられる。
なお前述の通り正当性が認証されないハードウエアが特定できる場合にはそのハードウエアについてのみ起動処理の続行を中止する場合も本願明細書に言う起動処理の続行中止に該当するものとする。【００３９】
＜実施形態１  ハードウエア構成＞
＜実施形態１  ハードウエア構成  基本構造＞
図３は本システムを搭載したコンピュータの起動後のハードウエア構成の状態を概念的に示す例図である。この図にあるように本発明は、基本的にコンピュータとプログラム（ＢＩＯＳ、ＯＳを含む）、各種マザーボード上のデバイス、ポートを介してＭＰＵ配下に加わる各種インターフェイスデバイス、で構成することが可能である。【００４０】
各種マザーボード上のデバイスとしては、ＢＩＯＳ  ＲＯＭ（０３０１）、メモリカード（０３０２）、メインメモリ（０３０３）、フラッシュメモリ（０３０４）、クロックジェネレータ（０３０５）、ＳＡＴＡコネクタ（０３０６）、ネットワークコントローラチップ（０３０７）、サウンドコントローラチップ（０３０８）、ディスプレイコントローラチップ（０３０９）、グラフィックスプロセッシングユニット（０３１０）、ポート８０ディスプレイ（０３１１）、チップセット（０３１２：チップセット内に、前出のネットワークコントローラチップ、サウンドコントローラチップ、ディスプレイコントローラチップ等のチップが集約されている場合がある）、その他の各種拡張カード（０３１３：例えば、ＰＣＩ−Ｅｘｐｒｅｓｓ等のグラフィックスカード等）、ハードディスクドライブ（０３１４：多くのコンピュータではＯＳはチップセット下のハードディスクドライブに配置されているため、図ではチップセット下にハードディスクドライブが配置しているが、ＭＰＵ直下、チップセット下のいずれにも配置可能である。）等が不揮発性メモリに保持され、メインメモリにロードされ、一連のプログラム実行に際して参照され、利用される。【００４１】
インターフェイスデバイスとしては、通信デバイス、キーボード、ディスプレイ、マウス、図示していないがマイク、スピーカー、ＵＳＢメモリ等の外接メモリ、光学ドライバ、磁気ドライバ、スキャナ、プリンタ、カメラ、等が挙げられる。【００４２】
コンピュータの動作は基本的に不揮発性メモリ（フラッシュメモリ・ハードディスクドライブ、外接メモリ等も含む）に記録されているプログラムやデータをメインメモリにロードして、メインメモリとＭＰＵ（例えばＣＰＵ、ＧＰＵ等）と各種ハードウエアで処理を実行していく形態をとる。ハードウエアとの通信は、バス線と繋がったインターフェイスを介して行われる。【００４３】
この図にあるように本正当性認証起動管理システムでは、コンピュータのシステムの起動前の処理を対象としていることから、ＭＰＵ（０３１５）配下でコンピュータのシステム起動後に利用される不揮発性メモリ（０３１６）に記憶されている各種プログラム（０３１７）は、この段階ではメインメモリ（０３１８）に展開されることがない。メインメモリに展開されているのは、フラッシュメモリ上から読み出し可能なＢＩＯＳが各種ハードドライブ（図中の例示では、メモリカード、メインメモリ、フラッシュメモリ、クロックジェネレータ、ＳＡＴＡコネクタ、ネットワークコントローラチップ、サウンドコントローラチップ、ディスプレイコントローラチップ、グラフィックスプロセッシングユニット、ポート８０ディスプレイ、チップセット、拡張カード、ハードディスクドライブがこれに該当する）、及び、ポートに繋がれた各種インターフェイス（図中の例示では、通信デバイス、キーボード、ディスプレイ、マウス）から取得した起動シグナルに従って取得される各種ハードウエアのデバイスドライブ（０３１９）である。特に、ＯＳを記憶しているハードディスクドライブからは、ブートローダ（０３１９）が取得されメインメモリに展開される。メインメモリは、展開されたブートローダの起動プログラムに従い、ＯＳを起動してＯＳを起動状態として、各種ハードウエアをＯＳの管理下とする。以上のハードウエア構成の基本構造については、本正当性認証起動管理システムの全ての実施形態（実施形態１から実施形態１２の全て）について共通する。【００４４】
＜実施形態１  ハードウエア構成  本システムがＢＩＯＳ配下にあることについて＞
図４は、実施形態１における正当性認証起動管理システムのハードウエア構成の一例を示す図である。本実施形態における本正当性認証起動管理システムは、ＯＳの起動前の処理を問題としていることから、その時点で起動状態にあるＢＩＯＳの配下にプログラム（本実施形態では：セキュリティ情報取得プログラム、正当性チェックプログラム、起動処理続行中止プログラム、を少なくとも有する。）が位置しており、これらのプログラムは、ＭＰＵが処理可能にＢＩＯＳによってメインメモリに展開される。さらに、各種情報もＢＩＯＳによってメインメモリに展開されるように構成してもよい。あるいはＭＰＵが直接ＢＩＯＳ配下の本システムを構成するハードウエア中の情報にアクセスするように構成することもできる。【００４５】
あるいは、本正当性認証起動管理システムのためのファームウエアやＯＳ（便宜上、以後「サブＯＳ」と呼ぶことにする）構築し、サブＯＳを起動させた後に、サブＯＳの管理のもとに本正当性認証起動管理システムを実行するように構成することも可能である。【００４６】
＜実施形態１  ハードウエア構成  正当性認証起動管理システムのプログラム及び情報の説明＞
「セキュリティ情報取得プログラム」は、セキュリティ情報を取得する。セキュリティ情報の取得元は、限定していない。
「正当性チェックプログラム」は、セキュリティ情報と正当性認証情報とを用いてＭＰＵ配下のハードウエアの正当性を認証する。
「起動処理続行中止プログラム」は、正当性チェック部の正当性チェック結果に応じて、正当性が認められた場合には起動処理の続行を中止せず、正当性が認められなかった場合には起動処理の続行を中止する。
展開された上記各プログラムは順次又は常時実行される。なお、本正当性認証起動管理システムの実行の際に参照されるデータとしては、セキュリティ情報、正当性認証情報、正当性判断結果、中止命令、図示しない通信など各種の設定情報等が保持され、ＢＩＯＳの管理の下（あるいはサブＯＳの管理の下）メインメモリにロードされ、正当性認証起動管理システムのプログラム実行に際して参照され、利用される。【００４７】
＜実施形態１  処理の流れ＞
図５は、実施形態１の上位概念的な処理フロー図である。この図に示すように、コンピュータの立上時でシステム起動前に当該コンピュータのＭＰＵ配下のハードウエアのセキュリティ情報を取得する「セキュリティ情報取得ステップ」（０５０１）、取得したセキュリティ情報の正当性をチェックする「正当性チェックステップ」（０５０２）、セキュリティ情報正当性チェックの結果が正当であるか否かを判断する「セキュリティ情報正当性チェック結果判断部」（０５０３）、正当性チェック部でのチェック結果が全てのハードウエアについて正当であるとのチェック結果でない場合にはシステムの起動処理を続行させない「起動処理続行中止ステップ」（０５０４）、正当性チェック結果が全てのハードウエアについて正当であるとのチェック結果である場合にシステムの起動処理を続行させる「起動処理続行ステップ」（０５０５）と、を少なくとも実行する。【００４８】
図６は、実施形態１のより具体的な処理の流れの一例を示す図である。この図に示すように、コンピュータの立上時でシステム起動前に当該コンピュータのＭＰＵ配下のハードウエアのセキュリティ情報を取得する「セキュリティ情報取得ステップ」（０６０１）、セキュリティ情報は各ハードウエアごとに取得することから、全てのハードウエアからセキュリティ情報の取得が完了したかを確認する「セキュリティ情報取得完了判断ステップ」（０６０２）、取得したセキュリティ情報の正当性をチェックする「正当性チェックステップ」（０６０３）、セキュリティ情報正当性チェックの結果が正当であるか否かを判断する「セキュリティ情報正当性チェック結果判断ステップ」（０６０４）、正当性チェック部でのチェック結果が全てのハードウエアについて正当であるとのチェック結果でない場合にはシステムの起動処理を続行させない「起動処理続行中止ステップ」（０６０５）、正当性チェック結果が全てのハードウエアについて正当であるとのチェック結果である場合にシステムの起動処理を続行させる「起動処理続行ステップ」（０６０６）と、を少なくとも実行する。【００４９】
＜実施形態２＞
＜実施形態２  概要＞
本実施形態における発明は、実施形態１に記載する発明であって、セキュリティ情報をセキュリティ情報蓄積部から取得されたセキュリティ情報を利用して、本正当性認証起動管理システムを搭載したパソコンのＭＰＵ配下に配置されたハードウエアの正当性認証を行う。【００５０】
＜実施形態２  発明の構成＞
図７は、実施形態２における正当性認証起動管理システムの最も基本的な構成の一例を示す機能ブロック図である。図に示す様に、セキュリティ情報蓄積部（０７０１）、セキュリティ情報取得部（０７０２）、正当性認証情報保持部（０７０３）、正当性チェック部（０７０４）、起動処理続行中止部（０７０５）と、からなる。以下では、実施形態１との共通の構成についての説明は省略し、本実施形態に特有の構成について説明をする。【００５１】
＜実施形態２  セキュリティ情報蓄積部＞
「セキュリティ情報蓄積部」は、セキュリティ情報を記録したＲＯＭからなる。ＲＯＭはＲＥＡＤ  ＯＮＬＹ  ＭＥＭＯＲＹの略であり、読み出しはできるものの、原則的には上書きしたり削除したりすることができない。また不揮発性メモリであり、電源の供給を必要とせずに情報を記録しておくことが可能である。【００５２】
セキュリティ情報蓄積部に蓄積されているセキュリティ情報は、本正当性認証起動管理システムを搭載したコンピュータのＭＰＵ配下に配置されるハードウエアの設計情報に基づくハードウエアの識別情報とも呼べる収納すべきハードウエアのリストによって構成されている。セキュリティ情報として保持されるハードウエアのリストは、本正当性認証起動管理システムを搭載するハードウエアの設計情報に基づいて登録する内容を定める。セキュリティ情報であるハードウエアのリストは、ＭＰＵ配下にある全てのハードウエアに関するリストであることが好ましいが、一部のリストとすることも可能である。一部のリストとした場合には、リスト化していない部分にアンノウンが存在している、あるいは書き換えられている可能性が残ることから、本システムを利用した認証結果への信用性は低下する。【００５３】
＜実施形態２  セキュリティ情報取得部＞
本実施形態のセキュリティ情報取得部は、コンピュータの立上時でシステム起動前に当該コンピュータのＭＰＵ配下のハードウエアのセキュリティ情報をセキュリティ情報取得部から取得する。コンピュータを起動すると、起動準備として各種のハードウエアが立ち上がる。各種ハードウエアの立上の前か、同時化、後か、そのタイミングがシステム管理者による設計事項であるが、遅くともコンピュータの起動が完了する前に、セキュリティ情報蓄積部からセキュリティ情報取得部に対してセキュリティ情報が送信される。セキュリティ情報取得部が取得するセキュリティ情報は、セキュリティ情報蓄積部が蓄積しているセキュリティ情報を含むものであるから、後続する正当性チェックの段階で設計時のハードウエア構成の設計事項を示すハードウエアのリストの正当性のチェックが行われることになる。【００５４】
＜実施形態２  ハードウエア構成＞
図８は、実施形態２の最も基本的なハードウエア構成の一例を示す図である。図に示す各種ハードウエア（メモリカード、メインメモリ、フラッシュメモリ、クロックジェネレータ、ＳＡＴＡコネクタ、ネットワークコントローラチップ、サウンドコントローラチップ、ディスプレイコントローラチップ、グラフィックスプロセッシングユニット、ポート８０ディスプレイ、チップセット、拡張カード、ハードディスクドライブ）、ＭＰＵ、不揮発性メモリ、メインメモリ、ＢＩＯＳ、インターフェイスの基本的な構造については、実施形態１で説明してあるので省略する。【００５５】
＜実施形態２  ハードウエア構成  本システムがＢＩＯＳ配下にあることについて＞
図８に示す様に、本正当性認証起動管理システムは、ＯＳの起動前の処理を問題としていることから、その時点で起動状態にあるＢＩＯＳの配下にプログラム（本実施形態では：セキュリティ情報取得プログラム、正当性チェックプログラム、起動処理続行中止プログラム、を少なくとも有する。）が位置しており、これらのプログラムは、ＭＰＵが処理可能にＢＩＯＳによってメインメモリに展開される。さらに、各種情報もＢＩＯＳによってメインメモリに展開されるように構成してもよい。あるいはＭＰＵが直接ＢＩＯＳ配下の本システムを構成するハードウエア中の情報にアクセスするように構成することもできる。【００５６】
あるいは、本正当性認証起動管理システムのためのファームウェアやＯＳ（便宜上、以後「サブＯＳ」と呼ぶことにする）構築し、サブＯＳを起動させた後に、サブＯＳの管理のもとに本正当性認証起動管理システムを実行するように構成することも可能である。【００５７】
＜実施形態２  ハードウエア構成  正当性認証起動管理システムのプログラム及び情報の説明＞
実施形態１と共通の処理を実行するプログラムとして、「正当性チェックプログラム」、「起動処理続行中止プログラム」がある。プログラムの機能については、実施形態１と同様であるから、説明を省略する。
実施形態２に特徴的なプログラムとして、「セキュリティ情報取得プログラム」を有する。
「セキュリティ情報取得プログラム」は、コンピュータの立上時でシステム起動前に当該コンピュータのＭＰＵ配下のハードウエアのセキュリティ情報をセキュリティ情報蓄積部から取得するためのプログラムである。セキュリティ情報蓄積部は、セキュリティ情報を記憶しているＲＯＭ等のメモリそのものあるいはメモリ内に存在している領域のことをいう。セキュリティ情報取得プログラムは、セキュリティ情報蓄積部にアクセスしてセキュリティ情報を取得して、メインメモリにセキュリティ情報を展開する。
展開された上記各プログラムは順次又は常時実行される。なお、本正当性認証起動管理システムの実行の際に参照されるデータとしては、セキュリティ情報、正当性認証情報、正当性判断結果、中止命令、図示しない通信など各種の設定情報等が保持され、ＢＩＯＳの管理の下（あるいはサブＯＳの管理の下）メインメモリにロードされ、正当性認証起動管理システムのプログラム実行に際して参照され、利用される。【００５８】
＜実施形態２  処理の流れ＞
図９は、実施形態２の最も基本的な構成の処理の流れを示す図である。この図に示すように、コンピュータの立上時でシステム起動前に当該コンピュータのＭＰＵ配下のハードウエアのセキュリティ情報をセキュリティ情報蓄積部から取得する「セキュリティ情報蓄積部からセキュリティ情報取得ステップ」（０９０１）、「正当性チェックステップ」（０９０２）、「セキュリティ情報チェック結果判断ステップ」（０９０３）、「起動処理続行中止ステップ」（０９０４）、「起動処理続行ステップ」（０９０５）と、を少なくとも実行する。実施形態１と共通の処理を行うステップについては、実施形態１にて既に説明済みであることから、説明を省略した。【００５９】
＜実施形態３＞
＜実施形態３  概要＞
本実施形態における発明は、実施形態２に記載する発明の特徴に加えて、コンピュータの立上時でシステム起動前に当該コンピュータのＭＰＵの立上によって得られる当該ＭＰＵ配下のハードウエアのセキュリティ情報に基づいたセキュリティ情報である立上時セキュリティ情報を利用して、正当性認証起動管理を行うことを特徴とする。【００６０】
＜実施形態３  発明の構成＞
図１０は、本実施形態における正当性認証起動管理システムの最も基本的な発明の構成の一例を示す機能ブロック図である。図に示す様に、セキュリティ情報取得部（１００１）、セキュリティ情報蓄積部（１００２）、立上時セキュリティ情報取得部（１００３）、正当性認証情報保持部（１００４）、正当性チェック部（１００５）、立上時正当性チェック手段（１００６）、起動処理続行中止部（１００７）と、からなる。以下では、実施形態２との共通の構成についての説明は省略し、本実施形態に特徴的な構成についてのみ説明する。【００６１】
＜実施形態３  構成の説明＞
＜実施形態３  立上時セキュリティ情報取得部＞
「立上時セキュリティ情報取得部」は、コンピュータの立上時でシステム起動前に当該コンピュータのＭＰＵの立ち上がりによって得られる当該ＭＰＵ配下のハードウエアのセキュリティ情報に基づいたセキュリティ情報である立上時セキュリティ情報を取得する。立上時セキュリティ情報としては、ハードウエアの種類ごとに与えられている種類識別情報、各ハードウエアの個体ごとに与えられている個体識別情報、等が考えられる。あるいは、本正当性認証起動管理システムにおいてセキュリティ情報として認証可能なユニークな番号として与える識別情報であってもよい。【００６２】
立上時セキュリティ情報を取得する方法としては、ＢＩＯＳが各ハードウエアから起動のための起動シグナル等を受信する際に、これに関連付けてあるいはこれに含まれる情報として取得する方法が考えられる。立上時セキュリティ情報をＢＩＯＳが取得すると、ＢＩＯＳは立上時セキュリティ情報を獲得した順にメモリ領域に書き込むことで、立上時セキュリティ情報のリストを生成する。このとき立上時セキュリティ情報のリストを生成するメモリは、メインメモリであってもよいし、そのほかの立上時セキュリティ情報を記憶するための記憶領域を設ける構成となっていてもよい。あるいは、ＢＩＯＳが存在しているチップ上のキャッシュメモリとして構成されていてもよい。なお、立上時セキュリティ情報のリストは、立上の都度認証に利用するリストであり、立上の都度獲得されるべき情報であることから、コンピュータの起動時にのみ記憶される一時的な記録として記憶可能なように構成されていれば足りる。【００６３】
＜実施形態３  立上時正当性チェック手段＞
「立上時正当性チェック手段」は、セキュリティ情報であって、セキュリティ情報蓄積部に蓄積されているセキュリティ情報と、立上時セキュリティ情報とに基づいて立上時セキュリティ情報の正当性をチェックする。図１１は、立上時正当性チェック手段によるチェック方法を概念的に示した図である。図に示す様に、立上時セキュリティ情報と蓄積セキュリティ情報とを用いて、立上時セキュリティ情報の正当性を判断する。立上時セキュリティ情報は、上述のようにコンピュータの立上時にＭＰＵ配下に配置されている各種ハードウエアを識別するための情報としてＢＩＯＳ等の各種ハードウエアの起動を管理制御するハードウエアによって獲得される。立上時正当性情報は、ＭＰＵ配下にあるコンピュータ内の情報やコンピュータの動作に関連するハードウエアの網羅的なリストといえる。したがって、立上時正当性チェック手段によって立上時セキュリティ情報の正当性をチェックすることによって、ＭＰＵ配下にある各種ハードウエアが設計者の設計意図に沿った構成となっているか否かを判断することが可能となる。【００６４】
＜実施形態３  ハードウエア構成＞
図１１は、実施形態３の最も基本的なハードウエア構成の一例を示す図である。図に示す各種ハードウエア（メモリカード、メインメモリ、フラッシュメモリ、クロックジェネレータ、ＳＡＴＡコネクタ、ネットワークコントローラチップ、サウンドコントローラチップ、ディスプレイコントローラチップ、グラフィックスプロセッシングユニット、ポート８０ディスプレイ、チップセット、拡張カード、ハードディスクドライブ）、ＭＰＵ、不揮発性メモリ、メインメモリ、ＢＩＯＳ、インターフェイスの基本的な構造については、実施形態１で説明してあるので省略する。【００６５】
＜実施形態３  ハードウエア構成  本システムがＢＩＯＳ配下にあることについて＞
図１２に示す様に、本正当性認証起動管理システムは、ＯＳの起動前の処理を問題としていることから、その時点で起動状態にあるＢＩＯＳの配下にプログラム（本実施形態では：セキュリティ情報取得プログラム、正当性チェックプログラム、立上時セキュリティ情報取得プログラム、立上時正当性チェックプログラム、起動処理続行中止プログラム、を少なくとも有する。）が位置しており、これらのプログラムは、ＭＰＵが処理可能にＢＩＯＳによってメインメモリに展開される。さらに、各種情報もＢＩＯＳによってメインメモリに展開されるように構成してもよい。あるいはＭＰＵが直接ＢＩＯＳ配下の本システムを構成するハードウエア中の情報にアクセスするように構成することもできる。【００６６】
あるいは、本正当性認証起動管理システムのためのファームウェアやＯＳ（便宜上、以後「サブＯＳ」と呼ぶことにする）構築し、サブＯＳを起動させた後に、サブＯＳの管理のもとに本正当性認証起動管理システムを実行するように構成することも可能である。【００６７】
＜実施形態３  ハードウエア構成  正当性認証起動管理システムのプログラム及び情報の説明＞
実施形態１と共通の処理を実行するプログラムとして、「セキュリティ情報取得部」「起動処理続行中止プログラム」がある。プログラムの機能については、実施形態と２同様であるから、説明を省略する。
実施形態３に特徴的なプログラムとして、「立上時セキュリティ情報取得部」「正当性チェック部」「立上時正当性チェック手段」、を有する。
「立上時セキュリティ情報取得部」は、コンピュータの立上時でシステム起動前に当該コンピュータのＭＰＵの立上によって得られる当該ＭＰＵ配下のハードウエアのセキュリティ情報に基づいたセキュリティ情報である立上時セキュリティ情報を取得する。立上時セキュリティ情報は、当該コンピュータのＭＰＵ配下のハードウエアの全部または一部のセキュリティ情報から取得される。
「正当性チェック部」は、セキュリティ情報蓄積部に蓄積されているセキュリティ情報と、立上時セキュリティ情報と、正当性認証情報とに基づいて、正当性チェックを行う。
「立上時正当性チェック手段」は、セキュリティ情報蓄積部に蓄積されているセキュリティ情報と、立上時セキュリティ情報とに基づいて立上時セキュリティ情報の正当性をチェックする。
展開された上記各プログラムは順次又は常時実行される。なお、本正当性認証起動管理システムの実行の際に参照されるデータとしては、セキュリティ情報、正当性認証情報、正当性判断結果、立上時セキュリティ情報、立上時正当性チェック結果、中止命令、図示しない通信など各種の設定情報等が保持され、ＢＩＯＳの管理の下（あるいはサブＯＳの管理の下）メインメモリにロードされ、正当性認証起動管理システムのプログラム実行に際して参照され、利用される。【００６８】
＜実施形態３  処理の流れ＞
図１３は、実施形態３の最も基本的な構成の処理の流れを示す図である。この図に示すように、「セキュリティ蓄積部からセキュリティ情報取得ステップ」（１３０１）、立上時セキュリティ情報を取得するための「立上時セキュリティ情報取得ステップ」（１３０２）、「正当性チェックステップ」（１３０３）、蓄積されているセキュリティ情報と立上時セキュリティ情報とに基づいて立上時セキュリティ情報の正当性を認証するための「立上時正当性チェックサブステップ」（１３０４）、立上時正当性チェック結果が正当であるか否かを判断する「立上時セキュリティ情報チェック結果判断ステップ」（１３０５）、立上時セキュリティ情報のチェック結果として立上時セキュリティ情報が正当であった場合に、正当性認証結果が正当であるか否かを判断する「セキュリティチェック結果判断ステップ」（１３０６）、立上時セキュリティ情報のチェック結果において正当性が認証されなかった場合、又は、セキュリティ情報の正当性チェック結果において正当性が認証されなかった場合に「起動処理続行中止ステップ」（１３０７）、セキュリティ情報の正当性チェック結果において正当性が認証された場合に「起動処理続行ステップ」（１３０８）と、を少なくとも実行する。実施形態と共通の処理を行うステップについては、実施形態１又は実施形態２にて既に説明済みであることから、説明を省略した。【００６９】
＜実施形態３  その他の実施形態１：蓄積セキュリティ情報の真正を担保する＞
＜実施形態３  その他の実施形態１：概要＞
図１４に概念的に示す様に、本実施形態は実施形態３の構成に加えて、蓄積セキュリティ情報の真正性を正当性認証情報を用いたチェックによって担保する構成である。【００７０】
＜実施形態３  その他の実施形態１：構成＞
図１５は、その他の実施形態１における構成の一例を示す機能ブロック図である。図に示す様に、セキュリティ情報蓄積部（１５０１）、セキュリティ情報取得部（１５０２）、蓄積セキュリティ情報真正性判断部（１５０３）、正当性認証情報保持部（１５０４）、正当性チェック部（１５０５）、起動処理続行中止部（１５０６）と、からなる。以下では、他の実施形態と共通の構成についての説明は省略し、本実施形態に特徴的な構成についてのみ説明をする。【００７１】
＜実施形態３  その他の実施形態１：構成の説明＞
＜実施形態３  その他の実施形態１  構成の説明：蓄積セキュリティ情報真正性判断部＞
「蓄積セキュリティ情報真正性判断部」は、セキュリティ情報蓄積部に蓄積されているセキュリティ情報と、正当性認証情報保持部に保持されている正当性認証情報とを用いて蓄積されているセキュリティ情報の真正性をチェックする。【００７２】
蓄積セキュリティ情報の真正性を担保する方法としては、図１４に示すように、蓄積セキュリティ情報を正当性認証情報を用いてチェックする方法が考えられる。
具体的には、例えば、まずセキュリティ情報取得部がセキュリティ情報蓄積部に蓄積されたセキュリティ情報を取得する。取得したセキュリティ情報の内容が正当であるかを正当性認証情報を用いて判断し、セキュリティ情報蓄積部に蓄積されているセキュリティ情報が確かに設計者の意図に沿った設計事項を内容とするハードウエア構成を示すリストであることを認証する。このようにして、正当性認証情報を用いてセキュリティ情報蓄積部に蓄積されているセキュリティ情報の真正をチェックする方法が考えられる。【００７３】
蓄積セキュリティ情報の真正性のチェック後、上述の実施形態３同様に、真正性を認証されたセキュリティ情報と立上時セキュリティ情報を関連付けて処理して、立上時正当性チェック結果を取得する。セキュリティ情報蓄積部に蓄積されているセキュリティ情報と立上時セキュリティ情報の間に完全一致しているという立上時正当性チェック結果が認められる場合にのみ、正当性が認証されるという正当性認証結果が得られる。【００７４】
このように立上時セキュリティ情報を間接的にチェックすることは一見して直接的にチェックすることと比べて余計な時間を費やするかのような印象を与えるが、それは違う。立上時セキュリティ情報は、ＭＰＵ配下のハードウエアから毎回ランダムな順番で送られてくるのでランダムに到達した各ハードウエアのセキュリティ情報をソートして予め予定されている順に並べてから正当性認証情報保持部に保持されている正当性認証情報を用いた正当性の認証を行わなければならない。特に、正当性認証情報保持部に保持された正当性認証情報が順に並べられたセキュリティ情報を用いた特定のハッシュ関数に用ハッシュ値との比較によって行われる場合にはこの要請が必須となる。そこで本実施形態のような構成をとることにより、予め定められた順に並んだセキュリティ情報蓄積部に蓄積されたセキュリティ情報の真正性をチェックし、この真正性が認められたセキュリティ情報と、立上時セキュリティとを比較する演算を行う。この演算は特に秘匿性が高く堅牢に守られている正当性認証情報を用いた演算よりも演算負荷が軽くなる。つまりそれほど秘匿性が要求されない計算処理によって演算できるからである。従ってこの計算は高速で可能であり、全体として演算速度が速くできるという効果を有する。【００７５】
蓄積されているセキュリティ情報の正当性をチェックするためのハッシュ演算は正当性認証情報保持部に正当性認証情報とともに保持されているものを利用することができる。つまり正当セ認証情報保持部から外部にハッシュ関数を取り出し、そのハッシュ関数を用いて蓄積されているセキュリティ情報のハッシュ値を得る。このように構成するとハッシュ関数の改竄を防ぐことができるので安全性が高まる。【００７６】
なお、セキュリティ情報のハッシュ演算は必ずしも１回で処理する必要はなく、複数回に分けて処理してもよい。このようにハッシュ演算をブロック化した複数のセキュリティ情報に分けて処理すると、ＭＰＵ配下のどのハードウエアのブロックで正当性が認められなかったかを判別することができ、その後の処理の最適化を図ることができる場合がある。例えば一部のブロックでは正当性が認証されなかったために起動処理の続行を中止し、他の正当性が認められたブロックでは起動処理を続行する、という対策をとることができる。【００７７】
蓄積されているセキュリティ情報の真正性の判断は、ハッシュ関数を利用する場合の他に暗号化の結果を比較する手法も考えられる。正当性認証情報は設計者の意図に沿った設計事項を内容とするハードウエア構成情報を特定のキーを用いて暗号化した場合に得られる暗号情報として構成しておき、セキュリティ情報蓄積部に蓄積されているセキュリティ情報に暗号情報を作成するのと同様の暗号キーを用いて暗号化した暗号化セキュリティ情報を獲得して、正当性認証情報と暗号化セキュリティ情報を比較することによって両者が完全に一致した場合にのみ、セキュリティ情報の真正を認証する構成が考えられる。【００７８】
本実施形態における正当性認証起動管理システムは、コンピュータの電源をいれてから、立上が完了するまでの間に行われる処理であり、ハッシュ演算や暗号化に要する時間はすなわちダイレクトにコンピュータの立上に要する時間として反映されることになる。【００７９】
＜実施形態３  その他の実施形態１：ハードウエア構成＞
図１６は、その他の実施形態１のハードウエア構成の一例を示す図である。図に示す各種ハードウエア（メモリカード、メインメモリ、フラッシュメモリ、クロックジェネレータ、ＳＡＴＡコネクタ、ネットワークコントローラチップ、サウンドコントローラチップ、ディスプレイコントローラチップ、グラフィックスプロセッシングユニット、ポート８０ディスプレイ、チップセット、拡張カード、ハードディスクドライブ）、ＭＰＵ、不揮発性メモリ、メインメモリ、ＢＩＯＳ、インターフェイスの基本的な構造については、実施形態１で説明してあるので省略する。【００８０】
＜実施形態３  その他の実施形態１：ハードウエア構成  本システムがＢＩＯＳ配下にあることについて＞
本正当性認証起動管理システムは、ＯＳの起動前の処理を問題としていることから、その時点で起動状態にあるＢＩＯＳの配下にプログラム（本実施形態では：セキュリティ情報取得プログラム、蓄積セキュリティ情報真正判断プログラム、正当性チェックプログラム、起動処理続行中止プログラム、を少なくとも有する。）が位置しており、これらのプログラムは、ＭＰＵが処理可能にＢＩＯＳによってメインメモリに展開される。さらに、各種情報もＢＩＯＳによってメインメモリに展開されるように構成してもよい。あるいはＭＰＵが直接ＢＩＯＳ配下の本システムを構成するハードウエア中の情報にアクセスするように構成することもできる。【００８１】
あるいは、本正当性認証起動管理システムのためのファームウェアやＯＳ（便宜上、以後「サブＯＳ」と呼ぶことにする）構築し、サブＯＳを起動させた後に、サブＯＳの管理のもとに本正当性認証起動管理システムを実行するように構成することも可能である。【００８２】
＜実施形態３  その他の実施形態１：ハードウエア構成  正当性認証起動管理システムのプログラム及び情報の説明＞
図１６に示す様に、他の実施形態との共通の処理を実行するプログラムとして、「セキュリティ情報取得プログラム」、「正当性チェックプログラム」、「起動処理続行中止プログラム」がある。プログラムの機能については、他の実施形態と同様であるから、説明を省略する。
その他の実施形態１に特徴的なプログラムとして、「蓄積セキュリティ情報真正性判断プログラム」を有する。
「蓄積セキュリティ情報真正性判断プログラム」は、セキュリティ情報蓄積部に蓄積されているセキュリティ情報と、正当性認証情報保持部に保持されている正当性認証情報とを用いて蓄積されているセキュリティ情報の真正性をチェックする。
展開された上記各プログラムは順次又は常時実行される。なお、本正当性認証起動管理システムの実行の際に参照されるデータとしては、セキュリティ情報、正当性認証情報、真正判断結果、正当性判断結果、中止命令、図示しない通信など各種の設定情報等が保持され、ＢＩＯＳの管理の下（あるいはサブＯＳの管理の下）メインメモリにロードされ、正当性認証起動管理システムのプログラム実行に際して参照され、利用される。【００８３】
＜実施形態３  その他の実施形態１：処理の流れ＞
図１７は、その他の実施形態１の最も基本的な構成の処理の流れを示す例図である。この図に示すように、蓄積セキュリティ情報の真正性をチェックるすための「蓄積セキュリティ情報真正性判断ステップ」（１７０１）、蓄積セキュリティ情報判断ステップの判断結果が真正であるか否かをチェックする「蓄積セキュリティ情報チェック結果真正性判断ステップ」（１７０２）、蓄積セキュリティ情報の真正判断結果が真正である場合には「セキュリティ情報蓄積部からセキュリティ情報取得ステップ」（１７０３）、「正当性チェックステップ」（１７０４）、セキュリティ情報正当性チェック結果が正当か否かを判断する「セキュリティ情報正当性チェック結果判断ステップ」（１７０５）、蓄積セキュリティ情報の真正判断結果が真正ではない場合、又は、セキュリティ情報の正当性が認証されなかった場合に「起動処理続行中止ステップ」（１７０６）、正当性が認証された場合に「起動処理続行ステップ」（１７０７）と、を少なくとも実行する。他の実施形態と共通の処理を行うステップについては、説明を省略した。【００８４】
＜実施形態３  その他の実施形態２：概要＞
その他の実施形態１で記載したように、蓄積セキュリティ情報の真正性をチェックした時、蓄積セキュリティ情報が真正ではないというチェック結果が得られた場合に、セキュリティ情報取得部による蓄積セキュリティ情報の取得を制御して取得させないようにして、この段階でシステムの起動を中止する構成である。【００８５】
＜実施形態３  その他の実施形態２：発明の構成＞
図１８は、その他の実施形態２における正当性認証起動管理システムの最も基本的な構成の一例を示す機能ブロック図である。図に示す様に、セキュリティ情報蓄積部（１８０１）、セキュリティ情報取得部（１８０２）、蓄積セキュリティ情報真正性判断部（１８０３）、取得制限部（１８０４）、正当性認証情報保持部（１８０５）、正当性チェック部（１８０６）、起動処理続行中止部（１８０７）と、からなる。以下では、他の実施形態と共通の構成についての説明は省略し、本実施形態に特有の構成について説明をする。【００８６】
＜実施形態３  その他の実施形態２：構成の説明＞
＜実施形態３  その他の実施形態２  構成の説明：取得制御部＞
「取得制御部」は、蓄積セキュリティ情報真正性判断部での判断結果が真正でないとの判断結果である場合」には、セキュリティ情報取得部がセキュリティ情報蓄積部からセキュリティ情報を取得しないように制御する。取得制限部がセキュリティ情報取得部によるセキュリティ情報の取得を制限する方法としては、取得制限部がセキュリティ情報取得部に対して取得処理の中止を指示する中止命令を出力する方法が考えられる。あるいは、取得制限部が取得指示を出したときにのみセキュリティ情報取得部がセキュリティ情報を取得するように構成し、取得制限部がセキュリティ情報取得部に対してセキュリティ情報の取得指示を出さないことによって取得を制限するように構成してもよい。【００８７】
取得制限部を構成することによって、仮に蓄積セキュリティ情報が真正でない場合には、真正性のチェック以降起動のための処理を進行させる必要がなく、取得制限部がない場合よりもより早期にコンピュータの起動処理の続行の中止を行う。【００８８】
＜実施形態３  その他の実施形態２：ハードウエア構成＞
図１９は、その他の実施形態２の最も基本的なハードウエア構成の一例を示す図である。図に示す各種ハードウエア（メモリカード、メインメモリ、フラッシュメモリ、クロックジェネレータ、ＳＡＴＡコネクタ、ネットワークコントローラチップ、サウンドコントローラチップ、ディスプレイコントローラチップ、グラフィックスプロセッシングユニット、ポート８０ディスプレイ、チップセット、拡張カード、ハードディスクドライブ）、ＭＰＵ、不揮発性メモリ、メインメモリ、ＢＩＯＳ、インターフェイスの基本的な構造については、実施形態１で説明してあるので省略する。【００８９】
＜実施形態３  その他の実施形態２  ハードウエア構成  本正当性認証起動管理システムがＢＩＯＳ配下にあることについて＞
本正当性認証起動管理システムは、ＯＳの起動前の処理を問題としていることから、その時点で起動状態にあるＢＩＯＳの配下にプログラム（本実施形態では：セキュリティ情報取得プログラム、蓄積セキュリティ情報真正判断プログラム、取得制御プログラム、正当性チェックプログラム、起動処理続行中止プログラム、を少なくとも有する。）が位置しており、これらのプログラムは、ＭＰＵが処理可能にＢＩＯＳによってメインメモリに展開される。さらに、各種情報もＢＩＯＳによってメインメモリに展開されるように構成してもよい。あるいはＭＰＵが直接ＢＩＯＳ配下の本システムを構成するハードウエア中の情報にアクセスするように構成することもできる。【００９０】
あるいは、本正当性認証起動管理システムのためのファームウェアやＯＳ（便宜上、以後「サブＯＳ」と呼ぶことにする）構築し、サブＯＳを起動させた後に、サブＯＳの管理のもとに本正当性認証起動管理システムを実行するように構成することも可能である。【００９１】
＜実施形態３  その他の実施形態２  ハードウエア構成  正当性認証起動管理システムのプログラム及び情報の説明＞
その他の実施形態１との共通の処理を実行するプログラムとして、「セキュリティ情報取得プログラム」、「蓄積セキュリテ情報真正性判断プログラム」、「正当性チェックプログラム」、「起動処理続行中止プログラム」がある。プログラムの機能については、実施形態４と同様であるから、説明を省略する。
その他の実施形態２に特徴的なプログラムとして、「取得制限プログラム」を有する。
「取得制限プログラム」は、蓄積セキュリティ情報真正性判断部での判断結果が真正でないとの判断結果である場合には、セキュリティ情報取得部は、セキュリティ情報蓄積部からのセキュリティ情報を取得しないように制御する。
展開された上記各プログラムは順次又は常時実行される。なお、本正当性認証起動管理システムの実行の際に参照されるデータとしては、セキュリティ情報、正当性認証情報、真正判断結果、取得制御指示、正当性判断結果、中止命令、図示しないバス線通信など各種の設定情報等が保持され、ＢＩＯＳの管理の下（あるいはサブＯＳの管理の下）メインメモリにロードされ、正当性認証起動管理システムのプログラム実行に際して参照され、利用される。【００９２】
＜実施形態３  その他の実施形態２  処理の流れ＞
図２０は、その他の実施形態２の処理の流れを示す例図である。この図に示すように、「蓄積セキュリティ情報真正性判断ステップ」（２００１）、蓄積セキュリティ情報真正性判断結果判断ステップ」（２００２）、蓄積セキュリティ情報の真正性が認められない場合にセキュリティ情報取得部がセキュリティ情報を取得することを制限する「取得制御ステップ」（２００３）、蓄積セキュリティ情報の真正性が認められる場合には「セキュリティ情報蓄積部からセキュリティ情報取得ステップ」（２００４）、「正当性チェックステップ」（２００５）、正当性チェック結果が正当であるか否かを判断する「正当性チェック結果判断ステップ」（２００６）、正当性が認証されなかった場合に「起動処理続行中止ステップ」（２００７）、正当性が認証された場合に「起動処理続行ステップ」（２００８）と、を少なくとも実行する。他の実施形態との共通の処理を行うステップについては説明を省略した。【００９３】
＜実施形態４＞
＜実施形態４  概要＞
本実施形態における発明は、実施形態１から実施形態３に記載した特徴に加えて、正当性認証情報が耐タンパ性領域に保持されていることを特徴とする。【００９４】
＜実施形態４  発明の構成＞
図２１は本実施形態における正当性認証管理システムの最も基本的な構成の一例を示す機能ブロック図である。図に示す様に、セキュリティ情報取得部（２１０１）、正当性認証情報保持部（２１０２）、正当性チェック部（２１０３）、起動処理続行中止部（２１０４）と、からなり、正当性認証情報保持部は耐タンパ領域内に正当性認証情報を保持している（２１０５）。以下では、実施形態１から実施形態３のいずれかに記載の発明と共通の構成についての説明は省略し、本実施形態に特徴的な構成についてのみ説明する。【００９５】
＜実施形態４  構成の説明＞
＜実施形態４  耐タンパ領域＞
「耐タンパ領域」とは、耐タンパ性を有する領域である。一般的に、耐タンパ性を有する代表的なハードウエアとしては、耐タンパ性チップが用いられてきた。しかし、耐タンパ性チップは、保存可能なデータ領域が非常に小さく、処理速度が遅かった。そこで、正当性認証情報をそのままのデータ量で収納することが出来ない事態も想定可能であるし、耐タンパ性チップに保存されている正当性認証情報を正当性認証情報保持部から正当性チェック部に出力する場合に、数秒の時間を要する可能性があり、これに本システムの正当性認証から起動管理までに要する時間が起動時間全体に及ぼす影響割合が大きくなってくる。そこで、耐タンパ性チップではなく、耐タンパ領域を仮想的に作り、耐タンパ領域内に正当性認証情報を保存することによって、大きな容量の情報を保存可能とし、しかも通信速度は耐タンパ性がない状態のものとそれほど変わらないようにすることが可能となる。【００９６】
ここで、耐タンパ性とは、外部からの観測や解析により暗号鍵などの機密情報や情報の処理過程、プログラムなどを抜き取ったり、動作に干渉してデータやプログラムを改竄されることのような、非正規な手段による解析や干渉に耐えられる強さをいう。耐タンパ性チップでは、特殊なパッケージに封入して開けると内部が破壊される仕組み、空気や光を検知して自動的に半導体メモリの内容が消去される仕組み、動作を解析されることを防ぐために消費電力や処理時間の変動を一定に保つ仕組み、等によって耐タンパ性を実現している。ソフトウェアの場合には、プログラムを暗号化して正規の実行時のみ復号して実行するような仕組み、プログラムを難解にしてリバースエンジニアリング等を用いても動作を解析されにくい仕組み、ハッシュ値などを利用した改竄検知の仕組み等によって耐タンパ性を実現している。【００９７】
本実施形態では、耐タンパ性領域に記録されている情報、例えば正当性認証情報やハッシュ関数は外部から読み取れるが外部から改ざんされない、破壊されない、という機能を耐タンパ性という場合があり、また、単に改ざんされない、破壊されないだけでなく、内部の情報を外部から読み取れないという機能を耐タンパ性と呼ぶ場合がある。前者の場合は改ざんされることがない正当性認証情報やハッシュ関数は耐タンパ性領域から取り出した直後には正当なものであることが保証され、耐タンパ領域外でこれらの情報や関数を利用しても正しい処理ができる。後者の場合にはさらに堅牢であって耐タンパ領域に外部からチェックすべき情報例えばセキュリティ情報を取得して、耐タンパ領域内でその正当性をチェックして外部にその結果を出力することでハードウエアの正当性をチェックする。前者よりも後者の方がより堅牢ではあるが、耐タンパ性のチップは一般に高価であり、そのためにできるだけ容量を小さくし、機能も低く抑制したいという要請があるために前者の構成によって正当性をチェックすることに十分なコストパフォーマンスが得られる。【００９８】
＜実施形態４  ハードウエア構成＞
実施形態４のハードウエア構成の一例は、実施形態１から実施形態３のいずれかに記載のハードウエア構成の例と一致する。したがって、実施形態１から実施形態３のいずれかにおいて既に説明済みであることから、本実施形態では説明を省略する。【００９９】
＜実施形態４  処理の流れ＞
実施形態４の正当性認証起動管理システムの処理の流れの一例は、実施形態１から実施形態３のいずれかに記載の処理の流れの例と一致する。したがって、実施形態１から実施形態３のいずれかにおいて既に説明済みであることから、本実施形態では説明を省略する。【０１００】
＜実施形態５＞
＜実施形態５  概要＞
本実施形態における発明は、実施形態１から実施形態４のいずれかに記載の発明の特徴に加えて、ＭＰＵ配下のハードウエアであるＲＯＭ内にセキュリティ情報取得部が構成されていることを特徴とする。ここで構成されているとは、その構成を読みだしてメインメモリに展開することで実行可能な状態にあることをいう。【０１０１】
＜実施形態５  発明の構成＞
図２２は本実施形態における正当性認証管理システムの最も基本的な構成の一例を示す機能ブロック図である。図に示す様に、セキュリティ情報取得部（２０２０１）、正当性認証情報保持部（２２０２）、正当性チェック部（２２０３）、起動処理続行中止部（２２０４）と、からなり、政党制認証情報保持部は耐タンパ性領域（２２０５）内に保持されており、セキュリティ情報取得部は、ＭＰＵ配下のハードウエアであるＲＯＭ内（２２０６）に構成されている。以下では、実施形態１から実施形態４のいずれかに記載の発明と共通の構成についての説明は省略し、本実施形態に特徴的な構成についてのみ説明する。【０１０２】
＜実施形態５  構成の説明＞
前述のように、ＲＯＭは読み込みしかできないことから、ＲＯＭに記憶した情報は、原則的にはＲＯＭ自体を交換しない限りは、内容を書き換えられることがない。なおＲＯＭの他に演算回路を配置してメインメモリに展開しないでセキュリティ情報取得処理を行うように構成してもよい。この場合に取得されたセキュリティ情報はメインメモリに展開して処理してもよいし、さらに別途演算用にメモリを準備してその場所を使って正当性の認証の演算処理をするように構成してもよい。【０１０３】
＜実施形態５  ハードウエア構成＞
実施形態５のハードウエア構成の一例は、実施形態１から実施形態４のいずれかに記載のハードウエア構成の例と一致する。したがって、実施形態１から実施形態４のいずれかにおいて既に説明済みであることから、本実施形態では説明を省略する。【０１０４】
＜実施形態５  処理の流れ＞
実施形態５の正当性認証起動管理システムの処理の流れの一例は、実施形態１から実施形態４のいずれかに記載の処理の流れの例と一致する。したがって、実施形態１から実施形態４のいずれかにおいて既に説明済みであることから、本実施形態では説明を省略する。【０１０５】
＜実施形態６＞
＜実施形態６  概要＞
本実施形態における発明は、実施形態４又は実施形態４を基礎とする実施形態５に記載の発明の特徴に加えて、正当性チェック部がＲＯＭ内に構成されており、セキュリティ情報を耐タンパ性領域内の正当性認証情報保持部に送信し、その返信内容に応じて正当性を認証することを特徴とする。ここで正当性チェック部がＲＯＭ内に構成されているとは前述と同様に、その構成を読みだしてメインメモリに展開することで実行可能な状態にあることをいう。なおＲＯＭの他に演算回路を配置してメインメモリに展開しないで正当性チェック処理を行うように構成してもよい。この場合に取得された正当性認証情報と取得したセキュリティ情報はメインメモリに展開して処理してもよいし、さらに別途演算用にメモリを準備してその場所を使って正当性の認証の演算処理をするように構成してもよい。【０１０６】
＜実施形態６  発明の構成＞
図２３は本実施形態における正当性認証管理システムの最も基本的な構成の一例を示す機能ブロック図である。図に示す様に、セキュリティ情報取得部（２３０１）、正当性認証情報保持部（２３０２）、正当性チェック部（２３０３）、起動処理続行中止部（２３０４）と、からなり、正当性認証情報保持部は耐タンパ領域内に正当性認証情報を保持しており（２３０５）、かつ、正当性チェック部がＲＯＭ内（２３０６）に構成されている。以下では、実施形態４又は実施形態４を基礎とする実施形態５に記載の発明と共通の構成についての説明は省略し、本実施形態に特徴的な構成についてのみ説明する。【０１０７】
＜実施形態６  ハードウエア構成＞
実施形態６のハードウエア構成の一例は、実施形態４又は実施形態４を基礎とする実施形態５に記載のハードウエア構成の例と一致する。したがって、実施形態４又は実施形態４を基礎とする実施形態５において既に説明済みであることから、本実施形態では説明を省略する。【０１０８】
＜実施形態６  処理の流れ＞
実施形態６の正当性認証起動管理システムの処理の流れの一例は、実施形態４又は実施形態４を基礎とする実施形態５に記載の処理の流れの例と一致する。したがって、実施形態４又は実施形態４を基礎とする実施形態５において既に説明済みであることから、本実施形態では説明を省略する。【０１０９】
＜実施形態７＞
＜実施形態７  概要＞
本実施形態における発明は、実施形態５または実施形態５を基礎とする実施形態６に記載の発明の特徴に加えて、セキュリティ情報取得部が構成されているＲＯＭが耐タンパ性を有することを特徴とする発明である。【０１１０】
＜実施形態７  発明の構成＞
図２４は本実施形態における正当性認証管理システムの最も基本的な構成の一例を示す機能ブロック図である。図に示す様に、セキュリティ情報取得部（２４０１）、正当性認証情報保持部（２４０２）、正当性チェック部（２４０３）、起動処理続行中止部（２４０４）と、からなり、正当性認証情報保持部は耐タンパ領域内に正当性認証情報を保持しており（２４０５）、正当性チェック部がＲＯＭ内に存在しており（２４０６）、セキュリティ情報取得部は、ＭＰＵ配下のハードウエアであるＲＯＭ内（２４０７）に構成されており、かつ耐タンパ性領域（２４０８）である。以下では、実施形態５又は実施形態５を基礎とする実施形態６のいずれかに記載の発明と共通の構成についての説明は省略し、本実施形態に特徴的な構成についてのみ説明する。【０１１１】
＜実施形態７  ハードウエア構成＞
実施形態７のハードウエア構成の一例は、実施形態５又は実施形態５を基礎とする実施形態６に記載のハードウエア構成の例と一致する。したがって、実施形態５又は実施形態５を基礎とする実施形態６のいずれかにおいて既に説明済みであることから、本実施形態では説明を省略する。【０１１２】
＜実施形態７  処理の流れ＞
実施形態７の正当性認証起動管理システムの処理の流れの一例は、実施形態５又は実施形態５を基礎とする実施形態６のいずれかに記載の処理の流れの例と一致する。したがって、実施形態５又は実施形態５を基礎とする実施形態６のいずれかにおいて既に説明済みであることから、本実施形態では説明を省略する。【０１１３】
＜実施形態８＞
＜実施形態８  概要＞
本実施形態における発明は、実施形態６又は実施形態６を基礎とする実施形態７に記載の発明の特徴に加えて、正当性チェック部が構成されているＲＯＭが耐タンパ性を有することを特徴とする発明である。【０１１４】
＜実施形態８  発明の構成＞
図２５は本実施形態における正当性認証管理システムの最も基本的な構成の一例を示す機能ブロック図である。図に示す様に、セキュリティ情報取得部（２５０１）、正当性認証情報保持部（２５０２）、正当性チェック部（２５０３）、起動処理続行中止部（２５０４）と、からなり、正当性認証情報保持部は耐タンパ領域内に正当性認証情報を保持しておりる（２５０５）、正当性チェック部がＲＯＭ内（２５０６）に存在しており、かつ正当性チェック部が構成されているＲＯＭが耐タンパ性（２５０７）を有する。以下では、実施形態６又は実施形態６に従属する実施形態７に記載の発明と共通の構成についての説明は省略し、本実施形態に特徴的な構成についてのみ説明する。【０１１５】
＜実施形態８  ハードウエア構成＞
実施形態８のハードウエア構成の一例は、実施形態６又は実施形態６を基礎とする実施形態７に記載のハードウエア構成の例と一致する。したがって、実施形態６又は実施形態６を基礎とする実施形態７において既に説明済みであることから、本実施形態では説明を省略する。【０１１６】
＜実施形態８  処理の流れ＞
実施形態８の正当性認証起動管理システムの処理の流れの一例は、実施形態６又は実施形態６の基礎とする実施形態７に記載の処理の流れの例と一致する。したがって、実施形態６又は実施形態６を基礎とする実施形態７において既に説明済みであることから、本実施形態では説明を省略する。【０１１７】
＜実施形態９＞
＜実施形態９  概要＞
本実施形態は、正当性認証起動管理システムの動作方法に関するものである。【０１１８】
＜実施形態９  発明の構成＞
図５は、本実施形態における正当性認証起動管理システムの動作方法の構成の一例を示す図である。図に示す様に、正当性認証起動管理システムの動作方法は、セキュリティ情報取得ステップ（０５０１）、正当性チェックステップ（０５０２）、セキュリティ情報正当性判断ステップ（０５０３）、判断ステップの結果に応じて、起動処理続行中止スッテプ（０５０４）又は起動処理続行ステップ（０５０５）のいずれかのステップを選択するように構成されている。【０１１９】
＜実施形態９  構成の説明＞
各ステップで行われる処理は、実施形態１から実施形態３のいずれか一に記載の処理の流れにおいて説明済みであり、さらに詳細な働きについては、実施形態１から実施形態３において各処理を行う構成部の説明として説明済みであることから、本実施形態では説明を省略する。【０１２０】
＜実施形態１０＞
＜実施形態１０  概要＞
本実施形態は、正当性認証起動管理システムの動作プログラムに関するものである。【０１２１】
＜実施形態１０  発明の構成＞
図５は、本実施形態における正当性認証起動管理システムの動作プログラムの構成の一例を示す図である。図に示す様に、正当性認証起動管理システムの動作プログラムは、セキュリティ情報取得ステップ（０５０１）、正当性チェックステップ（０５０２）、セキュリティ情報正当性判断ステップ（０５０３）、判断ステップの結果に応じて、起動処理続行中止スッテプ（０５０４）又は起動処理続行ステップ（０５０５）のいずれかのステップを選択するように構成されている。【０１２２】
＜実施形態１０  構成の説明＞
各ステップで行われる処理を実行するプログラムは、セキュリティ情報取得プログラム、正当性チェックプログラム、起動処理続行中止プログラムである。各プログラムの働きについては、実施形態１から実施形態３のいずれか一に記載のハードウエア構成において説明済みであり、さらに詳細な働きについては、実施形態１から実施形態３において各処理を行う構成部の説明として説明済みであることから、本実施形態では説明を省略する。
【符号の説明】
【０１２３】
０１００  マザーボード
０１０１  アンノウン
０２０１  セキュリティ情報取得部
０２０２  正当性認証情報保持部
０２０３  正当性チェック部
０２０４  起動処理続行中止部
【要約】
コンピュータ内にアンノウンが追加的に紛れ込んでいることを発見する方法が求められていた。そこで、コンピュータの立上時でシステム起動前に当該コンピュータのＭＰＵ配下のハードウエアのセキュリティ情報に基づいたセキュリティ情報を取得するセキュリティ情報取得部と、コンピュータのＭＰＵ配下のハードウエアの正当性を認証するための情報である正当性認証情報を保持する正当性認証情報保持部と、取得したセキュリティ情報と、保持されている正当性認証情報とを用いて、ハードウエアの正当性をチェックする正当性チェック部と、正当性チェック部でのチェック結果が全てのハードウエアについて正当であるとのチェック結果である場合にシステムの起動処理を続行させ、全てのハードウエアについて正当であるとのチェック結果でない場合にはシステムの起動処理を続行させない起動処理続行中止部と、を有する正当性認証起動管理システムを提供する。
【選択図】図３【図１−ａ】
0006564549.tif 000002
【図１−ｂ】
0006564549.tif 000003
【図２】
0006564549.tif 000004
【図３】
0006564549.tif 000005
【図４】
0006564549.tif 000006
【図５】
0006564549.tif 000007
【図６】
0006564549.tif 000008
【図７】
0006564549.tif 000009
【図８】
0006564549.tif 000010
【図９】
0006564549.tif 000011
【図１０】
0006564549.tif 000012
【図１１】
0006564549.tif 000013
【図１２】
0006564549.tif 000014
【図１３】
0006564549.tif 000015
【図１４】
0006564549.tif 000016
【図１５】
0006564549.tif 000017
【図１６】
0006564549.tif 000018
【図１７】
0006564549.tif 000019
【図１８】
0006564549.tif 000020
【図１９】
0006564549.tif 000021
【図２０】
0006564549.tif 000022
【図２１】
0006564549.tif 000023
【図２２】
0006564549.tif 000024
【図２３】
0006564549.tif 000025
【図２４】
0006564549.tif 000026
【図２５】
0006564549.tif 000027