Login| Sign Up| Help| Contact|

Patent Searching and Data


Title:
TERMINAL DEVICE AND SOFTWARE INSPECTING METHOD
Document Type and Number:
WIPO Patent Application WO/2008/096891
Kind Code:
A1
Abstract:
A terminal device is provided with a first domain for executing a plurality of softwares, and a second domain which operates independently from the first domain and inspects whether the softwares are safe or not. The second domain is provided with an execution order storage section, which stores the execution priority order of the softwares to be executed by the first domain; a software inspecting section which inspects whether the softwares are safe or not in accordance with the execution order storage section; and an execution limiting section which limits execution to be performed by the first domain of the software among the plurality of softwares from which unsafe inspection results are obtained, before finishing all the inspections of the plurality of softwares.

Inventors:
OHTA KEN
OGUMA HISASHI
Application Number:
PCT/JP2008/052276
Publication Date:
August 14, 2008
Filing Date:
February 12, 2008
Export Citation:
Click for automatic bibliography generation   Help
Assignee:
NTT DOCOMO INC (JP)
OHTA KEN
OGUMA HISASHI
International Classes:
G06F21/12; G06F21/51
Domestic Patent References:
WO2005096121A12005-10-13
WO2000072149A12000-11-30
Foreign References:
US6263431B12001-07-17
EP1703430A12006-09-20
JP2006018528A2006-01-19
JP2007031380A2007-02-08
Other References:
OHTA K.: "Trusted Device Framework for Secure Handset Functionality Extension", INFORMATION PROCESSING SOCIETY OF JAPAN KENKYU HOKOKU, IPSJ SIG TECHNICAL REPORTS, vol. 2005, 23 February 2005 (2005-02-23), pages 49 - 56, XP008116260
Attorney, Agent or Firm:
MIYOSHI, Hidekazu et al. (2-8 Toranomon 1-chome,Minato-k, Tokyo 01, JP)
Download PDF:
Claims:
 複数のソフトウエアを実行する第1ドメインと、前記第1ドメインと独立して動作し、前記複数のソフトウエアの各々が安全か否かを検査する第2ドメインとを備え、
 前記第2ドメインは、
 前記第1ドメインによって実行される前記複数のソフトウエアの実行優先順序を記憶する実行順序記憶部と、
 前記実行順序記憶部に記憶されている前記実行優先順序に従って、前記複数のソフトウエアが安全であるか否かを検査するソフトウエア検査部と、
 前記複数のソフトウエアの内、安全ではないという検査結果が得られたソフトウエアの前記第1ドメインによる実行を、前記複数のソフトウエアの全ての検査が完了する前に制限する実行制限部と
を備えることを特徴とする端末装置。
 前記実行順序記憶部は、前記第1ドメインを識別する第1ドメイン識別情報又は前記第2ドメインを識別する第2ドメイン識別情報のいずれか一つと、前記複数のソフトウェアの各々とを対応付けて記憶し、
 前記第2ドメインの前記ソフトウェア検査部は、前記実行優先順序に従って、前記第2ドメイン識別情報に対応付けて記憶されているソフトウェアが安全であるか否かを検査し、
 前記第1ドメインは、
 前記第1ドメイン識別情報に対応付けて記憶されているソフトウェアが安全であるか否かを検査するサブソフトウェア検査部を備えることを特徴とする請求項1に記載の端末装置。
 前記実行順序記憶部は、前記端末装置の起動時と前記端末装置の起動後との少なくとも一方のタイミングを示すタイミング情報と、前記複数のソフトウェアの各々とを対応付けて記憶し、
 前記ソフトウェア検査部と前記サブソフトウェア検査部とは、前記タイミング情報によって示されるタイミングに従って、前記ソフトウェアが安全であるか否かを検査することを特徴とする請求項2に記載の端末装置。
 前記第2ドメインは、
 前記複数のソフトウエアの内、前記ソフトウエア検査部において安全であることが確認されたソフトウエアの識別情報を記憶する安全ソフトウエアリストを更に備え、
 前記第1ドメインは、所定のソフトウェアを実行する前に、前記所定のソフトウェアの識別情報が前記安全ソフトウェアリストに記憶されているか否かを判定し、前記所定のソフトウェアの識別情報が前記安全ソフトウェアリストに記憶されていない場合、前記所定のソフトウェアの実行を制限することを特徴とする請求項1乃至3のいずれか1項に記載の端末装置。
 前記複数のソフトウエアには、前記第1ドメインによって常に実行される第1ソフトウエアと、所定の頻度で実行される第2ソフトウエアとが含まれており、
 前記実行順序記憶部は、前記第2ソフトウエアの前記実行優先順序よりも前記第1ソフトウエアの前記実行優先順序を優先して記憶しており、
 前記ソフトウエア検査部は、前記実行優先順序に従って、前記第2ソフトウエアよりも前記第1ソフトウエアを優先して安全か否かを検査する
ことを特徴とする請求項1乃至4のいずれか1項に記載の端末装置。
 前記第2ドメインは、
 前記第1ドメインによって実行される前記第2ソフトウエアの実行頻度を取得する実行頻度取得部と、
 取得された前記実行頻度と前記第2ソフトウエアとを対応付けて記憶する実行頻度記憶部とを更に備え、
 前記ソフトウエア検査部は、前記実行頻度記憶部に記憶されている前記実行頻度を前記実行優先順序として、前記第2ソフトウエアが安全であるか否かを検査する
ことを特徴とする請求項5に記載の端末装置。
 前記第2ドメインは、
 前記複数のソフトウエアの内、前記ソフトウエア検査部において安全でないことが確認されたソフトウエアの識別情報を記憶する非安全ソフトウエアリストを更に備える
ことを特徴とする請求項1乃至6のいずれか1項に記載の端末装置。
 前記ソフトウエア検査部は、所定の期間毎に、前記複数のソフトウエアが安全であるか否かを検査する
ことを特徴とする請求項1乃至7のいずれか1項に記載の端末装置。
 前記第1ドメインは、前記複数のソフトウエアの内、検査されたソフトウエアの検査結果を要求する結果要求情報を送信し、
 前記第2ドメインは、
 前記第1ドメインから前記結果要求情報を受信した際に、前記安全ソフトウエアリストに記憶されている前記識別情報と前記非安全ソフトウエアリストに記憶されている前記識別情報とを含む結果応答情報を前記第1ドメインに送信する結果通知部を更に備え、
 前記第1ドメインは、前記結果通知部から受信した前記結果応答情報をに基づいて、前記ソフトウエア検査部によって安全が確認された前記ソフトウエアのみを実行する
ことを特徴とする請求項7に記載の端末装置。
 前記第2ドメインは、
 前記第1ドメインから前記ソフトウエアの検査を要求する検査要求情報を受信する要求受付部を更に備え、
 前記第1ドメインは、前記結果通知部から通知された前記結果応答情報に、今から実行を開始する特定のソフトウエアの識別情報が含まれていない場合、前記特定のソフトウエアの検査を要求する前記検査要求情報を前記要求受付部に送信し、
 前記要求受付部は、前記検査要求情報を受信した際に前記ソフトウエア検査部が前記特定のソフトウエアとは異なる他のソフトウエアを検査中であった場合、前記他のソフトウエアの検査を中断させ、
 前記ソフトウエア検査部は、前記特定のソフトウエアを優先して、前記特定のソフトウエアが安全であるか否かを検査する
ことを特徴とする請求項9に記載の端末装置。
 前記第1ドメインは、前記検査要求情報を送信した際、前記実行制限部からの指示を受けるまで、前記特定のソフトウエアの実行を停止し、
 前記実行制限部は、前記ソフトウエア検査部によって前記特定のソフトウエアが安全であると確認された場合、前記第1ドメインに前記特定のソフトウエアの実行を指示する
ことを特徴とする請求項10に記載の端末装置。
 前記第1ドメインは、前記検査要求情報を前記要求受付部へ送信した際、前記特定のソフトウエアの実行を開始し、
 前記実行制限部は、前記ソフトウエア検査部によって前記特定のソフトウエアが安全ではないと確認された場合、前記第1ドメインに対して、前記特定のソフトウエアの実行を制限する
ことを特徴とする請求項10に記載の端末装置。
 前記実行制限部は、前記ソフトウエア検査部によって前記複数のソフトウエアが安全であるか否かの検査が完了されるまで、前記第1ドメインに前記複数のソフトウエアの実行を制限する
ことを特徴とする請求項1に記載の端末装置。
 複数のソフトウエアを実行する第1ドメインと、前記複数のソフトウエアの各々が安全か否かを検査する第2ドメインとを備える端末装置におけるソフトウエア検査方法であって、
 前記第2ドメインが、前記第1ドメインによって実行される前記複数のソフトウエアの実行優先順序を記憶する順序記憶ステップと、
 前記第2ドメインが、前記実行優先順序に従って、前記複数のソフトウエアが安全であるか否かを検査する検査ステップと、
 前記第2ドメインが、前記複数のソフトウエアの内、安全ではないという検査結果が得られたソフトウエアの前記第1ドメインによる実行を、前記複数のソフトウエアの全ての検査が完了する前に制限する制限ステップと
を含むことを特徴とするソフトウエア検査方法。
Description:
端末装置及びソフトウエア検査 法

 本発明は、ソフトウエアを実行する第1ド メインと、前記ソフトウエアが安全か否かを 検査する第2ドメインとを備える端末装置及 ソフトウエア検査方法に関する。

 従来、携帯電話、PDA(Personal Digital Assistan ts)、PC等の端末装置において、オペレーティ グシステム(以下、OS)やアプリケーションな どのソフトウエアに、外部から改竄が行われ て安全性が低下することが懸念されている。 そこで、近年では、端末装置のセキュリティ を確保するため、当該ソフトウエアが安全か 否かを検査する様々な技術が提案されている (例えば、特許文献1参照)。

 特許文献1には、複数のプロセッサを用いて 、ソフトウエアの検査を行う技術が開示され ている。特許文献1に開示されている技術で 、装置で用いられる基本的なソフトウエア 実行するメインプロセッサと、当該メイン ロセッサから隔離したセキュアプロセッサ を備える装置において、セキュアプロセッ が、メインプロセッサで実行するソフトウ アの検査を行う。かかるセキュアプロセッ では、暗号処理及び復号処理に使用する鍵 外部からアクセスできないよう保存されて る。そして、かかるセキュアプロセッサは 当該鍵を用いて、メインプロセッサで実行 れるソフトウエアの復号化が成功するか否 に応じて、当該ソフトウエアが安全か否か 検査する。また、かかるセキュアプロセッ は、ソフトウエアを二次記憶メモリからメ ンメモリへのロード及びストアする度に、 該ソフトウエアの検査を行うことで、メイ プロセッサで実行されるソフトウエアのセ ュリティを確保している。

特開2006-18528号公報

 しかしながら、特許文献1に開示される技 術では、OSやアプリケーション等のソフトウ アが起動(ロード)される際に、当該ソフト エアの検査を行い、その検査が完了した後 、当該ソフトウエアが利用可能となる。よ て、ブート時にOSやアプリケーションを順に 実行する端末装置の起動時間の増加や、ユー ザがアプリケーションを呼び出した際の応答 性の悪化など、ユーザの利便性が悪化すると いう問題があった。また、携帯電話やPCなど 用いられるソフトウエアの容量は、近年、 加し続けており、それに伴ってソフトウエ の検査時間が増えているため、検査時間の 縮や検査時間をユーザから隠蔽するなどの 策が必要である。

 そこで、本発明は、上述した問題に鑑み なされたものであり、セキュリティが低下 ることを抑制しつつ、ソフトウエアの検査 よってOSやアプリケーションの起動期間が 加することを低減する端末装置及びソフト エア検査方法を提供することを目的とする

 上記目的を達成するため、本発明の第1の 特徴は、複数のソフトウエアを実行する第1 メイン(第1ドメイン10)と、前記第1ドメイン 独立し、前記複数のソフトウエアの各々が 全か否かを検査する第2ドメイン(第2ドメイ 20)とを備える端末装置(端末装置1)であって 前記第2ドメインは、前記第1ドメインによっ て実行される前記複数のソフトウエアの実行 優先順序を記憶する実行順序記憶部(実行順 記憶部111)と、前記実行順序記憶部に記憶さ ている前記実行優先順序に従って、前記複 のソフトウエアが安全であるか否かを検査 るソフトウエア検査部(ソフトウエア検査部 117)と、前記複数のソフトウエアの内、安全 はないという検査結果が得られたソフトウ アの前記第1ドメインによる実行を、前記複 のソフトウエアの全ての検査が完了する前 制限する実行制限部(実行制限部123)とを備 ることを要旨とするものである。

 かかる特徴によれば、端末装置では、第2 ドメインのソフトウエア検査部が、第1ドメ ンの処理に依存せずに、独立して次々とソ トウエアを検査することが可能になるため ソフトウェアの検査時間を短縮できる。ま 、第1ドメインが、アプリケーションやミド ウェア、OS、 デバイスドライバ等のソフト ウエアを実行する際に、第1ドメインが、検 処理を行わないため、ユーザに対して、検 時間のオーバヘッドを隠蔽することが可能 なる。さらに、第2ドメインの実行制限部は 複数のソフトウエアの全ての検査が完了す 前に、第1ドメインによるソフトウエアの実 行を制限するので、第1ドメインが、全ての 査が完了する前にソフトウエアを実行する 合であっても、セキュリティを確保できる

 このように、かかる特徴によれば、端末 置は、ソフトウエアを検査することによっ セキュリティを確保しつつ、当該検査によ てOSやアプリケーションの起動期間が増加 ることを低減することができる。

 本発明の第2の特徴は、第1の特徴に係り 実行順序記憶部は、前記第1ドメインを識別 る第1ドメイン識別情報又は前記第2ドメイ を識別する第2ドメイン識別情報のいずれか つと、前記複数のソフトウェアの各々とを 応付けて記憶し、前記第2ドメインの前記ソ フトウェア検査部は、前記実行優先順序に従 って、前記第2ドメイン識別情報に対応付け 記憶されているソフトウェアが安全である 否かを検査し、前記第1ドメインは、前記第1 ドメイン識別情報に対応付けて記憶されてい るソフトウェアが安全であるか否かを検査す るサブソフトウェア検査部(サブソフトウエ 検査部200)を備えることを要旨とするもので る。

 かかる特徴によれば、第2ドメインのハー ドウェアやソフトウェアの制約により、検査 が不能なソフトウェアを第1ドメインやその のドメインに任せるなど、検査処理を分担 ることが可能になる。また、検査処理の負 を分散させて端末装置全体の処理効率を向 させることができる。

 本発明の第3の特徴は、第1又は2の特徴に り、前記実行順序記憶部は、前記端末装置 起動時と前記端末装置の起動後との少なく も一方のタイミングを示すタイミング情報 、前記複数のソフトウェアの各々とを対応 けて記憶し、前記ソフトウェア検査部と前 サブソフトウェア検査部とは、前記タイミ グ情報によって示されるタイミングに従っ 、前記ソフトウェアが安全であるか否かを 査することを要旨とするものである。

 かかる特徴によれば、第2ドメインの検査 処理性能や検査開始タイミングなどの制約か ら、第1ドメインの実行前に検査が完了でき いソフトウェアについて、第1ドメインの起 時のタイミングで検査させることができ、 全性を確保できる。すなわち、第1ドメイン にて、検査完了前のソフトウェアを実行して しまうことを防止できる。

 本発明の第4の特徴は、第1乃至3のいずれ 1つの特徴に係り、 前記第2ドメインは、前 記複数のソフトウエアの内、前記ソフトウエ ア検査部において安全であることが確認され たソフトウエアの識別情報を記憶する安全ソ フトウエアリスト(安全ソフトウエアリスト11 9)を更に備え、前記第1ドメインは、所定のソ フトウェアを実行する前に、前記所定のソフ トウェアの識別情報が前記安全ソフトウェア リストに記憶されているか否かを判定し、前 記所定のソフトウェアの識別情報が前記安全 ソフトウェアリストに記憶されていない場合 、前記所定のソフトウェアの実行を制限(ブ ック)することを要旨とするものである。

 かかる特徴によれば、第1ドメインにて、 検査完了前のソフトウェアを実行してしまう ことを防止できる。

 本発明の第5の特徴は、第1乃至4のいずれ の特徴に係り、前記複数のソフトウエアに 、前記第1ドメインによって常に実行される 第1ソフトウエアと、所定の頻度で実行され 第2ソフトウエアとが含まれており、前記実 順序記憶部は、前記第2ソフトウエアの前記 実行優先順序よりも前記第1ソフトウエアの 記実行優先順序を優先して記憶しており、 記ソフトウエア検査部は、前記実行優先順 に従って、前記第2ソフトウエアよりも前記 1ソフトウエアを優先して安全か否かを検査 することを要旨とするものである。

 本発明の第6の特徴は、第5の特徴に係り、 記第2ドメインは、前記第1ドメインによって 実行される前記第2ソフトウエアの実行頻度 取得する実行頻度取得部(実行頻度取得部113) と、取得された前記実行頻度と前記第2ソフ ウエアとを対応付けて記憶する実行頻度記 部(実行頻度記憶部115)とを更に備え、前記ソ フトウエア検査部は、前記実行頻度記憶部に 記憶されている前記実行頻度を前記実行優先 順序として、前記第2ソフトウエアが安全で るか否かを検査することを要旨とするもの ある。 
 本発明の第7の特徴は、第1乃至6のいずれか1 つの特徴に係り、前記複数のソフトウエアの 内、前記ソフトウエア検査部において安全で はないことが確認された前記ソフトウエアの 識別情報を記憶する非安全ソフトウエアリス ト(非安全ソフトウエアリスト121)を更に備え ことを要旨とするものである。 
 本発明の第8の特徴は、第1乃至7のいずれか1 つの特徴に係り、前記ソフトウエア検査部は 、所定の期間毎に、前記複数のソフトウエア が安全であるか否かを検査することを要旨と するものである。

 本発明の第9の特徴は、第7の特徴に係り 前記第1ドメインは、前記複数のソフトウエ の内、検査されたソフトウエアの検査結果 要求する結果要求情報を送信し、前記第2ド メインは、前記第1ドメインから前記結果要 情報を受信した際に、前記安全ソフトウエ リストに記憶されている前記識別情報と前 非安全ソフトウエアリストに記憶されてい 前記識別情報とを含む結果応答情報を前記 1ドメインに送信する結果通知部(結果通知部 127)を更に備え、前記第1ドメインは、前記結 通知部から受信した前記結果応答情報に基 いて、前記ソフトウエア検査部によって安 が確認された前記ソフトウエアのみを実行 ることを要旨とするものである。

 本発明の第10の特徴は、第9の特徴に係り 前記第2ドメインは、前記第1ドメインから 記ソフトウエアの検査を要求する前記検査 求情報を受信する要求受付部(要求受付部131) を更に備え、前記第1ドメインは、前記結果 知部から通知された前記結果応答情報に、 から実行を開始する特定のソフトウエアの 別情報が含まれていない場合、前記特定の フトウエアの検査を要求する前記検査要求 報を要求受付部に送信し、前記要求受付部 、前記検査要求情報を受信した際に前記ソ トウエア検査部が前記特定のソフトウエア は異なる他のソフトウエアを検査中であっ 場合、他のソフトウエアの検査を中断させ 前記ソフトウエア検査部は、前記特定のソ トウエアを優先して、前記特定のソフトウ アが安全であるか否かを検査することを要 とするものである。

 本発明の第11の特徴は、第10の特徴に係り 、前記第1ドメインは、前記検査要求情報を 信した際、前記実行制限部からの指示を受 るまで、前記特定のソフトウエアの実行を 止し、前記実行制限部は、前記ソフトウエ 検査部によって前記特定のソフトウエアが 全であると確認された場合、前記第1ドメイ に前記特定のソフトウエアの実行を指示す ことを要旨とするものである。

 本発明の第12の特徴は、第10の特徴に係り 、前記第1ドメインは、前記検査要求情報を 記要求受付部へ送信した際、前記特定のソ トウエアの実行を開始し、前記実行制限部 、前記ソフトウエア検査部によって前記特 のソフトウエアが安全ではないと確認され 場合、第1ドメインに対して、前記特定のソ トウエアの実行を制限することを要旨とす ものである。

 本発明の第13の特徴は、第1の特徴に係り 前記実行制限部は、前記ソフトウエア検査 によって前記複数のソフトウエアが安全で るか否かの検査が完了されるまで、前記第1 ドメインに前記複数のソフトウエアの実行を 制限することを要旨とするものである。

 本発明の第14の特徴は、複数のソフトウ アを実行する第1ドメインと、前記複数のソ トウエアの各々が安全か否かを検査する第2 ドメインとを備える端末装置におけるソフト ウエア検査方法であって、前記第2ドメイン 、前記第1ドメインによって実行される前記 数のソフトウエアの実行優先順序を記憶す 順序記憶ステップと、前記第2ドメインが、 前記実行優先順序に従って、前記複数のソフ トウエアが安全であるか否かを検査する検査 ステップと、前記第2ドメインが、前記第2ド インが、前記複数のソフトウエアの内、安 ではないという検査結果が得られたソフト エアの前記第1ドメインによる実行を制限す る制限ステップとを含むことを要旨とするも のである。

 上述するように、本発明によると、セキ リティが低下することを抑制しつつ、ソフ ウエアの検査によってOSやアプリケーショ の起動期間が増加することを低減する端末 置及びソフトウエア検査方法を提供するこ ができる。

図1は、第1実施形態に係る端末装置の 体概略構成及び第2ドメインの最小機能ブロ ク図である。 図2は、第1実施形態に係る第2ドメイン 構成を具体的に示す機能ブロック図である 図3は、第1実施形態に係る実行順序記 部に記憶される情報を示す図である。 図4は、第1実施形態に係る実行頻度記 部に記憶される情報を示す図である。 図5は、第1実施形態において、第1ドメ ンと第2ドメインとが起動する際の時系列上 の動作を示す図である。 図6は、第1実施形態において、第1ドメ ンがソフトウエアを実行し、第2ドメインが ソフトウエアを検査する際の時系列上の動作 を示す図である。 図7は、第2実施形態に係る実行順序記 部に記憶される情報を示す図である。 図8は、第3実施形態において、第2ドメ ンの処理状態が遷移するイメージを示す図 ある。 図9は、第1実施形態に係る実行順序記 部に記憶される情報の一例を示す図である 図10は、第1実施形態に係る実行順序記 憶部に記憶される情報の一例を示す図である 。 図11は、第1実施形態に係る実行順序記 憶部に記憶される情報の一例を示す図である 。

 次に、図面を参照して、本発明の実施の 態を説明する。以下の図面の記載において 同一又は類似の部分には、同一又は類似の 号を付している。ただし、図面は模式的な のであることに留意すべきである。

[第1実施形態]
(端末装置の構成)
 本発明の第1実施形態に係る端末装置1の構 について説明する。本発明は、複数のドメ ンを動作させる機能を持つ端末装置を対象 している。また、本実施形態において、端 装置1は、複数のドメイン上で、オペレーテ ングシステム(以下、OS)及びアプリケーショ ン等のソフトウエアを実行する、携帯電話、 PDA(Personal Digital Assistants)、PC等を想定してい る。

 ここで、本実施形態において、ドメイン は、物理的、論理的に関わらず、プロセッ やRAM(Random Access Memory)から構成される1つの 独立したプロセッシングコアを指す。物理的 に複数のドメインを持つ実施形態の例として は、高速化や低消費電力を実現するため、主 ドメインとは別にDSP(Digital Signal Processor)を ドメインとして持つマルチメディア携帯端 、IPSec(Security Architecture for Internet Protocol) 準拠する暗号処理アクセラレータをサブド インとして持つ情報携帯端末などがある。 にDSPや暗号アクセラレータは、主ドメイン らの指示を受けてから処理をするタイプが く、その間はアイドルまたは休眠している

 1つのプロセッサに複数のプロセッシング コアを持つマルチコアプロセッサも、物理的 に複数のドメインを持つ実施形態である。ま た1つのプロセッシングコアを時空間分割す ことにより計算機資源を分割し、論理的に 数のドメインを持つ方法として、ARM社のTrust  ZoneやVMwareなどの仮想計算機が挙げられる。

 上述した複数のドメインは、それぞれ独 に動作し、ドメイン上で動作するOSも独立 動作する。本発明は、端末装置1の処理の多 を担う主ドメイン(以降第1ドメイン) と、 ドメインを支援する副ドメイン(以降第2ドメ イン) を利用し、第1ドメイン上でOSを含むソ フトウエアを通常動作させながら、第2ドメ ン上では、第1ドメイン上で動作させているO Sとは異なるOSを動作させ、第2ドメインが、 1ドメインのすべてのソフトウエアを並列に 査するための装置および方法に関するもの ある。つまり、端末装置1において、第1ド インと第2ドメインとは、一つのOSを動作す ものではなく、それぞれ異なるOSを独立に、 かつ並列に動作する。なお、第1ドメインと 2ドメインとは、独立した別々のコードを用 て、同じ種類のOSを動作させるように構成 れていてもよい。また、第2ドメインは、起 と共に第1ドメインで実行可能なソフトウエ アの検査を開始する。第2ドメインは、第1ド インのソフトウエアに異常が確認されたと には、端末装置の起動の中止やリセットを ってもよいし、第1ドメインの動作中に、異 常のソフトウエアのみ、実行停止や実行禁止 等を行ってもよい。

 図1は、本実施形態に係る端末装置1の構 を示す機能ブロック図である。図1に示すよ に、本実施形態に係る端末装置1は、第1ド イン10と、第2ドメイン20とを備える。

 第1ドメイン10は、端末装置1で用いられる 基本的な複数のソフトウエアを実行する。具 体的に、第1ドメイン10は、端末装置1で基本 に用いられるOSや、当該OS上で起動するアプ ケーション等のソフトウエアを実行する。 お、これらのソフトウエアは、予め全て記 されている。

 なお、本実施形態において、ソフトウエ は、常に実行される第1ソフトウエアと、所 定の頻度で実行される第2ソフトウエアとに 類する。例えば、OSは、端末装置1の起動時 必ず実行されるソフトウエアであり、常に 行される第1ソフトウエアに含まれる。また アプリケーションには、常に実行される第1 ソフトウエア(アプリケーション)と、所定の 度で実行される第2ソフトウエア(アプリケ ション)が含まれる。例えば、携帯電話を例 挙げると、第1ソフトウエアとしては、常に 起動される電話用のアプリケーションなどが ある。また、所定の頻度で実行される第2ソ トウエアとしては、ユーザ操作によって起 されるゲーム用のアプリケーションなどが る。

 第2ドメイン20は、各種機能を動作させる めのOSを起動する。また、第2ドメイン20は 第1ドメイン10で実行される複数のソフトウ アが、安全であるか否かを検査(確認)する。 具体的に、第2ドメイン20は、第1ドメイン10に 記憶されているソフトウエアが安全であるか 否かを検査し、例えば、安全でないことを確 認した場合、対象となるソフトウエアを第1 メインにおいて実行禁止にしたり、ドメイ 1の起動や実行を停止させたり、端末装置自 をリセットするなどの対処を行うなど、端 装置1のセキュリティを確保するための処理 を実行する。また、第2ドメイン20は、図1に すように、実行順序記憶部111、ソフトウエ 検査部117、実行制限部123等の機能を備え、 れらの機能を主に、セキュリティを確保す ための処理が実行される。

 なお、第1ドメイン10を検査する第2ドメイ ン20は、高いセキュリティを確保することが ましい。そこで、第2ドメイン20は、安全性 上のため、ARM社のTrust Zone等のセキュア空 や、メインプロセッサから隔離することに り、高いセキュリティを実現しているセキ アプロセッサなどを利用することができる また、以下に、第2ドメイン20に備えられて る各種機能について説明する。

(第2ドメインの構成)
 次に、第2ドメイン20の構成について、具体 に説明する。図1に示すように、第2ドメイ 20は、実行順序記憶部111と、ソフトウエア検 査部117と、実行制限部123とを備える。

 実行順序記憶部111は、第1ドメイン10で実 されるソフトウエアに対応する実行優先順 が記憶されている。実行優先順序とは、後 するソフトウエア検査部117によってソフト エアを検査する際に、検査する順序として いられる情報である。ここで、OSでは一般 、カーネル、デバイスドライバ、サーバと て動作するデーモンプログラム、自動で起 するアプリケーションなどの実行順序が静 に定義されている。実行順序記憶部111では 例えば、第1ドメイン10のOSに関して、それら を静的に実行される順序を実行優先順序とし て記憶する。

 なお、実行優先順序の指定においては、 数のソフトウェアを合わせて一つのソフト ェアとして扱ってもよい。例えば、カーネ と複数のデバイスドライバを合わせて一つ ソフトウェアとして、実行順序記憶部に記 させてもよい。

 ソフトウエア検査部117は、実行順序記憶 111に記憶される実行優先順序に従って、第1 ドメイン10のソフトウエアの検査を行う。第2 ドメインのOSの起動の完了後、即座に検査を 始することが望ましい。また、安全性確保 ため、ソフトウエア検査部117は、第1ドメイ ン10に記憶されている全てのソフトウエアが 全であるか否かを検査(確認)することが望 しい。

 ソフトウエアの検査方法としては、ソフ ウエアコードに対するチェックサムやハッ ュ値を求めて、予め記憶すると共に、検査 に読み出して照合する方法や、ソフトウエ コードに付随する電子署名を利用して改竄 有無を検査する方法などが挙げられる。上 した実行順序記憶部111には、それら検査に 要なプログラムコードの情報、必要に応じ チェックサムリスト、ハッシュ値が記憶さ ている。実際には、ソフトウエア検査部117 、これらの情報と、ハッシュ計算機能やRSA 式を用いた公開鍵暗号方式などを利用して 査を行う。

 実行制限部123は、ソフトウエア検査部117 検査されたソフトウエアの検査結果に基づ て、当該ソフトウエアが第1ドメイン10によ て実行される際の動作を指示する。例えば 実行制限部123は、第1ドメイン10に対して安 でないことが確認されたソフトウエアの実 禁止を指示する。また、実行制限部123は、 1ドメイン10が、安全でないことが確認され ソフトウエアを実行していた場合には、そ 停止指示(実行禁止指示)などを行う。なお 実行制限部123は、安全でないことが確認さ たソフトウエアの削除や、第1ドメイン10ま は端末装置1のリセットや実行停止を行って よい。このように、実行制限部123は、複数 ソフトウエアの内、ソフトウエア検査部117 よって安全ではないという検査結果が得ら たソフトウエアの第1ドメイン10による実行 、複数のソフトウエアの全ての検査が完了 る前に制限する。

(第2ドメインの詳細な構成)
 次に、第2ドメイン20の構成について、より 細に説明する。図2は、第2ドメイン20の構成 を、具体的に示す機能ブロック図である。図 2に示すように、第2ドメイン20は、実行順序 憶部111と、実行頻度取得部113と、実行頻度 憶部115と、ソフトウエア検査部117と、安全 フトウエアリスト119と、非安全ソフトウエ リスト121と、実行制限部123と、結果通知部12 7と、リストフラッシュ部129と、要求受付部13 1とを備える。

 実行順序記憶部111は、上述したように、 1ドメイン10で実行されるソフトウエアに対 する実行優先順序が記憶されている。図3に は、実行順序記憶部111に記憶される情報の具 体例が示されている。図3に示すように、実 順序記憶部111には、第1ドメイン10に記憶さ ているソフトウエアを識別するソフトウエ ID(識別情報)と、第1ドメイン10で実行される フトウエアの実行優先順序、ソフトウエア 検査に必要なハッシュ値などとが関連付け 記憶されている。

 なお、ソフトウェアIDは、1つのソフトウ アに対して与えた識別情報でもよいし、複 のソフトウェアを一組としたものに与えた 別情報であってもよい。また、ソフトウェ IDは、ファイル名でもよいし、ソフトウェ が配置されているアドレスや、アドレスと イズの組でもよい。

 図3の具体例では、実行優先順序が指定さ れているが、明示的な指定でなく、図9の例 示すように、記憶領域の先頭からの順序を 行優先順序としてもよい。

 さらに、図10に示すように、実行順序記 部111は、複数のソフトウェアの各々につい 、いずれのドメインが検査を行うかの指定 記憶してもよい。具体的に、図1に示すよう 、第1ドメイン10においても、ソフトウェア 安全であるか否かを検査するサブソフトウ ア検査部300を備えるように構成されていて よい。この場合、実行順序記憶部111は、第1 ドメイン10を識別する第1ドメイン識別情報、 又は前記第2ドメイン20を識別する第2ドメイ 識別情報のいずれか一つと、ソフトウェア 各々とを対応付けて記憶する。図10の具体例 では、ソフトウェアIDが“1”のソフトウェア は、第1ドメイン(ドメインID=1)が検査を行い その他のソフトウェアIDのソフトウェアは第 2ドメイン(ドメインID=2)が検査を行うことが 定されている。

 このようにして、第2ドメイン20のソフト ェア検査部117は、実行優先順序に従って、 2ドメイン識別情報に対応付けて記憶されて いるソフトウェアを検査し、第1ドメイン10の サブソフトウェア検査部300が、第1ドメイン 別情報に対応付けて記憶されているソフト ェアを検査してもよい。

 図11の具体例では、実行順序記憶部111は ソフトウェアの各々について、端末装置1の 動時および起動後のいずれか、あるいは両 かの検査のタイミングの指定を保持してい 。具体的に、実行順序記憶部111は、端末装 1の起動時と端末装置1の起動後との少なく も一方のタイミングを示すタイミング情報( 動時、起動後、起動時と起動後の両方)と、 ソフトウェアの各々とを対応付けて記憶して いる。図11の具体例では、ソフトウェアIDが 1”のソフトウェアは第1ドメイン(ドメインID =1)が起動時に検査を行い、ソフトウェアIDが 2”のソフトウェアは第2ドメイン(ドメインI D=2)が起動時と起動後の両方で検査を行うこ が指定されている。

 この場合、第2ドメイン20のソフトウェア 査部117及び第1ドメインのサブソフトウェア 検査部300は、タイミング情報と、実行優先順 序とに従って、ソフトウェアが安全であるか 否かを検査してもよい。

 また、図4に示す具体例では、実行順序記 憶部111には、第1ドメイン10によって常に実行 されるOSやアプリケーションなどの第1ソフト ウエアのソフトウエアIDと、第1ドメイン10に って所定の頻度で実行されるアプリケーシ ンなどの第2ソフトウエアのソフトウエアID が記憶されている。

 また、実行順序記憶部111では、所定の頻 で実行される第2ソフトウエアの実行優先順 序よりも、常に実行される第1ソフトウエア 実行優先順序を優先して記憶している。具 的に、実行順序記憶部111では、常に実行さ るOSやアプリケーションなどの第1ソフトウ アに関しては、実行優先順序が対応付けて 憶されているが、所定の頻度で実行される プリケーションなどの第2ソフトウエアに関 ては、実行優先順序が対応付けて記憶され いない。この場合、所定の頻度で実行され 第2ソフトウエアは、実行優先順序が無いわ けではなく、最も実行優先順序が低く記憶さ れている。

 実行頻度取得部113は、第1ドメイン10でソ トウエアが実行される度に、実行される当 ソフトウエアを識別するソフトウエアID(識 情報)を第1ドメイン10から取得する。また、 実行頻度取得部113は、当該ソフトウエアIDを 得する度に、所定の期間(例えば、一週間な ど)内に取得された当該ソフトウエアIDの取得 回数を累積して、実行頻度記憶部115に記憶す る。なお、実行頻度取得部113は、実行頻度を 定期的(例えば、所定の期間毎)に消去して、 新するように構成されていてもよい。また 実行頻度取得部113は、主に、第1ドメイン10 常に実行される第1ソフトウエアよりも、所 定の頻度で実行される第2ソフトウエアの実 頻度を取得する。

 実行頻度記憶部115は、第1ドメイン10にお て、所定の頻度で実行されるソフトウエア 実行頻度が記憶される。なお、実行頻度記 部115には、第1ドメイン10で実行されるソフ ウエアの中でも、実行順序記憶部111に実行 先順序が記憶されていないソフトウエアを 象とし、当該ソフトウエアの実行頻度が記 されている。これらの情報は、実行頻度取 部113によって記憶される。図4には、実行頻 度記憶部115に記憶される情報の具体例が示さ れている。図4に示すように、実行頻度記憶 115は、ソフトウエアIDと実行頻度とが対応付 けて記憶されている。また、実行頻度記憶部 115に記憶される情報は、後述するソフトウエ ア検査部117によって読み出され、ソフトウエ アを検査する順序を決定する際に用いられる 。

 ソフトウエア検査部117は、実行順序記憶 111に記憶されている実行優先順序を参照し 当該実行優先順序に従って、第1ドメイン10 記憶されているソフトウエアを検査(確認) る。また、ソフトウエア検査部117は、第2ソ トウエアよりも第1ソフトウエアを優先して 安全か否かを検査してもよい。具体的に、ソ フトウエア検査部117は、第1ソフトウエアの 査を実行した後、第2ソフトウエアに関して 、実行頻度記憶部115を参照して、第1ドメイ ン10に記憶されているソフトウエアが安全で るか否かを検査する。この時、ソフトウエ 検査部117は、実行頻度記憶部115に記憶され いる実行頻度を実行優先順序として、実行 度が大きい方から順に、実行頻度に対応す 第2ソフトウエアが安全であるか否かを検査 してもよい。

 また、ソフトウエア検査部117は、所定の 間毎に、一つ又は複数のソフトウエアが安 であるか否かを検査する。具体的に、ソフ ウエア検査部117は、後述するリストフラッ ュ部129から、所定の期間毎に、検査の実行 指示する旨の通知を受けると、実行順序記 部111及び実行頻度記憶部115に記憶されてい 情報を参照してソフトウエアの検査を実行 る。その際、ソフトウエア検査部117は、処 効率を向上させるため、前回安全であるこ を確認した安全ソフトウエアリスト119に記 されているソフトウエアIDに対応するのみ 再検査してもよい。

 また、ソフトウエア検査部117は、後述す 要求受付部131において、第1ドメイン10から 定のソフトウエアが安全であるか否かの検 を要求する検査要求情報が受信された際、 該検査要求情報に含まれるソフトウエアID 対応するソフトウエア(特定のソフトウエア) を優先して、当該ソフトウエアが安全である か否かを検査する。例えば、ソフトウエア検 査部117は、あるソフトウエアを対象に安全で あるか否かの検査処理を実行中であっても、 要求受付部131によって、第1ドメイン10から検 査要求情報が受信された際には、かかる検査 処理を中断して、検査要求情報に含まれるソ フトウエアIDに対応するソフトウエアが安全 あるか否かを検査する。

 また、ソフトウエア検査部117は、検査結 を、安全ソフトウエアリスト119と非安全ソ トウエアリスト121とに記憶する。具体的に ソフトウエア検査部117は、ソフトウエアが 全であるか否かを検査した後、当該ソフト エアが安全であると確認した場合、かかる フトウエアを識別するソフトウエアIDを、 全ソフトウエアリスト119に記憶する。また ソフトウエア検査部117は、ソフトウエアが 全であるか否かを検査した後、当該ソフト エアが安全でないことを確認した場合、か るソフトウエアを識別するソフトウエアIDを 、非安全ソフトウエアリスト121に記憶する。 また、ソフトウエア検査部117は、検査結果と ソフトウエアIDとを、実行制限部123に通知す 。この通知に応じて、実行制限部123では、 1ドメイン10の動作を制御する。

 安全ソフトウエアリスト119は、ソフトウ ア検査部117において安全であると確認され ソフトウエアの識別情報を記憶する。具体 に、安全ソフトウエアリスト119は、ソフト エア検査部117で検査された結果、改竄され いない安全なソフトウエアに対応するソフ ウエアID(識別情報)が記憶される。また、非 安全ソフトウエアリスト121は、ソフトウエア 検査部117において安全でないことが確認され たソフトウエアの識別情報を記憶する。具体 的に、非安全ソフトウエアリスト121は、ソフ トウエア検査部117で検査した結果、改竄され ているソフトウエアに対応するソフトウエア IDが記憶される。これら2つのリストに記憶し たソフトウエア郡は、後述する結果通知部127 が第1ドメイン10から検査結果を要求する結果 要求情報を受けたとき、結果通知部127によっ て、第1ドメイン10へ通知される。

 リストフラッシュ部129は、インターバル イマを備え、定期的に、ソフトウエア検査 117に検査の実施を通知する。また、この時 リストフラッシュ部129は、安全ソフトウエ リスト119に記憶されている情報を全体ある は部分的に消去する。ここで、以前に、1度 安全であることが確認されたソフトウエアは 、ランタイムに改竄される可能性もあるため 、リストフラッシュ部129は、ソフトウエア検 査部117に、定期的に検査を促すことで、セキ ュリティを確保する。

 実行制限部123は、ソフトウエア検査部117 検査結果に応じて、第1ドメイン10がソフト エアを実行する際の動作を指示する。また 実行制限部123は、必要に応じて第1ドメイン 10にソフトウエアの実行禁止の指示、実行中 の指示など、第1ドメイン10の動作を制限し 場合によっては第1ドメイン10を強制的にリ ットする。

 なお、実行制限部123は、ソフトウエア検 部117によって、第1ドメイン10に記憶されて る全てのソフトウエアが安全であるか否か 検査が完了されるまで、第1ドメイン10にソ トウエアの実行禁止を指示するように構成 れていてもよい。かかる場合、実行制限部1 23は、例えば、ソフトウエア検査部117によっ 、実行順序記憶部111に記憶される全てのソ トウエアの検査が完了するまで、第1ドメイ ン10で実行されているOSの起動を一時中断さ ることができる。また、実行制限部123は、 2ドメイン20のOSの起動が完了するまで、第1 メイン10で実行されているOSの起動を一時中 させこともできる。このようにして、実行 限部123が、第1ドメイン10の動作を制限する とで、端末装置1では、検査完了後のセキュ アな状態で第1ドメイン10にソフトウエアを実 行させることが可能となる。

 結果通知部127は、第1ドメイン10から、ソ トウエア検査部117で検査されたソフトウエ の検査結果を要求する結果要求情報を受信 ると共に、安全ソフトウエアリスト119に記 されている識別情報と、非安全ソフトウエ リスト121に記憶されている識別情報とを含 結果応答情報を第1ドメイン10に送信する。 のように、第1ドメイン10は、結果通知部127 利用することで、検査済みソフトウエア群 関する情報を取得することができる。また 安全ソフトウェアリスト、非安全ソフトウ アリストが、第1ドメイン10からアクセス可 なメモリ(RAM)やストレージに配置されてい 場合、結果要求情報の受信や結果応答情報 送信手順がなくとも、第1ドメイン10は、検 済みソフトウェア群に関する情報を取得す ことができる。

 要求受付部131は、第1ドメイン10から、特 のソフトウエアの検査を要求する検査要求 報を受信した際、当該検査要求情報をソフ ウエア検査部117に通知する。この時、要求 付部131は、現在実行中の検査処理の中止を フトウエア検査部117に通知し、検査要求情 で要求されたソフトウエアを優先的に検査 るよう促す。このようにして、第1ドメイン 10が、例えば、ソフトウエア検査部117で未検 のソフトウエアを実行する場合、その検査 ソフトウエア検査部117に要求することがで る。

 なお、検査した結果、安全であることが 認された場合、ソフトウエア検査部117は、 行制限部123を通じて、その旨を第1ドメイン 10に対して通知する。また、改竄が行われ、 全でないことが確認された場合、実行制限 123は、これに即対応し、当該ソフトウエア 実行前であった場合にはそのソフトウエア 実行禁止を促す。

(端末装置の動作)
 次に、上述する構成の端末装置1の動作につ いて説明する。具体的に、端末装置1におい 、第1ドメイン10と第2ドメイン20とが起動す 際に、第2ドメイン20がソフトウエアの検査 実行する制御動作と、前記第2ドメイン20が フトウエアを検査中に、第1ドメイン10から 検査要求を受けた際の制御動作とについて 明する。

(端末装置が起動する際の動作)
 まず、図5を参照し、端末装置1が起動する 、第1ドメイン10と第2ドメイン20とが起動し 、第2ドメイン20がソフトウエアの検査を実 する制御動作について説明する。図5には、 1ドメイン10と第2ドメイン20とが起動する際 時系列上の動作が示されている。なお、前 として、第2ドメイン20の実行順序記憶部111 は、予め第1ドメイン10で実行されるソフト エアの実行優先順序が記憶されている。ま 、第2ドメイン20は、第1ドメイン10の検査を う主体であるため、安全確保が必要である よって、本実施形態では、第2ドメイン20は セキュアブート機能を備えているものとす 。すなわち、第2ドメイン20における起動手 (ブート手順)において、次に実行するソフ ウェアを検査して正当なものであることを 認した後、該ソフトウエアを実行する。具 的には、最初に起動される第1ローダが第2ロ ーダを検査した後、第2ローダを実行し、第2 ーダがOSのカーネル部を検査した後、カー ルを実行する。

 ステップS11において、端末装置1が起動す ると、第1ドメイン10及び第2ドメイン20が起動 を開始し、第1ドメイン10及び第2ドメイン20の それぞれでは、OSの初期化が実行される。第2 ドメイン20では、OSの初期化の完了後、第1ド インの検査を開始する。より早く検査を開 させるため、ソフトウエア検査部117等を、 2ドメイン20において、デバイスドライバと て実行するように構成されていてもよい。 かる場合、第2ドメイン20のOSの初期化が完 する前であっても、ソフトウエア検査部117 、ソフトウエアの検査を開始することが可 になる。

第1ドメイン10と第2ドメイン20の起動のタイ ミングの構成によっては、第1ドメイン10にお いて、検査済みでないソフトウェアが第1ド インで実行されてしまう。これに対して、 下の3つの方法をとることができる。

 一つ目の方法Aでは、実行順序記憶部111が 、第1ドメイン10によって最初に実行されるい くつかのソフトウェアを記憶しておくことで 、第1ドメイン10が、そのソフトウエアを実行 する前に検査する。具体例として、実行順序 記憶部111が、図10の例に示すように、ソフト エアIDとドメインIDとを対応付けて記憶して いる場合、第1ドメイン10のサブソフトウェア 検査部200が、特定のソフトウエアを実行する 前に、特定のソフトウエアの検査が必要であ ることを認識して、検査する。これにより、 未検査のソフトウェアが第1ドメイン10で実行 されることを防ぐ。

 二つ目の方法Bでは、第1ドメイン10が、ソ フトウェアの実行前に、安全ソフトウェアリ ストを参照し、安全ソフトウェアリスト119に 前記ソフトウェアが含まれる場合に実行し、 含まれない場合には実行をブロック(制限)す 。第1ドメイン10は、ブロック後、安全ソフ ウェアリスト119を参照し、前記ソフトウェ が含まれることとなったら、ブロックを解 して実行する。

 三つ目の方法Cでは、実行制限部123は、ソ フトウエア検査部117によって第1ドメイン10の OSのソフトウエアの検査が終了するまで、第1 ドメイン10の動作を中断させる。例えば、静 に実行するソフトウエアが定義されているO Sのセキュリティを確実にしたい場合、実行 限部123は、ソフトウエア検査部117によって 行順序記憶部111に記憶される実行優先順序 対応付けられているソフトウエア(つまり、 1ソフトウエア)の検査が終了する後まで、 1ドメイン10の起動を遅らせる。

 ステップS13において、第2ドメイン20では ソフトウエア検査部117が、第2ドメイン20のO Sの初期化が完了した後、実行順序記憶部111 記憶されている実行優先順序に従って、ソ トウエアの検査を開始する。実行順序記憶 111に記憶されている実行優先順序は、まず 1ドメイン10で実行されるOSのコード(第1ソフ ウエア)である。具体例としてに、かかるコ ードには、カーネル、デバイスドライバ、サ ーバとして動作するデーモンプログラムが記 述されている。また、ソフトウエア検査部117 は、検査結果を安全ソフトウエアリスト119及 び非安全ソフトウエアリスト121に記憶しても よい。

 ステップS15はオプションであり、第2ドメ イン20において、ソフトウエア検査部117が、 行順序記憶部111に記憶される実行優先順序 対応するソフトウエアの検査終了後、引き き、実行頻度記憶部115を参照し、記憶され いる実行頻度に対応するソフトウエア(第2 フトウエア)の検査を、実行頻度が大きい方 ら順に実行する。

 第2ドメイン20では、結果通知部127は、第1 ドメイン10から結果要求情報を受信した場合 検査結果を含む結果応答情報を第1ドメイン 10に送信する。

 また、第2ドメイン20では、実行制限部123 、ソフトウエア検査部117によって安全でな ことが確認されたソフトウエアを、第1ドメ イン10に対して実行禁止を指示してもよい。 2ドメイン20が、端末装置1上のソフトウエア をバックアップなどにより、安全な状態で安 全に保持する機能を備えている場合、実行制 限部123は、ソフトウエア検査部117によって安 全でないことが確認されたソフトウエアを削 除し、保持されている安全なソフトウエアに 更新して、第1ドメイン10に記憶するように構 成されていてもよい。

 ステップS19において、第1ドメイン10は、 1ドメイン10上のOSの初期化を、通常の起動 作の通りに行う。

 ステップS21において、第1ドメイン10上のO Sの初期化が完了した後、第1ドメイン10が、 プリケーション等のソフトウェアを実行す 。この際、安全ソフトウェアリスト119を参 して、第2ドメイン20のソフトウエア検査部11 7によって、安全であることが確認されたア リケーション等のソフトウエアのみを実行 るようにブロックしてもよいし、未検査の フトウェアをスキップして別のソフトウェ を実行してもよい。後者の場合、第1ドメイ 10は、第2ドメイン20のソフトウエア検査部11 7によって、第1ドメイン10に記憶される全て ソフトウエアの検査が完了する前であって 、ソフトウエア検査部117によって安全であ ことが確認されたソフトウエアを実行でき 。

 また、第1ドメイン10は、ソフトウエアを 行する際、実行するソフトウエアに対応す ソフトウエアIDを、第2ドメイン20の実行頻 取得部113に通知してもよい。実行頻度取得 113では、この通知に基づいて、所定の期間 に取得されたソフトウエアIDの取得回数を累 積し、第1ドメイン10におけるソフトウエアの 実行頻度を導きだして、実行頻度記憶部115に 記憶する。また、この情報を用いて、第2ド イン20のソフトウエア検査部117は、実行頻度 記憶部115に記憶された実行頻度を、検査すべ きソフトウエアの実行優先順序として、ソフ トウエアが安全であるか否かを検査する。

 また、第1ドメイン10は、ソフトウエアの 行前に、第2ドメイン20の結果通知部127に結 要求情報を送信して、結果通知部127から結 応答情報を得てもよい。また、第1ドメイン 10は、結果応答情報に基づいて、ソフトウエ 検査部117によって安全でないことが確認さ たソフトウエアを確認する。そして、第1ド メイン10は、安全でないことが確認されたソ トウエアを除くソフトウエアを実行する。 まり、第1ドメイン10は、結果応答情報に含 れるソフトウエアIDの内、非安全ソフトウ アリスト121に記憶されているソフトウエアID に対応するソフトウエアを実行しない。また 、第1ドメイン10では、結果応答情報に含まれ る全てのソフトウエアIDを確認して、今から 行を開始するソフトウエアが、第2ドメイン 20のソフトウエア検査部117で検査が行われた 否かを確認する。この確認によって、第1ド メイン10では、安全が確認されたソフトウエ を実行できるようになる。また、第1ドメイ ン10は、結果通知部127から通知された結果応 情報に、今から実行を開始する特定のソフ ウエアの識別情報が含まれていない場合、 該特定のソフトウエアが安全であるか否か 検査を要求する検査要求情報を要求受付部1 31に送信する。この時、第1ドメイン10は、対 となる特定のソフトウエアのソフトウエアI Dを含む検査要求情報を送信して、対象のソ トウエアの検査を要求する。

 ここで、本実施形態において、第1ドメイ ン10は、検査要求情報を送信した際、実行制 部123からの指示を受けるまで、検査を要求 たソフトウエアの実行を停止する方法(1)と 検査要求情報を送信した際に、すぐに当該 フトウエアの実行を開始する方法(2)との何 かの方法を実行する。

 例えば、方法(1)では、第1ドメイン10が検 要求情報を送信した際に、第2ドメイン20の 行制限部123からの指示を受けるまで、検査 要求したソフトウエアの実行を停止する。 た、この方法では、ソフトウエア検査部117 よって、検査要求情報で要求されたソフト エア(特定のソフトウエア)が安全であるこ が確認されると、実行制限部123は、第1ドメ ン10にソフトウエアの実行を指示する。そ て、第1ドメイン10は、引き続きソフトウエ の実行を開始する。また、安全でないこと 確認された場合には、実行制限部123は、第1 メイン10にソフトウエアの実行禁止を指示 る。そして、第1ドメイン10は、そのソフト エアの実行を取りやめる。

 また、方法(2)では、第1ドメイン10が検査 求情報を送信した際に、検査を要求したソ トウエアをすぐに実行する。この方法では 第2ドメイン20の実行制限部123は、ソフトウ ア検査部117によって、第1ドメイン10で実行 のソフトウエア(特定のソフトウエア)が安 でないことが確認されると、第1ドメイン10 特定のソフトウエアの実行停止、およびそ 以降の実行禁止を指示する。また、安全で ることが確認されたソフトウエアに関して 第2ドメイン20の実行制限部123は、第1ドメイ 10に対して何も行わない。

 このようにして、端末装置1では、第1ド イン10は、検査されていないソフトウエアの 実行をする際に、方法(1)乃至(2)のいずれかの 方法を設定することが可能である。なお、方 法(1)乃至(2)のいずれかの方法は、端末装置1 演算処理能力などの性能に即して、設定す ことが好ましい。

 また、第2ドメイン20のソフトウエア検査 117は、第1ドメイン10に記憶されているソフ ウエアの検査を、第2ドメイン20が起動した から開始して、すべてのソフトウエアを一 り検査終了した場合、ある程度の時間(所定 の期間)をおいてから、再度ソフトウエアの 査を再開する。この時、第2ドメイン20のソ トウエア検査部117では、検査処理の効率化 図るために、前回の検査で安全であること 確認されたソフトウエアのみとする。この 、ソフトウエア検査部117は、実行順序記憶 111及び実行頻度取得部113に記憶されている 行優先順序及び実行頻度に基づいて検査を う際に、安全ソフトウエアリスト119を参照 、すでに安全であることが確認されたソフ ウエアの検査のみを行う。

(アプリケーションを検査する際の動作)
 次に、第1ドメイン10及び第2ドメイン20によ て、例えば、所定の頻度で実行されるアプ ケーションなどの第2ソフトウエアを検査す る際の制御動作について、図6を参照して、 体的に説明する。なお、ここでは、第1ドメ ン10が、検査を要求する検査要求情報を送 すると共に、すぐにソフトウエアの実行を 始する上記方法(2)を例に挙げて説明する。

 ステップS101において、第2ドメイン20では 、ソフトウエア検査部117が、アプリケーショ ンCの検査を実行している。そして、第2ドメ ン20では、要求受付部131が、第1ドメイン10 ら検査要求情報を受けたとする。

 ステップS103において、第2ドメイン20では 、ソフトウエア検査部117は、現在実行中のア プリケーションCの検査を中断し、要求受付 131で受けた検査要求情報に含まれるソフト エアIDに対応するソフトウエア(例えば、ア リケーションD)が安全であるか否かを検査す る。また、この時、ソフトウエア検査部117は 、アプリケーションDが安全でないことを確 した場合、実行制限部123に、この旨を通知 る。この通知を受けた実行制限部123は、第1 メイン10に、当該アプリケーションDの実行 止、およびそれ以降の実行禁止を指示する

 ステップS105において、第2ドメイン20では 、ソフトウエア検査部117が、当該要求を受け たソフトウエアを検査した後、先ほど検査を 中断されたソフトウエアの検査を再開し、引 き続き、実行順序記憶部111及び実行頻度取得 部113に記憶されている実行優先順序及び実行 頻度に対応するソフトウエアの検査を継続す る。

 ステップS107において、第1ドメイン10は、 第2ドメイン20にアプリケーションDの検査要 情報を送信すると共に、当該アプリケーシ ンDの実行を開始する。また、第1ドメイン10 、当該アプリケーションDを実行中に、実行 制限部123から、当該アプリケーションDの実 停止を指示されると、即時実行を停止する

(作用及び効果)
 本実施形態に係る端末装置1によれば、第2 メイン20では、ソフトウエア検査部117が、実 行優先順序に従って、複数のソフトウエアが 安全であるか否かを検査(確認)する。また、 1ドメイン10は、ソフトウエア検査部117部に って、第1ドメイン10に記憶されている全て ソフトウエアが安全であるか否かを検査さ る前であっても、安全であると確認された フトウエアを実行できる。

 従って、従来技術のように、端末装置1で は、記憶されている全ての複数のソフトウエ アを安全であるか否かを検査せずに、検査が 完了し、かつ安全であることが確認されたソ フトウエアを第1ドメイン10が実行できる。ま た、端末装置1では、ソフトウエア検査部117 、予め記憶される実行優先順序又は実行頻 に従って、次々と自動でソフトウエアを検 する。よって、第1ドメイン10が、ソフトウ アを実行する際に、検査結果を得るまでの 機期間をより低減できる。

 また、本実施形態に係る端末装置1によれ ば、第2ドメイン20では、ソフトウエア検査部 117が、第1ドメイン10によって常に実行される ソフトウエア(第1ソフトウエア)を、所定の頻 度で実行されるソフトウエア(第2ソフトウエ )よりも優先して、安全か否かを検査するの で、第1ドメイン10が、ソフトウエアを実行す る際に検査を待機する期間をより低減できる 。また、ソフトウエア検査部117は、アプリケ ーション等のソフトウエアを実行頻度に応じ た順で次々と自動で検査するので、ユーザの 要求に応じて、第1ドメイン10がソフトウエア を実行する際には、既に検査が完了している という環境をより早く提供できる。更に、そ の際には、第1ドメイン10によって、検査結果 を待つ待機期間自体がなくなっている可能性 がより高くなる。

 このように、かかる特徴によれば、端末 置1は、ソフトウエアを検査することによっ てセキュリティが低下することを抑制しつつ 、当該検査によってOSやアプリケーションの 動期間が増加することを低減することがで る。よって、かかる端末装置1によれば、大 容量化が進んでいるソフトウエアの安全性を 確保しつつ、起動時間増加を最小限に抑え、 かつ、ソフトウエアを網羅的に検査すること が可能になる。

 また、本実施形態に係る端末装置1によれ ば、第2ドメイン20では、実行制限部123が、ソ フトウエア検査部117で検査されたソフトウエ アの検査結果に基づいて、第1ドメイン10の動 作を制限する。従って、実行制限部123は、安 全ではないことが確認されたソフトウエアの 実行を禁止して、端末装置1のセキュリティ 確保できる。また、第2ドメイン20では、結 通知部127が、第1ドメイン10の要求に応じて 検査結果を通知するので、第1ドメイン10は いち早く検査結果を確認することができる

 また、本実施形態に係る端末装置1によれ ば、第2ドメイン20では、安全ソフトウエアリ スト119と非安全ソフトウエアリスト121とによ り、安全なソフトウエアと、安全でないソフ トウエアとを確実に管理することができる。

 また、本実施形態に係る端末装置1によれ ば、第2ドメイン20では、ソフトウエア検査部 117が、リストフラッシュ部129の指示に応じて 、所定の期間毎に定期的に複数のソフトウエ アが安全であるか否かを検査するので、1度 全であると検査しても、所定の期間毎に再 査して、セキュリティを確保できる。また この時、ソフトウエア検査部117は、前回安 であることが確認されたソフトウエアのみ 検査するので、無駄な処理を実行すること く、演算処理負荷を低減できる。

 本実施形態に係る端末装置1によれば、第 1ドメイン10では、検査結果が安全でないこと が確認されたソフトウエアを実行しないので 、セキュリティを確保できる。また、第1ド イン10が、今から実行を予定しているソフト ウエアが検査されていない場合、当該ソフト ウエアの検査を要求する。また、この要求を 受けた第2ドメイン20では、ソフトウエア検査 部117が、要求されたソフトウエアを優先して 検査するので、検査結果が得られるまでの第 1ドメイン10の待機期間を低減できる。

 本実施形態に係る端末装置1によれば、第 1ドメイン10は、検査を要求した際の一の方法 (方法(1))として、第2ドメイン20の実行制限部1 23からの指示があるまでソフトウエアの実行 停止するので、特定のソフトウエアが安全 ない場合に、当該特定のソフトウエアによ て、個人情報などが流出することを防止し セキュリティをより高く保つことができる また、第1ドメイン10は、検査を要求した際 他の方法(方法(2))として、並列して、すぐ 要求したソフトウエアの実行を開始するの 、ソフトウエアが起動する期間が長くなっ しまうことを抑制できる。また、この場合 も、第2ドメイン20では、実行制限部123は、 フトウエア検査部117によって要求されたソ トウエアが安全でないことが確認されると 第1ドメイン10に即実行停止を指示するので セキュリティを確保することができる。

 また、第2ドメイン20では、実行制限部123 、ソフトウエア検査部117によって全てのソ トウエアが安全であるか否かの検査が完了 るまで、第1ドメイン10にソフトウエアの実 禁止を指示することもできるので、ユーザ 所望に応じて、セキュリティの高い環境を 供することができる。

 また、一般的に、端末装置1が、バッテリ ー等で駆動する場合、省電力化が望まれる。 従来技術であれば、例えば、端末装置がOSを 動する際などに、記憶する全てのソフトウ アが安全か否かを検出しているため、ユー に対して、アプリケーション等のソフトウ アが使用可能な状態になるまでに消費電力 大きかった。従って、バッテリーに蓄電さ ている電力が非常に少ない場合には、ユー に対して、ソフトウエアを使用可能な状態 提供することすらできない場合があった。 かし、本発明にかかる端末装置1によれば、 通常通り、OSを起動させるので、ユーザに対 て、アプリケーションを使用可能な状態を 供できる。

[第2実施形態]
(第2実施形態に係る端末装置の構成)
次に、本発明の第2実施形態に係る端末装置1 構成について、上述した第1実施形態との相 違点に着目して説明する。上述した第1実施 態に係る端末装置1の第2ドメイン20において 実行制限部123は、ソフトウエア検査部117で 全でないことが確認されたソフトウエアに いて、実行停止(又は実行禁止)を第1ドメイ 10に指示するように構成されていたが、当 第1ドメイン10では、既に当該ソフトウエア 実行している場合や、第1ドメイン10がすで 改ざんされ、第2ドメイン20からの指示を受 られない場合、この指示に応じられないこ も想定される。更に、当該ソフトウエアに 例えば、OSを起動する際に参照される設定情 報等が含まれている場合、現在、第1ドメイ 10によって当該ソフトウエアを実行(参照)さ ていなくとも、安全でないことが確認され 場合には、第1ドメイン10によって実行され 前に再起動する必要があることも想定され 。そこで、本実施形態では、第1ドメイン10 指示に応じられない場合や、再起動する必 がある場合に、第2ドメイン20が実行する処 について説明する。まず、本実施形態に係 第2ドメイン20では、実行制限部123は、第1ド メイン10によってソフトウエアが実行される 、例えば、改竄されたソフトウエアを実行 たために、第1ドメイン10で異常が検出され 場合、第1ドメイン10をリセット(再起動)す 。また、実行制限部123は、第2ドメイン20に って実行されるソフトウエアが安全である 否かを検査する処理において、第2ドメイン2 0に、例えば、改竄されたソフトウエアを実 したために、第2ドメイン20で異常が検出さ た場合、第2ドメイン20をリセットする。な 、実行制限部123は、第1ドメイン10がフリー 等の異常が検出された際も、第1ドメイン10 リセットするように構成されていてもよい また、実行制限部123は、第1ドメイン10をリ ットするだけでなく、第2ドメイン20も共に セットすることもできる。また、実行制限 123は、第2ドメイン20において、セキュアブ トの失敗等の異常が発生し、第2ドメイン20 セキュリティが保証できない場合には、端 装置1自体のリセットを行ってもよい。

 また、本実施形態に係る実行順序記憶部1 11には、図7に示すように、ソフトウエアIDと 実行優先順序と、当該ソフトウエアIDに対 するソフトウエアが実行中である場合、第1 メイン10に対する指示内容を示す情報と、 実行中である場合に、第1ドメイン10に対す 指示内容を示す情報とが、予め対応付けて 憶されている。

 また、実行順序記憶部111には、第1ドメイ ン10がソフトウエアを実行中である場合の指 内容を示す情報として、第1ドメイン10の制 が可能な場合の指示内容を示す“制御可能 指示情報”(例えば、実行停止)と、制御が 可能な場合の指示内容を示す“制御不可能 指示情報”(例えば、リセット)とが、記憶さ れている。更に、実行順序記憶部111には、第 1ドメイン10がソフトウエアを非実行中である 場合の指示内容を示す情報として、第1ドメ ン10の制御が可能な場合の指示内容を示す“ 制御可能時指示情報”(例えば、実行禁止)と 制御が不可能な場合の指示内容を示す“制 不可能時指示情報”(例えば、リセット)と 、記憶されている。

 また、本実施形態に係る実行制限部123は ソフトウエア検査部117から、検査結果とし 、安全でないことが確認されたソフトウエ IDの通知を受けた場合、第1ドメイン10にお て、通知されたソフトウエアIDに対応するソ フトウエアが、実行中であるか否かを判定す る。なお、実行制限部123は、ソフトウエア検 査部117から、判定結果として、安全であるこ とが確認されたソフトウエアIDの通知を受け 場合、上述する第1実施形態と同様の処理を 実行する。また、第1ドメイン10によって当該 ソフトウエアが実行中であるか否かを判定す る方法としては、第1ドメイン10が、ソフトウ エアを実行する度に、対応するソフトウエア IDを実行制限部123に通知するように構成され 実行制限部123は、この通知に基づいて、安 でないと判定されたソフトウエアが、第1ド メイン10で実行中のソフトウエアであるか否 を判定するように構成されていてもよい。

 また、実行制限部123は、第1ドメイン10に いて、当該ソフトウエアが実行中であるか かを判定した後、上述する実行順序記憶部1 11を参照し、実行順序記憶部111に記憶されて る実行中又は非実行中の“制御可能時指示 報”に基づいて、第1ドメイン10の動作を制 する。

 具体的に、実行制限部123は、ソフトウエ が実行中であると判定した場合、実行順序 憶部111において、当該ソフトウエアIDに対 する実行中の“制御可能時指示情報(例えば 実行停止)”に基づいて、第1ドメイン10に当 該ソフトウエアの動作を指示(例えば、実行 止)する。また、実行制限部123は、ソフトウ アが実行中でないと判定した場合も、当該 フトウエアIDに対応する非実行中の“制御 能時指示情報(例えば、実行禁止)”に基づい て、第1ドメイン10に当該ソフトウエアの動作 を指示(例えば、実行禁止)する。

 そして、実行制限部123は、“制御可能時 示情報”に基づいて、第1ドメイン10に指示 た後、第1ドメイン10が、この指示に応じら ない場合、上述する実行順序記憶部111を参 し、実行順序記憶部111に記憶されている実 中又は非実行中の“制御不可能時指示情報 に基づいて、第1ドメイン10に動作を制御す 。

 具体的に、実行制限部123は、第1ドメイン 10が当該ソフトウエアを実行中であり、かつ 第1ドメイン10がこの指示に応じられない場 、実行順序記憶部111において、当該ソフト エアIDに対応づけて記憶されている実行中 “制御不可能時指示情報(例えば、削除)”に 基づいて、第1ドメイン10に動作を指示(例え 、削除)する。また、実行制限部123は、第1ド メイン10が当該ソフトウエアを実行中でなく( 非実行中であり)、かつ、この指示に応じな 場合も、当該ソフトウエアIDに対応づけて記 憶されている非実行中の“制御不可能時指示 情報(例えば、削除)”に基づいて、第1ドメイ ン10に動作を指示(例えば、削除)する。なお 実行制限部123は、実行順序記憶部111におい 、当該ソフトウエアIDに対応する“制御不可 能時指示情報”が、例えば、“削除”である 場合、第1ドメイン10に“削除”を指示せずに 、即、当該ソフトウエアの削除を実行しても よい。

 また、実行制限部123は、実行順序記憶部1 11において、当該ソフトウエアIDに対応する 制御不可能時指示情報”が、例えば、“リ ット”である場合、第1ドメイン10を強制的 リセットする。なお、実行制限部123は、当 ソフトウエアを“削除”した後に、第1ドメ ン10を“リセット”する等、二つの処理を 行するように構成されていてもよい。

 上述するように、本実施形態に係る第2ド メイン20では、実行制限部123が、第1ドメイン 10が指示に応じられるか否か(制御可能である か否か)に基づいて、ソフトウエアの実行停 (又は実行禁止)や、ソフトウエアの削除、第 1ドメイン10のリセット、等を行うので、第1 メイン10におけるソフトウエアの実行状態に 応じて、セキュリティを確保するため制御を 適切に行うことができる。

 また、本実施形態に係る第2ドメイン20で 、実行制限部123が、第1ドメイン10に異常が 出された場合や、第2ドメイン20に異常が検 された場合、第1ドメイン10や第2ドメイン20 リセットするので、端末装置1のセキュリテ ィを確保することができる。

[第3実施形態]
(第3実施形態に係る端末装置の構成)
次に、本発明の第3実施形態に係る端末装置1 構成について、上述した第1実施形態との相 違点に着目して説明する。上述したように第 2ドメイン20は、DSPや暗号アクセラレータなど 第1ドメイン10の支援を目的とした第2ドメイ 20に適用される。そのため、第1ドメイン10か ら第2ドメイン20の本来の目的のために呼び出 されることもある。そこで第2ドメイン20は、 第2ドメイン20の本来の処理と同等のものとし て実現する。仮に暗号アクセサレータに第2 メイン20を導入することを想定すると、第2 メイン20では、第1ドメインから受け付ける 号処理を、タスクまたはプロセスとして実 できる。図8は、本実施形態に係る端末装置1 において、第2ドメイン20で実行される処理の 対象が遷移する様子を示したイメージ図であ る。

 例えば、第2ドメイン20がソフトウエアを 査中であった場合(ステップS201)、第1ドメイ ン10から、例えば、所定のアプリケーション 実行するなどの本来の処理要求がされると 第2ドメイン20のカーネルによりスケジュー される(ステップS203)。この時、第2ドメイン 20は、検査処理の優先度を低めに設定するこ で、すぐに要求に応じ、暗号処理等、第2ド メイン20本来のアプリケーションの処理動作 切り替える(ステップS205)。また、第2ドメイ ン20は、要求されたアプリケーションの処理 完了すると、カーネルにより検査処理がス ジュールされて、再度、ソフトウエアの検 処理のタスクを再開する(ステップS207)。

 このようにして、第2ドメインでは、本来 の処理には影響を与えず、処理を要求した第 1ドメイン10への応答性を損ねることもなくな るため、端末装置1を使用する際の影響を最 限にすることができる。

[その他の実施の形態]
本発明は上記の実施形態によって記載したが 、この開示の一部をなす論述及び図面はこの 発明を限定するものであると理解すべきでは ない。この開示から当業者には様々な代替実 施形態、実施例及び運用技術が明らかとなろ う。

 例えば、本発明による第2ドメイン20は、 ロセッサやRAMなどのハードウェアに対して 別な制限を課していないため、マルチコア ロセッサなどの汎用プロセッサへも導入す ことができる。この場合マルチコアに対応 た汎用プロセッサに本発明の第2ドメイン20 導入することにより、PCやサーバなどでも 通常利用への影響を与えずにセキュリティ 維持することが可能となる。

 このように、本発明はここでは記載して ない様々な実施形態等を含むことは勿論で る。また、各実施形態は、組み合わせるこ も可能である。従って、本発明の技術的範 は上記の説明から妥当な特許請求の範囲に る発明特定事項によってのみ定められるも である。

 なお、日本国特許出願第2007-031380号(2007年 2月9日出願)の全内容が、参照により、本願明 細書に組み込まれている。

産業上の利用の可能性

 以上説明したように、本発明に係る端末 置及びソフトウエア検査方法によれば、端 装置において、セキュリティを確保しつつ ソフトウエアの検査によってOSやアプリケ ションの起動期間が増加することを低減す ことができるため有用である。