(57)【要約】  本発明に係る端末装置は、複数のソフトウエアを実行する第１ドメインと、当該第１ドメインと独立して動作し、ソフトウエアが安全か否かを検査する第２ドメインとを備え、第２ドメインは、第１ドメインによって実行される前記複数のソフトウエアの実行優先順序を記憶する実行順序記憶部と、実行順序記憶部に従って、複数のソフトウエアが安全であるか否かを検査するソフトウエア検査部と、複数のソフトウエアの内、安全ではないという検査結果が得られたソフトウエアの第１ドメインによる実行を、前記複数のソフトウエアの全ての検査が完了する前に制限する実行制限部とを備える。
2008096891.tif 000002
【特許請求の範囲】
【請求項１】
複数のソフトウエアを実行する第１ドメインと、前記第１ドメインと独立して動作し、前記複数のソフトウエアの各々が安全か否かを検査する第２ドメインとを備え、
前記第２ドメインは、
前記第１ドメインによって実行される前記複数のソフトウエアの実行優先順序を記憶する実行順序記憶部と、
前記実行順序記憶部に記憶されている前記実行優先順序に従って、前記複数のソフトウエアが安全であるか否かを検査するソフトウエア検査部と、
前記複数のソフトウエアの内、安全ではないという検査結果が得られたソフトウエアの前記第１ドメインによる実行を、前記複数のソフトウエアの全ての検査が完了する前に制限する実行制限部と
を備えることを特徴とする端末装置。
【請求項２】
前記実行順序記憶部は、前記第１ドメインを識別する第１ドメイン識別情報又は前記第２ドメインを識別する第２ドメイン識別情報のいずれか一つと、前記複数のソフトウェアの各々とを対応付けて記憶し、
前記第２ドメインの前記ソフトウェア検査部は、前記実行優先順序に従って、前記第２ドメイン識別情報に対応付けて記憶されているソフトウェアが安全であるか否かを検査し、
前記第１ドメインは、
前記第１ドメイン識別情報に対応付けて記憶されているソフトウェアが安全であるか否かを検査するサブソフトウェア検査部を備えることを特徴とする請求項１に記載の端末装置。
【請求項３】
前記実行順序記憶部は、前記端末装置の起動時と前記端末装置の起動後との少なくとも一方のタイミングを示すタイミング情報と、前記複数のソフトウェアの各々とを対応付けて記憶し、
前記ソフトウェア検査部と前記サブソフトウェア検査部とは、前記タイミング情報によって示されるタイミングに従って、前記ソフトウェアが安全であるか否かを検査することを特徴とする請求項２に記載の端末装置。
【請求項４】
前記第２ドメインは、
前記複数のソフトウエアの内、前記ソフトウエア検査部において安全であることが確認されたソフトウエアの識別情報を記憶する安全ソフトウエアリストを更に備え、
前記第１ドメインは、所定のソフトウェアを実行する前に、前記所定のソフトウェアの識別情報が前記安全ソフトウェアリストに記憶されているか否かを判定し、前記所定のソフトウェアの識別情報が前記安全ソフトウェアリストに記憶されていない場合、前記所定のソフトウェアの実行を制限することを特徴とする請求項１乃至３のいずれか１項に記載の端末装置。
【請求項５】
前記複数のソフトウエアには、前記第１ドメインによって常に実行される第１ソフトウエアと、所定の頻度で実行される第２ソフトウエアとが含まれており、
前記実行順序記憶部は、前記第２ソフトウエアの前記実行優先順序よりも前記第１ソフトウエアの前記実行優先順序を優先して記憶しており、
前記ソフトウエア検査部は、前記実行優先順序に従って、前記第２ソフトウエアよりも前記第１ソフトウエアを優先して安全か否かを検査する
ことを特徴とする請求項１乃至４のいずれか１項に記載の端末装置。
【請求項６】
前記第２ドメインは、
前記第１ドメインによって実行される前記第２ソフトウエアの実行頻度を取得する実行頻度取得部と、
取得された前記実行頻度と前記第２ソフトウエアとを対応付けて記憶する実行頻度記憶部とを更に備え、
前記ソフトウエア検査部は、前記実行頻度記憶部に記憶されている前記実行頻度を前記実行優先順序として、前記第２ソフトウエアが安全であるか否かを検査する
ことを特徴とする請求項５に記載の端末装置。
【請求項７】
前記第２ドメインは、
前記複数のソフトウエアの内、前記ソフトウエア検査部において安全でないことが確認されたソフトウエアの識別情報を記憶する非安全ソフトウエアリストを更に備える
ことを特徴とする請求項１乃至６のいずれか１項に記載の端末装置。
【請求項８】
前記ソフトウエア検査部は、所定の期間毎に、前記複数のソフトウエアが安全であるか否かを検査する
ことを特徴とする請求項１乃至７のいずれか１項に記載の端末装置。
【請求項９】
前記第１ドメインは、前記複数のソフトウエアの内、検査されたソフトウエアの検査結果を要求する結果要求情報を送信し、
前記第２ドメインは、
前記第１ドメインから前記結果要求情報を受信した際に、前記安全ソフトウエアリストに記憶されている前記識別情報と前記非安全ソフトウエアリストに記憶されている前記識別情報とを含む結果応答情報を前記第１ドメインに送信する結果通知部を更に備え、
前記第１ドメインは、前記結果通知部から受信した前記結果応答情報をに基づいて、前記ソフトウエア検査部によって安全が確認された前記ソフトウエアのみを実行する
ことを特徴とする請求項７に記載の端末装置。
【請求項１０】
前記第２ドメインは、
前記第１ドメインから前記ソフトウエアの検査を要求する検査要求情報を受信する要求受付部を更に備え、
前記第１ドメインは、前記結果通知部から通知された前記結果応答情報に、今から実行を開始する特定のソフトウエアの識別情報が含まれていない場合、前記特定のソフトウエアの検査を要求する前記検査要求情報を前記要求受付部に送信し、
前記要求受付部は、前記検査要求情報を受信した際に前記ソフトウエア検査部が前記特定のソフトウエアとは異なる他のソフトウエアを検査中であった場合、前記他のソフトウエアの検査を中断させ、
前記ソフトウエア検査部は、前記特定のソフトウエアを優先して、前記特定のソフトウエアが安全であるか否かを検査する
ことを特徴とする請求項９に記載の端末装置。
【請求項１１】
前記第１ドメインは、前記検査要求情報を送信した際、前記実行制限部からの指示を受けるまで、前記特定のソフトウエアの実行を停止し、
前記実行制限部は、前記ソフトウエア検査部によって前記特定のソフトウエアが安全であると確認された場合、前記第１ドメインに前記特定のソフトウエアの実行を指示する
ことを特徴とする請求項１０に記載の端末装置。
【請求項１２】
前記第１ドメインは、前記検査要求情報を前記要求受付部へ送信した際、前記特定のソフトウエアの実行を開始し、
前記実行制限部は、前記ソフトウエア検査部によって前記特定のソフトウエアが安全ではないと確認された場合、前記第1ドメインに対して、前記特定のソフトウエアの実行を制限する
ことを特徴とする請求項１０に記載の端末装置。
【請求項１３】
前記実行制限部は、前記ソフトウエア検査部によって前記複数のソフトウエアが安全であるか否かの検査が完了されるまで、前記第１ドメインに前記複数のソフトウエアの実行を制限する
ことを特徴とする請求項１に記載の端末装置。
【請求項１４】
複数のソフトウエアを実行する第１ドメインと、前記複数のソフトウエアの各々が安全か否かを検査する第２ドメインとを備える端末装置におけるソフトウエア検査方法であって、
前記第２ドメインが、前記第１ドメインによって実行される前記複数のソフトウエアの実行優先順序を記憶する順序記憶ステップと、
前記第２ドメインが、前記実行優先順序に従って、前記複数のソフトウエアが安全であるか否かを検査する検査ステップと、
前記第２ドメインが、前記複数のソフトウエアの内、安全ではないという検査結果が得られたソフトウエアの前記第１ドメインによる実行を、前記複数のソフトウエアの全ての検査が完了する前に制限する制限ステップと
を含むことを特徴とするソフトウエア検査方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ソフトウエアを実行する第１ドメインと、前記ソフトウエアが安全か否かを検査する第２ドメインとを備える端末装置及びソフトウエア検査方法に関する。
【背景技術】
【０００２】
従来、携帯電話、ＰＤＡ（Personal Digital Assistants）、ＰＣ等の端末装置において、オペレーティングシステム（以下、ＯＳ）やアプリケーションなどのソフトウエアに、外部から改竄が行われて安全性が低下することが懸念されている。そこで、近年では、端末装置のセキュリティを確保するため、当該ソフトウエアが安全か否かを検査する様々な技術が提案されている（例えば、特許文献１参照）。【０００３】
特許文献１には、複数のプロセッサを用いて、ソフトウエアの検査を行う技術が開示されている。特許文献１に開示されている技術では、装置で用いられる基本的なソフトウエアを実行するメインプロセッサと、当該メインプロセッサから隔離したセキュアプロセッサとを備える装置において、セキュアプロセッサが、メインプロセッサで実行するソフトウエアの検査を行う。かかるセキュアプロセッサでは、暗号処理及び復号処理に使用する鍵が外部からアクセスできないよう保存されている。そして、かかるセキュアプロセッサは、当該鍵を用いて、メインプロセッサで実行されるソフトウエアの復号化が成功するか否かに応じて、当該ソフトウエアが安全か否かを検査する。また、かかるセキュアプロセッサは、ソフトウエアを二次記憶メモリからメインメモリへのロード及びストアする度に、当該ソフトウエアの検査を行うことで、メインプロセッサで実行されるソフトウエアのセキュリティを確保している。
【特許文献１】特開２００６−１８５２８号公報
【発明の開示】
【０００４】
しかしながら、特許文献１に開示される技術では、OSやアプリケーション等のソフトウエアが起動（ロード）される際に、当該ソフトウエアの検査を行い、その検査が完了した後に、当該ソフトウエアが利用可能となる。よって、ブート時にOSやアプリケーションを順に実行する端末装置の起動時間の増加や、ユーザがアプリケーションを呼び出した際の応答性の悪化など、ユーザの利便性が悪化するという問題があった。また、携帯電話やPCなどで用いられるソフトウエアの容量は、近年、増加し続けており、それに伴ってソフトウエアの検査時間が増えているため、検査時間の短縮や検査時間をユーザから隠蔽するなどの対策が必要である。
【０００５】
そこで、本発明は、上述した問題に鑑みてなされたものであり、セキュリティが低下することを抑制しつつ、ソフトウエアの検査によってＯＳやアプリケーションの起動期間が増加することを低減する端末装置及びソフトウエア検査方法を提供することを目的とする。
【０００６】
上記目的を達成するため、本発明の第１の特徴は、複数のソフトウエアを実行する第１ドメイン（第１ドメイン１０）と、前記第１ドメインと独立し、前記複数のソフトウエアの各々が安全か否かを検査する第２ドメイン（第２ドメイン２０）とを備える端末装置（端末装置１）であって、前記第２ドメインは、前記第１ドメインによって実行される前記複数のソフトウエアの実行優先順序を記憶する実行順序記憶部（実行順序記憶部１１１）と、前記実行順序記憶部に記憶されている前記実行優先順序に従って、前記複数のソフトウエアが安全であるか否かを検査するソフトウエア検査部（ソフトウエア検査部１１７）と、前記複数のソフトウエアの内、安全ではないという検査結果が得られたソフトウエアの前記第１ドメインによる実行を、前記複数のソフトウエアの全ての検査が完了する前に制限する実行制限部（実行制限部１２３）とを備えることを要旨とするものである。
【０００７】
かかる特徴によれば、端末装置では、第２ドメインのソフトウエア検査部が、第１ドメインの処理に依存せずに、独立して次々とソフトウエアを検査することが可能になるため、ソフトウェアの検査時間を短縮できる。また、第１ドメインが、アプリケーションやミドルウェア、OS、 デバイスドライバ等のソフトウエアを実行する際に、第１ドメインが、検査処理を行わないため、ユーザに対して、検査時間のオーバヘッドを隠蔽することが可能になる。さらに、第２ドメインの実行制限部は、複数のソフトウエアの全ての検査が完了する前に、第１ドメインによるソフトウエアの実行を制限するので、第１ドメインが、全ての検査が完了する前にソフトウエアを実行する場合であっても、セキュリティを確保できる。
【０００８】
このように、かかる特徴によれば、端末装置は、ソフトウエアを検査することによってセキュリティを確保しつつ、当該検査によってＯＳやアプリケーションの起動期間が増加することを低減することができる。
【０００９】
本発明の第２の特徴は、第１の特徴に係り、実行順序記憶部は、前記第１ドメインを識別する第１ドメイン識別情報又は前記第２ドメインを識別する第２ドメイン識別情報のいずれか一つと、前記複数のソフトウェアの各々とを対応付けて記憶し、前記第２ドメインの前記ソフトウェア検査部は、前記実行優先順序に従って、前記第２ドメイン識別情報に対応付けて記憶されているソフトウェアが安全であるか否かを検査し、前記第１ドメインは、前記第１ドメイン識別情報に対応付けて記憶されているソフトウェアが安全であるか否かを検査するサブソフトウェア検査部（サブソフトウエア検査部２００）を備えることを要旨とするものである。
【００１０】
かかる特徴によれば、第２ドメインのハードウェアやソフトウェアの制約により、検査が不能なソフトウェアを第1ドメインやその他のドメインに任せるなど、検査処理を分担することが可能になる。また、検査処理の負荷を分散させて端末装置全体の処理効率を向上させることができる。
【００１１】
本発明の第３の特徴は、第１又は２の特徴に係り、前記実行順序記憶部は、前記端末装置の起動時と前記端末装置の起動後との少なくとも一方のタイミングを示すタイミング情報と、前記複数のソフトウェアの各々とを対応付けて記憶し、前記ソフトウェア検査部と前記サブソフトウェア検査部とは、前記タイミング情報によって示されるタイミングに従って、前記ソフトウェアが安全であるか否かを検査することを要旨とするものである。
【００１２】
かかる特徴によれば、第2ドメインの検査処理性能や検査開始タイミングなどの制約から、第１ドメインの実行前に検査が完了できないソフトウェアについて、第１ドメインの起動時のタイミングで検査させることができ、安全性を確保できる。すなわち、第１ドメインにて、検査完了前のソフトウェアを実行してしまうことを防止できる。
【００１３】
本発明の第４の特徴は、第１乃至３のいずれか１つの特徴に係り、  前記第２ドメインは、前記複数のソフトウエアの内、前記ソフトウエア検査部において安全であることが確認されたソフトウエアの識別情報を記憶する安全ソフトウエアリスト（安全ソフトウエアリスト１１９）を更に備え、前記第１ドメインは、所定のソフトウェアを実行する前に、前記所定のソフトウェアの識別情報が前記安全ソフトウェアリストに記憶されているか否かを判定し、前記所定のソフトウェアの識別情報が前記安全ソフトウェアリストに記憶されていない場合、前記所定のソフトウェアの実行を制限（ブロック）することを要旨とするものである。
【００１４】
かかる特徴によれば、第１ドメインにて、検査完了前のソフトウェアを実行してしまうことを防止できる。
【００１５】
本発明の第５の特徴は、第１乃至４のいずれかの特徴に係り、前記複数のソフトウエアには、前記第１ドメインによって常に実行される第１ソフトウエアと、所定の頻度で実行される第２ソフトウエアとが含まれており、前記実行順序記憶部は、前記第２ソフトウエアの前記実行優先順序よりも前記第１ソフトウエアの前記実行優先順序を優先して記憶しており、前記ソフトウエア検査部は、前記実行優先順序に従って、前記第２ソフトウエアよりも前記第１ソフトウエアを優先して安全か否かを検査することを要旨とするものである。
【００１６】
本発明の第６の特徴は、第５の特徴に係り、前記第２ドメインは、前記第１ドメインによって実行される前記第２ソフトウエアの実行頻度を取得する実行頻度取得部（実行頻度取得部１１３）と、取得された前記実行頻度と前記第２ソフトウエアとを対応付けて記憶する実行頻度記憶部（実行頻度記憶部１１５）とを更に備え、前記ソフトウエア検査部は、前記実行頻度記憶部に記憶されている前記実行頻度を前記実行優先順序として、前記第２ソフトウエアが安全であるか否かを検査することを要旨とするものである。  
本発明の第７の特徴は、第１乃至６のいずれか１つの特徴に係り、前記複数のソフトウエアの内、前記ソフトウエア検査部において安全ではないことが確認された前記ソフトウエアの識別情報を記憶する非安全ソフトウエアリスト（非安全ソフトウエアリスト１２１）を更に備えることを要旨とするものである。  
本発明の第８の特徴は、第１乃至７のいずれか１つの特徴に係り、前記ソフトウエア検査部は、所定の期間毎に、前記複数のソフトウエアが安全であるか否かを検査することを要旨とするものである。
【００１７】
本発明の第９の特徴は、第７の特徴に係り、前記第１ドメインは、前記複数のソフトウエアの内、検査されたソフトウエアの検査結果を要求する結果要求情報を送信し、前記第２ドメインは、前記第１ドメインから前記結果要求情報を受信した際に、前記安全ソフトウエアリストに記憶されている前記識別情報と前記非安全ソフトウエアリストに記憶されている前記識別情報とを含む結果応答情報を前記第１ドメインに送信する結果通知部（結果通知部１２７）を更に備え、前記第１ドメインは、前記結果通知部から受信した前記結果応答情報に基づいて、前記ソフトウエア検査部によって安全が確認された前記ソフトウエアのみを実行することを要旨とするものである。
【００１８】
本発明の第１０の特徴は、第９の特徴に係り、前記第２ドメインは、前記第１ドメインから前記ソフトウエアの検査を要求する前記検査要求情報を受信する要求受付部（要求受付部１３１）を更に備え、前記第１ドメインは、前記結果通知部から通知された前記結果応答情報に、今から実行を開始する特定のソフトウエアの識別情報が含まれていない場合、前記特定のソフトウエアの検査を要求する前記検査要求情報を要求受付部に送信し、前記要求受付部は、前記検査要求情報を受信した際に前記ソフトウエア検査部が前記特定のソフトウエアとは異なる他のソフトウエアを検査中であった場合、他のソフトウエアの検査を中断させ、前記ソフトウエア検査部は、前記特定のソフトウエアを優先して、前記特定のソフトウエアが安全であるか否かを検査することを要旨とするものである。
【００１９】
本発明の第１１の特徴は、第１０の特徴に係り、前記第１ドメインは、前記検査要求情報を送信した際、前記実行制限部からの指示を受けるまで、前記特定のソフトウエアの実行を停止し、前記実行制限部は、前記ソフトウエア検査部によって前記特定のソフトウエアが安全であると確認された場合、前記第１ドメインに前記特定のソフトウエアの実行を指示することを要旨とするものである。
【００２０】
本発明の第１２の特徴は、第１０の特徴に係り、前記第１ドメインは、前記検査要求情報を前記要求受付部へ送信した際、前記特定のソフトウエアの実行を開始し、前記実行制限部は、前記ソフトウエア検査部によって前記特定のソフトウエアが安全ではないと確認された場合、第1ドメインに対して、前記特定のソフトウエアの実行を制限することを要旨とするものである。
【００２１】
本発明の第１３の特徴は、第１の特徴に係り、前記実行制限部は、前記ソフトウエア検査部によって前記複数のソフトウエアが安全であるか否かの検査が完了されるまで、前記第１ドメインに前記複数のソフトウエアの実行を制限することを要旨とするものである。
【００２２】
本発明の第１４の特徴は、複数のソフトウエアを実行する第１ドメインと、前記複数のソフトウエアの各々が安全か否かを検査する第２ドメインとを備える端末装置におけるソフトウエア検査方法であって、前記第２ドメインが、前記第１ドメインによって実行される前記複数のソフトウエアの実行優先順序を記憶する順序記憶ステップと、前記第２ドメインが、前記実行優先順序に従って、前記複数のソフトウエアが安全であるか否かを検査する検査ステップと、前記第２ドメインが、前記第２ドメインが、前記複数のソフトウエアの内、安全ではないという検査結果が得られたソフトウエアの前記第１ドメインによる実行を制限する制限ステップとを含むことを要旨とするものである。
【００２３】
上述するように、本発明によると、セキュリティが低下することを抑制しつつ、ソフトウエアの検査によってＯＳやアプリケーションの起動期間が増加することを低減する端末装置及びソフトウエア検査方法を提供することができる。
【図面の簡単な説明】
【００２４】
【図１】図１は、第１実施形態に係る端末装置の全体概略構成及び第２ドメインの最小機能ブロック図である。
【図２】図２は、第１実施形態に係る第２ドメインの構成を具体的に示す機能ブロック図である。
【図３】図３は、第１実施形態に係る実行順序記憶部に記憶される情報を示す図である。
【図４】図４は、第１実施形態に係る実行頻度記憶部に記憶される情報を示す図である。
【図５】図５は、第１実施形態において、第１ドメインと第２ドメインとが起動する際の時系列上の動作を示す図である。
【図６】図６は、第１実施形態において、第１ドメインがソフトウエアを実行し、第２ドメインがソフトウエアを検査する際の時系列上の動作を示す図である。
【図７】図７は、第２実施形態に係る実行順序記憶部に記憶される情報を示す図である。
【図８】図８は、第３実施形態において、第２ドメインの処理状態が遷移するイメージを示す図である。
【図９】図９は、第１実施形態に係る実行順序記憶部に記憶される情報の一例を示す図である。
【図１０】図１０は、第１実施形態に係る実行順序記憶部に記憶される情報の一例を示す図である。
【図１１】図１１は、第１実施形態に係る実行順序記憶部に記憶される情報の一例を示す図である。
【発明を実施するための最良の形態】
【００２５】
次に、図面を参照して、本発明の実施の形態を説明する。以下の図面の記載において、同一又は類似の部分には、同一又は類似の符号を付している。ただし、図面は模式的なものであることに留意すべきである。【００２６】
［第1実施形態］
（端末装置の構成）
本発明の第1実施形態に係る端末装置１の構成について説明する。本発明は、複数のドメインを動作させる機能を持つ端末装置を対象としている。また、本実施形態において、端末装置１は、複数のドメイン上で、オペレーティングシステム（以下、ＯＳ）及びアプリケーション等のソフトウエアを実行する、携帯電話、ＰＤＡ（Personal Digital Assistants）、ＰＣ等を想定している。【００２７】
ここで、本実施形態において、ドメインとは、物理的、論理的に関わらず、プロセッサやＲＡＭ（Random Access Memory）から構成される１つの独立したプロセッシングコアを指す。物理的に複数のドメインを持つ実施形態の例としては、高速化や低消費電力を実現するため、主ドメインとは別にＤＳＰ（Digital Signal Processor）を副ドメインとして持つマルチメディア携帯端末、ＩＰＳｅｃ（Security Architecture for Internet Protocol）に準拠する暗号処理アクセラレータをサブドメインとして持つ情報携帯端末などがある。特にＤＳＰや暗号アクセラレータは、主ドメインからの指示を受けてから処理をするタイプが多く、その間はアイドルまたは休眠している。【００２８】
１つのプロセッサに複数のプロセッシングコアを持つマルチコアプロセッサも、物理的に複数のドメインを持つ実施形態である。また１つのプロセッシングコアを時空間分割することにより計算機資源を分割し、論理的に複数のドメインを持つ方法として、ＡＲＭ社のTrust ZoneやVMwareなどの仮想計算機が挙げられる。【００２９】
上述した複数のドメインは、それぞれ独立に動作し、ドメイン上で動作するＯＳも独立に動作する。本発明は、端末装置１の処理の多くを担う主ドメイン(以降第１ドメイン) と、主ドメインを支援する副ドメイン(以降第２ドメイン) を利用し、第１ドメイン上でＯＳを含むソフトウエアを通常動作させながら、第２ドメイン上では、第１ドメイン上で動作させているＯＳとは異なるＯＳを動作させ、第２ドメインが、第１ドメインのすべてのソフトウエアを並列に検査するための装置および方法に関するものである。つまり、端末装置１において、第１ドメインと第２ドメインとは、一つのＯＳを動作するものではなく、それぞれ異なるＯＳを独立に、かつ並列に動作する。なお、第１ドメインと第２ドメインとは、独立した別々のコードを用いて、同じ種類のＯＳを動作させるように構成されていてもよい。また、第２ドメインは、起動と共に第１ドメインで実行可能なソフトウエアの検査を開始する。第２ドメインは、第１ドメインのソフトウエアに異常が確認されたときには、端末装置の起動の中止やリセットを行ってもよいし、第１ドメインの動作中に、異常のソフトウエアのみ、実行停止や実行禁止等を行ってもよい。【００３０】
図１は、本実施形態に係る端末装置１の構成を示す機能ブロック図である。図１に示すように、本実施形態に係る端末装置１は、第１ドメイン１０と、第２ドメイン２０とを備える。【００３１】
第1ドメイン１０は、端末装置１で用いられる基本的な複数のソフトウエアを実行する。具体的に、第1ドメイン１０は、端末装置１で基本的に用いられるＯＳや、当該ＯＳ上で起動するアプリケーション等のソフトウエアを実行する。なお、これらのソフトウエアは、予め全て記憶されている。【００３２】
なお、本実施形態において、ソフトウエアは、常に実行される第１ソフトウエアと、所定の頻度で実行される第２ソフトウエアとに分類する。例えば、ＯＳは、端末装置１の起動時に必ず実行されるソフトウエアであり、常に実行される第１ソフトウエアに含まれる。また、アプリケーションには、常に実行される第１ソフトウエア（アプリケーション）と、所定の頻度で実行される第２ソフトウエア（アプリケーション）が含まれる。例えば、携帯電話を例に挙げると、第１ソフトウエアとしては、常に起動される電話用のアプリケーションなどがある。また、所定の頻度で実行される第２ソフトウエアとしては、ユーザ操作によって起動されるゲーム用のアプリケーションなどがある。【００３３】
第２ドメイン２０は、各種機能を動作させるためのＯＳを起動する。また、第２ドメイン２０は、第1ドメイン１０で実行される複数のソフトウエアが、安全であるか否かを検査（確認）する。具体的に、第２ドメイン２０は、第１ドメイン１０に記憶されているソフトウエアが安全であるか否かを検査し、例えば、安全でないことを確認した場合、対象となるソフトウエアを第１ドメインにおいて実行禁止にしたり、ドメイン１の起動や実行を停止させたり、端末装置自身をリセットするなどの対処を行うなど、端末装置１のセキュリティを確保するための処理を実行する。また、第２ドメイン２０は、図１に示すように、実行順序記憶部１１１、ソフトウエア検査部１１７、実行制限部１２３等の機能を備え、これらの機能を主に、セキュリティを確保するための処理が実行される。【００３４】
なお、第１ドメイン１０を検査する第２ドメイン２０は、高いセキュリティを確保することが望ましい。そこで、第２ドメイン２０は、安全性向上のため、ＡＲＭ社のTrust Zone等のセキュア空間や、メインプロセッサから隔離することにより、高いセキュリティを実現しているセキュアプロセッサなどを利用することができる。また、以下に、第２ドメイン２０に備えられている各種機能について説明する。【００３５】
（第２ドメインの構成）
次に、第２ドメイン２０の構成について、具体的に説明する。図１に示すように、第２ドメイン２０は、実行順序記憶部１１１と、ソフトウエア検査部１１７と、実行制限部１２３とを備える。【００３６】
実行順序記憶部１１１は、第1ドメイン１０で実行されるソフトウエアに対応する実行優先順序が記憶されている。実行優先順序とは、後述するソフトウエア検査部１１７によってソフトウエアを検査する際に、検査する順序として用いられる情報である。ここで、ＯＳでは一般に、カーネル、デバイスドライバ、サーバとして動作するデーモンプログラム、自動で起動するアプリケーションなどの実行順序が静的に定義されている。実行順序記憶部１１１では、例えば、第１ドメイン１０のＯＳに関して、それらを静的に実行される順序を実行優先順序として記憶する。【００３７】
なお、実行優先順序の指定においては、複数のソフトウェアを合わせて一つのソフトウェアとして扱ってもよい。例えば、カーネルと複数のデバイスドライバを合わせて一つのソフトウェアとして、実行順序記憶部に記憶させてもよい。【００３８】
ソフトウエア検査部１１７は、実行順序記憶部１１１に記憶される実行優先順序に従って、第１ドメイン１０のソフトウエアの検査を行う。第２ドメインのＯＳの起動の完了後、即座に検査を開始することが望ましい。また、安全性確保のため、ソフトウエア検査部１１７は、第１ドメイン１０に記憶されている全てのソフトウエアが安全であるか否かを検査（確認）することが望ましい。【００３９】
ソフトウエアの検査方法としては、ソフトウエアコードに対するチェックサムやハッシュ値を求めて、予め記憶すると共に、検査時に読み出して照合する方法や、ソフトウエアコードに付随する電子署名を利用して改竄の有無を検査する方法などが挙げられる。上述した実行順序記憶部１１１には、それら検査に必要なプログラムコードの情報、必要に応じてチェックサムリスト、ハッシュ値が記憶されている。実際には、ソフトウエア検査部１１７は、これらの情報と、ハッシュ計算機能やＲＳＡ方式を用いた公開鍵暗号方式などを利用して検査を行う。【００４０】
実行制限部１２３は、ソフトウエア検査部１１７で検査されたソフトウエアの検査結果に基づいて、当該ソフトウエアが第1ドメイン１０によって実行される際の動作を指示する。例えば、実行制限部１２３は、第１ドメイン１０に対して安全でないことが確認されたソフトウエアの実行禁止を指示する。また、実行制限部１２３は、第１ドメイン１０が、安全でないことが確認されたソフトウエアを実行していた場合には、その停止指示（実行禁止指示）などを行う。なお、実行制限部１２３は、安全でないことが確認されたソフトウエアの削除や、第１ドメイン１０または端末装置１のリセットや実行停止を行ってもよい。このように、実行制限部１２３は、複数のソフトウエアの内、ソフトウエア検査部１１７によって安全ではないという検査結果が得られたソフトウエアの第１ドメイン１０による実行を、複数のソフトウエアの全ての検査が完了する前に制限する。【００４１】
（第２ドメインの詳細な構成）
次に、第２ドメイン２０の構成について、より詳細に説明する。図２は、第２ドメイン２０の構成を、具体的に示す機能ブロック図である。図２に示すように、第２ドメイン２０は、実行順序記憶部１１１と、実行頻度取得部１１３と、実行頻度記憶部１１５と、ソフトウエア検査部１１７と、安全ソフトウエアリスト１１９と、非安全ソフトウエアリスト１２１と、実行制限部１２３と、結果通知部１２７と、リストフラッシュ部１２９と、要求受付部１３１とを備える。【００４２】
実行順序記憶部１１１は、上述したように、第１ドメイン１０で実行されるソフトウエアに対応する実行優先順序が記憶されている。図３には、実行順序記憶部１１１に記憶される情報の具体例が示されている。図３に示すように、実行順序記憶部１１１には、第１ドメイン１０に記憶されているソフトウエアを識別するソフトウエアＩＤ（識別情報）と、第1ドメイン１０で実行されるソフトウエアの実行優先順序、ソフトウエアの検査に必要なハッシュ値などとが関連付けて記憶されている。【００４３】
なお、ソフトウェアＩＤは、１つのソフトウェアに対して与えた識別情報でもよいし、複数のソフトウェアを一組としたものに与えた識別情報であってもよい。また、ソフトウェアIDは、ファイル名でもよいし、ソフトウェアが配置されているアドレスや、アドレスとサイズの組でもよい。【００４４】
図３の具体例では、実行優先順序が指定されているが、明示的な指定でなく、図９の例に示すように、記憶領域の先頭からの順序を実行優先順序としてもよい。【００４５】
さらに、図１０に示すように、実行順序記憶部１１１は、複数のソフトウェアの各々について、いずれのドメインが検査を行うかの指定を記憶してもよい。具体的に、図１に示すように、第１ドメイン１０においても、ソフトウェアが安全であるか否かを検査するサブソフトウェア検査部３００を備えるように構成されていてもよい。この場合、実行順序記憶部１１１は、第１ドメイン１０を識別する第１ドメイン識別情報、又は前記第２ドメイン２０を識別する第２ドメイン識別情報のいずれか一つと、ソフトウェアの各々とを対応付けて記憶する。図１０の具体例では、ソフトウェアＩＤが“１”のソフトウェアは、第１ドメイン（ドメインＩＤ＝1）が検査を行い、その他のソフトウェアＩＤのソフトウェアは第２ドメイン（ドメインＩＤ＝２）が検査を行うことが指定されている。【００４６】
このようにして、第２ドメイン２０のソフトウェア検査部１１７は、実行優先順序に従って、第２ドメイン識別情報に対応付けて記憶されているソフトウェアを検査し、第１ドメイン１０のサブソフトウェア検査部３００が、第１ドメイン識別情報に対応付けて記憶されているソフトウェアを検査してもよい。【００４７】
図１１の具体例では、実行順序記憶部１１１は、ソフトウェアの各々について、端末装置１の起動時および起動後のいずれか、あるいは両方かの検査のタイミングの指定を保持している。具体的に、実行順序記憶部１１１は、端末装置１の起動時と端末装置１の起動後との少なくとも一方のタイミングを示すタイミング情報（起動時、起動後、起動時と起動後の両方）と、ソフトウェアの各々とを対応付けて記憶している。図１１の具体例では、ソフトウェアＩＤが“１”のソフトウェアは第１ドメイン（ドメインＩＤ＝1）が起動時に検査を行い、ソフトウェアＩＤが“２”のソフトウェアは第２ドメイン（ドメインＩＤ＝２）が起動時と起動後の両方で検査を行うことが指定されている。【００４８】
この場合、第２ドメイン２０のソフトウェア検査部１１７及び第１ドメインのサブソフトウェア検査部３００は、タイミング情報と、実行優先順序とに従って、ソフトウェアが安全であるか否かを検査してもよい。【００４９】
また、図４に示す具体例では、実行順序記憶部１１１には、第1ドメイン１０によって常に実行されるＯＳやアプリケーションなどの第１ソフトウエアのソフトウエアＩＤと、第1ドメイン１０によって所定の頻度で実行されるアプリケーションなどの第２ソフトウエアのソフトウエアＩＤとが記憶されている。【００５０】
また、実行順序記憶部１１１では、所定の頻度で実行される第２ソフトウエアの実行優先順序よりも、常に実行される第１ソフトウエアの実行優先順序を優先して記憶している。具体的に、実行順序記憶部１１１では、常に実行されるＯＳやアプリケーションなどの第１ソフトウエアに関しては、実行優先順序が対応付けて記憶されているが、所定の頻度で実行されるアプリケーションなどの第２ソフトウエアに関しては、実行優先順序が対応付けて記憶されていない。この場合、所定の頻度で実行される第２ソフトウエアは、実行優先順序が無いわけではなく、最も実行優先順序が低く記憶されている。【００５１】
実行頻度取得部１１３は、第１ドメイン１０でソフトウエアが実行される度に、実行される当該ソフトウエアを識別するソフトウエアＩＤ（識別情報）を第1ドメイン１０から取得する。また、実行頻度取得部１１３は、当該ソフトウエアＩＤを取得する度に、所定の期間（例えば、一週間など）内に取得された当該ソフトウエアＩＤの取得回数を累積して、実行頻度記憶部１１５に記憶する。なお、実行頻度取得部１１３は、実行頻度を定期的（例えば、所定の期間毎）に消去して、更新するように構成されていてもよい。また、実行頻度取得部１１３は、主に、第1ドメイン１０で常に実行される第１ソフトウエアよりも、所定の頻度で実行される第２ソフトウエアの実行頻度を取得する。【００５２】
実行頻度記憶部１１５は、第１ドメイン１０において、所定の頻度で実行されるソフトウエアの実行頻度が記憶される。なお、実行頻度記憶部１１５には、第１ドメイン１０で実行されるソフトウエアの中でも、実行順序記憶部１１１に実行優先順序が記憶されていないソフトウエアを対象とし、当該ソフトウエアの実行頻度が記憶されている。これらの情報は、実行頻度取得部１１３によって記憶される。図４には、実行頻度記憶部１１５に記憶される情報の具体例が示されている。図４に示すように、実行頻度記憶部１１５は、ソフトウエアＩＤと実行頻度とが対応付けて記憶されている。また、実行頻度記憶部１１５に記憶される情報は、後述するソフトウエア検査部１１７によって読み出され、ソフトウエアを検査する順序を決定する際に用いられる。【００５３】
ソフトウエア検査部１１７は、実行順序記憶部１１１に記憶されている実行優先順序を参照し、当該実行優先順序に従って、第１ドメイン１０に記憶されているソフトウエアを検査（確認）する。また、ソフトウエア検査部１１７は、第２ソフトウエアよりも第１ソフトウエアを優先して安全か否かを検査してもよい。具体的に、ソフトウエア検査部１１７は、第１ソフトウエアの検査を実行した後、第２ソフトウエアに関しては、実行頻度記憶部１１５を参照して、第１ドメイン１０に記憶されているソフトウエアが安全であるか否かを検査する。この時、ソフトウエア検査部１１７は、実行頻度記憶部１１５に記憶されている実行頻度を実行優先順序として、実行頻度が大きい方から順に、実行頻度に対応する第２ソフトウエアが安全であるか否かを検査してもよい。【００５４】
また、ソフトウエア検査部１１７は、所定の期間毎に、一つ又は複数のソフトウエアが安全であるか否かを検査する。具体的に、ソフトウエア検査部１１７は、後述するリストフラッシュ部１２９から、所定の期間毎に、検査の実行を指示する旨の通知を受けると、実行順序記憶部１１１及び実行頻度記憶部１１５に記憶されている情報を参照してソフトウエアの検査を実行する。その際、ソフトウエア検査部１１７は、処理効率を向上させるため、前回安全であることを確認した安全ソフトウエアリスト１１９に記憶されているソフトウエアＩＤに対応するのみを再検査してもよい。【００５５】
また、ソフトウエア検査部１１７は、後述する要求受付部１３１において、第1ドメイン１０から特定のソフトウエアが安全であるか否かの検査を要求する検査要求情報が受信された際、当該検査要求情報に含まれるソフトウエアＩＤに対応するソフトウエア（特定のソフトウエア）を優先して、当該ソフトウエアが安全であるか否かを検査する。例えば、ソフトウエア検査部１１７は、あるソフトウエアを対象に安全であるか否かの検査処理を実行中であっても、要求受付部１３１によって、第1ドメイン１０から検査要求情報が受信された際には、かかる検査処理を中断して、検査要求情報に含まれるソフトウエアＩＤに対応するソフトウエアが安全であるか否かを検査する。【００５６】
また、ソフトウエア検査部１１７は、検査結果を、安全ソフトウエアリスト１１９と非安全ソフトウエアリスト１２１とに記憶する。具体的に、ソフトウエア検査部１１７は、ソフトウエアが安全であるか否かを検査した後、当該ソフトウエアが安全であると確認した場合、かかるソフトウエアを識別するソフトウエアＩＤを、安全ソフトウエアリスト１１９に記憶する。また、ソフトウエア検査部１１７は、ソフトウエアが安全であるか否かを検査した後、当該ソフトウエアが安全でないことを確認した場合、かかるソフトウエアを識別するソフトウエアＩＤを、非安全ソフトウエアリスト１２１に記憶する。また、ソフトウエア検査部１１７は、検査結果とソフトウエアＩＤとを、実行制限部１２３に通知する。この通知に応じて、実行制限部１２３では、第1ドメイン１０の動作を制御する。【００５７】
安全ソフトウエアリスト１１９は、ソフトウエア検査部１１７において安全であると確認されたソフトウエアの識別情報を記憶する。具体的に、安全ソフトウエアリスト１１９は、ソフトウエア検査部１１７で検査された結果、改竄されていない安全なソフトウエアに対応するソフトウエアＩＤ（識別情報）が記憶される。また、非安全ソフトウエアリスト１２１は、ソフトウエア検査部１１７において安全でないことが確認されたソフトウエアの識別情報を記憶する。具体的に、非安全ソフトウエアリスト１２１は、ソフトウエア検査部１１７で検査した結果、改竄されているソフトウエアに対応するソフトウエアＩＤが記憶される。これら２つのリストに記憶したソフトウエア郡は、後述する結果通知部１２７が第1ドメイン１０から検査結果を要求する結果要求情報を受けたとき、結果通知部１２７によって、第1ドメイン１０へ通知される。【００５８】
リストフラッシュ部１２９は、インターバルタイマを備え、定期的に、ソフトウエア検査部１１７に検査の実施を通知する。また、この時、リストフラッシュ部１２９は、安全ソフトウエアリスト１１９に記憶されている情報を全体あるいは部分的に消去する。ここで、以前に、１度安全であることが確認されたソフトウエアは、ランタイムに改竄される可能性もあるため、リストフラッシュ部１２９は、ソフトウエア検査部１１７に、定期的に検査を促すことで、セキュリティを確保する。【００５９】
実行制限部１２３は、ソフトウエア検査部１１７の検査結果に応じて、第1ドメイン１０がソフトウエアを実行する際の動作を指示する。また、実行制限部１２３は、必要に応じて第１ドメイン１０にソフトウエアの実行禁止の指示、実行中断の指示など、第１ドメイン１０の動作を制限し、場合によっては第１ドメイン１０を強制的にリセットする。【００６０】
なお、実行制限部１２３は、ソフトウエア検査部１１７によって、第１ドメイン１０に記憶されている全てのソフトウエアが安全であるか否かの検査が完了されるまで、第1ドメイン１０にソフトウエアの実行禁止を指示するように構成されていてもよい。かかる場合、実行制限部１２３は、例えば、ソフトウエア検査部１１７によって、実行順序記憶部１１１に記憶される全てのソフトウエアの検査が完了するまで、第１ドメイン１０で実行されているＯＳの起動を一時中断させることができる。また、実行制限部１２３は、第２ドメイン２０のＯＳの起動が完了するまで、第１ドメイン１０で実行されているＯＳの起動を一時中断させこともできる。このようにして、実行制限部１２３が、第１ドメイン１０の動作を制限することで、端末装置１では、検査完了後のセキュアな状態で第１ドメイン１０にソフトウエアを実行させることが可能となる。【００６１】
結果通知部１２７は、第１ドメイン１０から、ソフトウエア検査部１１７で検査されたソフトウエアの検査結果を要求する結果要求情報を受信すると共に、安全ソフトウエアリスト１１９に記憶されている識別情報と、非安全ソフトウエアリスト１２１に記憶されている識別情報とを含む結果応答情報を第１ドメイン１０に送信する。このように、第１ドメイン１０は、結果通知部１２７を利用することで、検査済みソフトウエア群に関する情報を取得することができる。また、安全ソフトウェアリスト、非安全ソフトウェアリストが、第１ドメイン１０からアクセス可能なメモリ(RAM)やストレージに配置されている場合、結果要求情報の受信や結果応答情報の送信手順がなくとも、第１ドメイン１０は、検査済みソフトウェア群に関する情報を取得することができる。【００６２】
要求受付部１３１は、第１ドメイン１０から、特定のソフトウエアの検査を要求する検査要求情報を受信した際、当該検査要求情報をソフトウエア検査部１１７に通知する。この時、要求受付部１３１は、現在実行中の検査処理の中止をソフトウエア検査部１１７に通知し、検査要求情報で要求されたソフトウエアを優先的に検査するよう促す。このようにして、第１ドメイン１０が、例えば、ソフトウエア検査部１１７で未検査のソフトウエアを実行する場合、その検査をソフトウエア検査部１１７に要求することができる。【００６３】
なお、検査した結果、安全であることが確認された場合、ソフトウエア検査部１１７は、実行制限部１２３を通じて、その旨を第１ドメイン１０に対して通知する。また、改竄が行われ、安全でないことが確認された場合、実行制限部１２３は、これに即対応し、当該ソフトウエアが実行前であった場合にはそのソフトウエアの実行禁止を促す。【００６４】
（端末装置の動作）
次に、上述する構成の端末装置１の動作について説明する。具体的に、端末装置１において、第１ドメイン１０と第２ドメイン２０とが起動する際に、第２ドメイン２０がソフトウエアの検査を実行する制御動作と、前記第２ドメイン２０がソフトウエアを検査中に、第１ドメイン１０からの検査要求を受けた際の制御動作とについて説明する。【００６５】
（端末装置が起動する際の動作）
まず、図５を参照し、端末装置１が起動する際、第１ドメイン１０と第２ドメイン２０とが起動して、第２ドメイン２０がソフトウエアの検査を実行する制御動作について説明する。図５には、第１ドメイン１０と第２ドメイン２０とが起動する際の時系列上の動作が示されている。なお、前提として、第２ドメイン２０の実行順序記憶部１１１には、予め第１ドメイン１０で実行されるソフトウエアの実行優先順序が記憶されている。また、第２ドメイン２０は、第１ドメイン１０の検査を行う主体であるため、安全確保が必要である。よって、本実施形態では、第２ドメイン２０は、セキュアブート機能を備えているものとする。すなわち、第２ドメイン２０における起動手順（ブート手順）において、次に実行するソフトウェアを検査して正当なものであることを確認した後、該ソフトウエアを実行する。具体的には、最初に起動される第１ローダが第２ローダを検査した後、第２ローダを実行し、第２ローダがＯＳのカーネル部を検査した後、カーネルを実行する。【００６６】
ステップＳ１１において、端末装置１が起動すると、第１ドメイン１０及び第２ドメイン２０が起動を開始し、第１ドメイン１０及び第２ドメイン２０のそれぞれでは、ＯＳの初期化が実行される。第２ドメイン２０では、ＯＳの初期化の完了後、第１ドメインの検査を開始する。より早く検査を開始させるため、ソフトウエア検査部１１７等を、第２ドメイン２０において、デバイスドライバとして実行するように構成されていてもよい。かかる場合、第２ドメイン２０のＯＳの初期化が完了する前であっても、ソフトウエア検査部１１７は、ソフトウエアの検査を開始することが可能になる。【００６７】
第１ドメイン１０と第２ドメイン２０の起動のタイミングの構成によっては、第１ドメイン１０において、検査済みでないソフトウェアが第１ドメインで実行されてしまう。これに対して、以下の３つの方法をとることができる。【００６８】
一つ目の方法Ａでは、実行順序記憶部１１１が、第１ドメイン１０によって最初に実行されるいくつかのソフトウェアを記憶しておくことで、第１ドメイン１０が、そのソフトウエアを実行する前に検査する。具体例として、実行順序記憶部１１１が、図１０の例に示すように、ソフトウエアＩＤとドメインＩＤとを対応付けて記憶している場合、第１ドメイン１０のサブソフトウェア検査部２００が、特定のソフトウエアを実行する前に、特定のソフトウエアの検査が必要であることを認識して、検査する。これにより、未検査のソフトウェアが第１ドメイン１０で実行されることを防ぐ。【００６９】
二つ目の方法Ｂでは、第１ドメイン１０が、ソフトウェアの実行前に、安全ソフトウェアリストを参照し、安全ソフトウェアリスト１１９に前記ソフトウェアが含まれる場合に実行し、含まれない場合には実行をブロック（制限）する。第１ドメイン１０は、ブロック後、安全ソフトウェアリスト１１９を参照し、前記ソフトウェアが含まれることとなったら、ブロックを解除して実行する。【００７０】
三つ目の方法Ｃでは、実行制限部１２３は、ソフトウエア検査部１１７によって第1ドメイン１０のＯＳのソフトウエアの検査が終了するまで、第1ドメイン１０の動作を中断させる。例えば、静的に実行するソフトウエアが定義されているＯＳのセキュリティを確実にしたい場合、実行制限部１２３は、ソフトウエア検査部１１７によって実行順序記憶部１１１に記憶される実行優先順序と対応付けられているソフトウエア（つまり、第１ソフトウエア）の検査が終了する後まで、第１ドメイン１０の起動を遅らせる。【００７１】
ステップＳ１３において、第２ドメイン２０では、ソフトウエア検査部１１７が、第２ドメイン２０のＯＳの初期化が完了した後、実行順序記憶部１１１に記憶されている実行優先順序に従って、ソフトウエアの検査を開始する。実行順序記憶部１１１に記憶されている実行優先順序は、まず第１ドメイン１０で実行されるＯＳのコード（第１ソフトウエア）である。具体例としてに、かかるコードには、カーネル、デバイスドライバ、サーバとして動作するデーモンプログラムが記述されている。また、ソフトウエア検査部１１７は、検査結果を安全ソフトウエアリスト１１９及び非安全ソフトウエアリスト１２１に記憶してもよい。【００７２】
ステップＳ１５はオプションであり、第２ドメイン２０において、ソフトウエア検査部１１７が、実行順序記憶部１１１に記憶される実行優先順序に対応するソフトウエアの検査終了後、引き続き、実行頻度記憶部１１５を参照し、記憶されている実行頻度に対応するソフトウエア（第２ソフトウエア）の検査を、実行頻度が大きい方から順に実行する。【００７３】
第２ドメイン２０では、結果通知部１２７は、第１ドメイン１０から結果要求情報を受信した場合、検査結果を含む結果応答情報を第1ドメイン１０に送信する。【００７４】
また、第２ドメイン２０では、実行制限部１２３は、ソフトウエア検査部１１７によって安全でないことが確認されたソフトウエアを、第１ドメイン１０に対して実行禁止を指示してもよい。第２ドメイン２０が、端末装置１上のソフトウエアをバックアップなどにより、安全な状態で安全に保持する機能を備えている場合、実行制限部１２３は、ソフトウエア検査部１１７によって安全でないことが確認されたソフトウエアを削除し、保持されている安全なソフトウエアに更新して、第１ドメイン１０に記憶するように構成されていてもよい。【００７５】
ステップＳ１９において、第１ドメイン１０は、第１ドメイン１０上のＯＳの初期化を、通常の起動動作の通りに行う。【００７６】
ステップＳ２１において、第１ドメイン１０上のＯＳの初期化が完了した後、第１ドメイン１０が、アプリケーション等のソフトウェアを実行する。この際、安全ソフトウェアリスト１１９を参照して、第２ドメイン２０のソフトウエア検査部１１７によって、安全であることが確認されたアプリケーション等のソフトウエアのみを実行するようにブロックしてもよいし、未検査のソフトウェアをスキップして別のソフトウェアを実行してもよい。後者の場合、第１ドメイン１０は、第２ドメイン２０のソフトウエア検査部１１７によって、第１ドメイン１０に記憶される全てのソフトウエアの検査が完了する前であっても、ソフトウエア検査部１１７によって安全であることが確認されたソフトウエアを実行できる。【００７７】
また、第１ドメイン１０は、ソフトウエアを実行する際、実行するソフトウエアに対応するソフトウエアＩＤを、第２ドメイン２０の実行頻度取得部１１３に通知してもよい。実行頻度取得部１１３では、この通知に基づいて、所定の期間内に取得されたソフトウエアＩＤの取得回数を累積し、第１ドメイン１０におけるソフトウエアの実行頻度を導きだして、実行頻度記憶部１１５に記憶する。また、この情報を用いて、第２ドメイン２０のソフトウエア検査部１１７は、実行頻度記憶部１１５に記憶された実行頻度を、検査すべきソフトウエアの実行優先順序として、ソフトウエアが安全であるか否かを検査する。【００７８】
また、第１ドメイン１０は、ソフトウエアの実行前に、第２ドメイン２０の結果通知部１２７に結果要求情報を送信して、結果通知部１２７から結果応答情報を得てもよい。また、第１ドメイン１０は、結果応答情報に基づいて、ソフトウエア検査部１１７によって安全でないことが確認されたソフトウエアを確認する。そして、第１ドメイン１０は、安全でないことが確認されたソフトウエアを除くソフトウエアを実行する。つまり、第１ドメイン１０は、結果応答情報に含まれるソフトウエアＩＤの内、非安全ソフトウエアリスト１２１に記憶されているソフトウエアＩＤに対応するソフトウエアを実行しない。また、第1ドメイン１０では、結果応答情報に含まれる全てのソフトウエアＩＤを確認して、今から実行を開始するソフトウエアが、第２ドメイン２０のソフトウエア検査部１１７で検査が行われたか否かを確認する。この確認によって、第1ドメイン１０では、安全が確認されたソフトウエアを実行できるようになる。また、第１ドメイン１０は、結果通知部１２７から通知された結果応答情報に、今から実行を開始する特定のソフトウエアの識別情報が含まれていない場合、当該特定のソフトウエアが安全であるか否かの検査を要求する検査要求情報を要求受付部１３１に送信する。この時、第1ドメイン１０は、対象となる特定のソフトウエアのソフトウエアＩＤを含む検査要求情報を送信して、対象のソフトウエアの検査を要求する。【００７９】
ここで、本実施形態において、第１ドメイン１０は、検査要求情報を送信した際、実行制限部１２３からの指示を受けるまで、検査を要求したソフトウエアの実行を停止する方法（１）と、検査要求情報を送信した際に、すぐに当該ソフトウエアの実行を開始する方法（２）との何れかの方法を実行する。【００８０】
例えば、方法（１）では、第1ドメイン１０が検査要求情報を送信した際に、第２ドメイン２０の実行制限部１２３からの指示を受けるまで、検査を要求したソフトウエアの実行を停止する。また、この方法では、ソフトウエア検査部１１７によって、検査要求情報で要求されたソフトウエア（特定のソフトウエア）が安全であることが確認されると、実行制限部１２３は、第1ドメイン１０にソフトウエアの実行を指示する。そして、第1ドメイン１０は、引き続きソフトウエアの実行を開始する。また、安全でないことが確認された場合には、実行制限部１２３は、第1ドメイン１０にソフトウエアの実行禁止を指示する。そして、第1ドメイン１０は、そのソフトウエアの実行を取りやめる。【００８１】
また、方法（２）では、第1ドメイン１０が検査要求情報を送信した際に、検査を要求したソフトウエアをすぐに実行する。この方法では、第２ドメイン２０の実行制限部１２３は、ソフトウエア検査部１１７によって、第１ドメイン１０で実行中のソフトウエア（特定のソフトウエア）が安全でないことが確認されると、第1ドメイン１０に特定のソフトウエアの実行停止、およびそれ以降の実行禁止を指示する。また、安全であることが確認されたソフトウエアに関して、第２ドメイン２０の実行制限部１２３は、第１ドメイン１０に対して何も行わない。【００８２】
このようにして、端末装置１では、第1ドメイン１０は、検査されていないソフトウエアの実行をする際に、方法（１）乃至（２）のいずれかの方法を設定することが可能である。なお、方法（１）乃至（２）のいずれかの方法は、端末装置１の演算処理能力などの性能に即して、設定することが好ましい。【００８３】
また、第２ドメイン２０のソフトウエア検査部１１７は、第１ドメイン１０に記憶されているソフトウエアの検査を、第２ドメイン２０が起動した時から開始して、すべてのソフトウエアを一通り検査終了した場合、ある程度の時間（所定の期間）をおいてから、再度ソフトウエアの検査を再開する。この時、第２ドメイン２０のソフトウエア検査部１１７では、検査処理の効率化を図るために、前回の検査で安全であることが確認されたソフトウエアのみとする。この時、ソフトウエア検査部１１７は、実行順序記憶部１１１及び実行頻度取得部１１３に記憶されている実行優先順序及び実行頻度に基づいて検査を行う際に、安全ソフトウエアリスト１１９を参照し、すでに安全であることが確認されたソフトウエアの検査のみを行う。【００８４】
（アプリケーションを検査する際の動作）
次に、第１ドメイン１０及び第２ドメイン２０によって、例えば、所定の頻度で実行されるアプリケーションなどの第２ソフトウエアを検査する際の制御動作について、図６を参照して、具体的に説明する。なお、ここでは、第１ドメイン１０が、検査を要求する検査要求情報を送信すると共に、すぐにソフトウエアの実行を開始する上記方法（２）を例に挙げて説明する。【００８５】
ステップＳ１０１において、第２ドメイン２０では、ソフトウエア検査部１１７が、アプリケーションＣの検査を実行している。そして、第２ドメイン２０では、要求受付部１３１が、第１ドメイン１０から検査要求情報を受けたとする。【００８６】
ステップＳ１０３において、第２ドメイン２０では、ソフトウエア検査部１１７は、現在実行中のアプリケーションＣの検査を中断し、要求受付部１３１で受けた検査要求情報に含まれるソフトウエアＩＤに対応するソフトウエア（例えば、アプリケーションＤ）が安全であるか否かを検査する。また、この時、ソフトウエア検査部１１７は、アプリケーションＤが安全でないことを確認した場合、実行制限部１２３に、この旨を通知する。この通知を受けた実行制限部１２３は、第１ドメイン１０に、当該アプリケーションＤの実行停止、およびそれ以降の実行禁止を指示する。【００８７】
ステップＳ１０５において、第２ドメイン２０では、ソフトウエア検査部１１７が、当該要求を受けたソフトウエアを検査した後、先ほど検査を中断されたソフトウエアの検査を再開し、引き続き、実行順序記憶部１１１及び実行頻度取得部１１３に記憶されている実行優先順序及び実行頻度に対応するソフトウエアの検査を継続する。【００８８】
ステップＳ１０７において、第１ドメイン１０は、第２ドメイン２０にアプリケーションＤの検査要求情報を送信すると共に、当該アプリケーションＤの実行を開始する。また、第1ドメイン１０は、当該アプリケーションＤを実行中に、実行制限部１２３から、当該アプリケーションＤの実行停止を指示されると、即時実行を停止する。【００８９】
（作用及び効果）
本実施形態に係る端末装置１によれば、第２ドメイン２０では、ソフトウエア検査部１１７が、実行優先順序に従って、複数のソフトウエアが安全であるか否かを検査（確認）する。また、第1ドメイン１０は、ソフトウエア検査部１１７部によって、第１ドメイン１０に記憶されている全てのソフトウエアが安全であるか否かを検査される前であっても、安全であると確認されたソフトウエアを実行できる。【００９０】
従って、従来技術のように、端末装置１では、記憶されている全ての複数のソフトウエアを安全であるか否かを検査せずに、検査が完了し、かつ安全であることが確認されたソフトウエアを第1ドメイン１０が実行できる。また、端末装置１では、ソフトウエア検査部１１７が、予め記憶される実行優先順序又は実行頻度に従って、次々と自動でソフトウエアを検査する。よって、第1ドメイン１０が、ソフトウエアを実行する際に、検査結果を得るまでの待機期間をより低減できる。【００９１】
また、本実施形態に係る端末装置１によれば、第２ドメイン２０では、ソフトウエア検査部１１７が、第1ドメイン１０によって常に実行されるソフトウエア（第１ソフトウエア）を、所定の頻度で実行されるソフトウエア（第２ソフトウエア）よりも優先して、安全か否かを検査するので、第1ドメイン１０が、ソフトウエアを実行する際に検査を待機する期間をより低減できる。また、ソフトウエア検査部１１７は、アプリケーション等のソフトウエアを実行頻度に応じた順で次々と自動で検査するので、ユーザの要求に応じて、第1ドメイン１０がソフトウエアを実行する際には、既に検査が完了しているという環境をより早く提供できる。更に、その際には、第1ドメイン１０によって、検査結果を待つ待機期間自体がなくなっている可能性がより高くなる。【００９２】
このように、かかる特徴によれば、端末装置１は、ソフトウエアを検査することによってセキュリティが低下することを抑制しつつ、当該検査によってＯＳやアプリケーションの起動期間が増加することを低減することができる。よって、かかる端末装置１によれば、大容量化が進んでいるソフトウエアの安全性を確保しつつ、起動時間増加を最小限に抑え、かつ、ソフトウエアを網羅的に検査することが可能になる。【００９３】
また、本実施形態に係る端末装置１によれば、第２ドメイン２０では、実行制限部１２３が、ソフトウエア検査部１１７で検査されたソフトウエアの検査結果に基づいて、第1ドメイン１０の動作を制限する。従って、実行制限部１２３は、安全ではないことが確認されたソフトウエアの実行を禁止して、端末装置１のセキュリティを確保できる。また、第２ドメイン２０では、結果通知部１２７が、第1ドメイン１０の要求に応じて、検査結果を通知するので、第1ドメイン１０は、いち早く検査結果を確認することができる。【００９４】
また、本実施形態に係る端末装置１によれば、第２ドメイン２０では、安全ソフトウエアリスト１１９と非安全ソフトウエアリスト１２１とにより、安全なソフトウエアと、安全でないソフトウエアとを確実に管理することができる。【００９５】
また、本実施形態に係る端末装置１によれば、第２ドメイン２０では、ソフトウエア検査部１１７が、リストフラッシュ部１２９の指示に応じて、所定の期間毎に定期的に複数のソフトウエアが安全であるか否かを検査するので、１度安全であると検査しても、所定の期間毎に再検査して、セキュリティを確保できる。また、この時、ソフトウエア検査部１１７は、前回安全であることが確認されたソフトウエアのみを検査するので、無駄な処理を実行することなく、演算処理負荷を低減できる。【００９６】
本実施形態に係る端末装置１によれば、第1ドメイン１０では、検査結果が安全でないことが確認されたソフトウエアを実行しないので、セキュリティを確保できる。また、第1ドメイン１０が、今から実行を予定しているソフトウエアが検査されていない場合、当該ソフトウエアの検査を要求する。また、この要求を受けた第２ドメイン２０では、ソフトウエア検査部１１７が、要求されたソフトウエアを優先して検査するので、検査結果が得られるまでの第1ドメイン１０の待機期間を低減できる。【００９７】
本実施形態に係る端末装置１によれば、第1ドメイン１０は、検査を要求した際の一の方法（方法（１））として、第２ドメイン２０の実行制限部１２３からの指示があるまでソフトウエアの実行を停止するので、特定のソフトウエアが安全でない場合に、当該特定のソフトウエアによって、個人情報などが流出することを防止し、セキュリティをより高く保つことができる。また、第1ドメイン１０は、検査を要求した際の他の方法（方法（２））として、並列して、すぐに要求したソフトウエアの実行を開始するので、ソフトウエアが起動する期間が長くなってしまうことを抑制できる。また、この場合でも、第２ドメイン２０では、実行制限部１２３は、ソフトウエア検査部１１７によって要求されたソフトウエアが安全でないことが確認されると、第1ドメイン１０に即実行停止を指示するので、セキュリティを確保することができる。【００９８】
また、第２ドメイン２０では、実行制限部１２３が、ソフトウエア検査部１１７によって全てのソフトウエアが安全であるか否かの検査が完了するまで、第1ドメイン１０にソフトウエアの実行禁止を指示することもできるので、ユーザの所望に応じて、セキュリティの高い環境を提供することができる。【００９９】
また、一般的に、端末装置１が、バッテリー等で駆動する場合、省電力化が望まれる。従来技術であれば、例えば、端末装置がＯＳを起動する際などに、記憶する全てのソフトウエアが安全か否かを検出しているため、ユーザに対して、アプリケーション等のソフトウエアが使用可能な状態になるまでに消費電力が大きかった。従って、バッテリーに蓄電されている電力が非常に少ない場合には、ユーザに対して、ソフトウエアを使用可能な状態を提供することすらできない場合があった。しかし、本発明にかかる端末装置１によれば、通常通り、ＯＳを起動させるので、ユーザに対して、アプリケーションを使用可能な状態を提供できる。【０１００】
［第２実施形態］
（第２実施形態に係る端末装置の構成）
次に、本発明の第２実施形態に係る端末装置１の構成について、上述した第１実施形態との相違点に着目して説明する。上述した第１実施形態に係る端末装置１の第２ドメイン２０において、実行制限部１２３は、ソフトウエア検査部１１７で安全でないことが確認されたソフトウエアについて、実行停止（又は実行禁止）を第1ドメイン１０に指示するように構成されていたが、当該第1ドメイン１０では、既に当該ソフトウエアを実行している場合や、第1ドメイン１０がすでに改ざんされ、第2ドメイン２０からの指示を受けられない場合、この指示に応じられないことも想定される。更に、当該ソフトウエアに、例えば、ＯＳを起動する際に参照される設定情報等が含まれている場合、現在、第1ドメイン１０によって当該ソフトウエアを実行（参照）されていなくとも、安全でないことが確認された場合には、第1ドメイン１０によって実行される前に再起動する必要があることも想定される。そこで、本実施形態では、第1ドメイン１０が指示に応じられない場合や、再起動する必要がある場合に、第２ドメイン２０が実行する処理について説明する。まず、本実施形態に係る第２ドメイン２０では、実行制限部１２３は、第1ドメイン１０によってソフトウエアが実行される際、例えば、改竄されたソフトウエアを実行したために、第1ドメイン１０で異常が検出された場合、第1ドメイン１０をリセット（再起動）する。また、実行制限部１２３は、第２ドメイン２０によって実行されるソフトウエアが安全であるか否かを検査する処理において、第２ドメイン２０に、例えば、改竄されたソフトウエアを実行したために、第２ドメイン２０で異常が検出された場合、第２ドメイン２０をリセットする。なお、実行制限部１２３は、第1ドメイン１０がフリーズ等の異常が検出された際も、第1ドメイン１０をリセットするように構成されていてもよい。また、実行制限部１２３は、第1ドメイン１０をリセットするだけでなく、第２ドメイン２０も共にリセットすることもできる。また、実行制限部１２３は、第２ドメイン２０において、セキュアブートの失敗等の異常が発生し、第２ドメイン２０のセキュリティが保証できない場合には、端末装置１自体のリセットを行ってもよい。【０１０１】
また、本実施形態に係る実行順序記憶部１１１には、図７に示すように、ソフトウエアＩＤと、実行優先順序と、当該ソフトウエアＩＤに対応するソフトウエアが実行中である場合、第1ドメイン１０に対する指示内容を示す情報と、非実行中である場合に、第1ドメイン１０に対する指示内容を示す情報とが、予め対応付けて記憶されている。【０１０２】
また、実行順序記憶部１１１には、第1ドメイン１０がソフトウエアを実行中である場合の指示内容を示す情報として、第1ドメイン１０の制御が可能な場合の指示内容を示す“制御可能時指示情報”（例えば、実行停止）と、制御が不可能な場合の指示内容を示す“制御不可能時指示情報”（例えば、リセット）とが、記憶されている。更に、実行順序記憶部１１１には、第1ドメイン１０がソフトウエアを非実行中である場合の指示内容を示す情報として、第1ドメイン１０の制御が可能な場合の指示内容を示す“制御可能時指示情報”（例えば、実行禁止）と、制御が不可能な場合の指示内容を示す“制御不可能時指示情報”（例えば、リセット）とが、記憶されている。【０１０３】
また、本実施形態に係る実行制限部１２３は、ソフトウエア検査部１１７から、検査結果として、安全でないことが確認されたソフトウエアＩＤの通知を受けた場合、第1ドメイン１０において、通知されたソフトウエアＩＤに対応するソフトウエアが、実行中であるか否かを判定する。なお、実行制限部１２３は、ソフトウエア検査部１１７から、判定結果として、安全であることが確認されたソフトウエアＩＤの通知を受けた場合、上述する第１実施形態と同様の処理を実行する。また、第1ドメイン１０によって当該ソフトウエアが実行中であるか否かを判定する方法としては、第1ドメイン１０が、ソフトウエアを実行する度に、対応するソフトウエアＩＤを実行制限部１２３に通知するように構成され、実行制限部１２３は、この通知に基づいて、安全でないと判定されたソフトウエアが、第1ドメイン１０で実行中のソフトウエアであるか否かを判定するように構成されていてもよい。【０１０４】
また、実行制限部１２３は、第1ドメイン１０において、当該ソフトウエアが実行中であるか否かを判定した後、上述する実行順序記憶部１１１を参照し、実行順序記憶部１１１に記憶されている実行中又は非実行中の“制御可能時指示情報”に基づいて、第1ドメイン１０の動作を制御する。【０１０５】
具体的に、実行制限部１２３は、ソフトウエアが実行中であると判定した場合、実行順序記憶部１１１において、当該ソフトウエアＩＤに対応する実行中の“制御可能時指示情報（例えば、実行停止）”に基づいて、第1ドメイン１０に当該ソフトウエアの動作を指示（例えば、実行停止）する。また、実行制限部１２３は、ソフトウエアが実行中でないと判定した場合も、当該ソフトウエアＩＤに対応する非実行中の“制御可能時指示情報（例えば、実行禁止）”に基づいて、第1ドメイン１０に当該ソフトウエアの動作を指示（例えば、実行禁止）する。【０１０６】
そして、実行制限部１２３は、“制御可能時指示情報”に基づいて、第1ドメイン１０に指示した後、第1ドメイン１０が、この指示に応じられない場合、上述する実行順序記憶部１１１を参照し、実行順序記憶部１１１に記憶されている実行中又は非実行中の“制御不可能時指示情報”に基づいて、第1ドメイン１０に動作を制御する。【０１０７】
具体的に、実行制限部１２３は、第1ドメイン１０が当該ソフトウエアを実行中であり、かつ、第1ドメイン１０がこの指示に応じられない場合、実行順序記憶部１１１において、当該ソフトウエアＩＤに対応づけて記憶されている実行中の“制御不可能時指示情報（例えば、削除）”に基づいて、第1ドメイン１０に動作を指示（例えば、削除）する。また、実行制限部１２３は、第1ドメイン１０が当該ソフトウエアを実行中でなく（非実行中であり）、かつ、この指示に応じない場合も、当該ソフトウエアＩＤに対応づけて記憶されている非実行中の“制御不可能時指示情報（例えば、削除）”に基づいて、第1ドメイン１０に動作を指示（例えば、削除）する。なお、実行制限部１２３は、実行順序記憶部１１１において、当該ソフトウエアＩＤに対応する“制御不可能時指示情報”が、例えば、“削除”である場合、第1ドメイン１０に“削除”を指示せずに、即、当該ソフトウエアの削除を実行してもよい。【０１０８】
また、実行制限部１２３は、実行順序記憶部１１１において、当該ソフトウエアＩＤに対応する“制御不可能時指示情報”が、例えば、“リセット”である場合、第1ドメイン１０を強制的にリセットする。なお、実行制限部１２３は、当該ソフトウエアを“削除”した後に、第1ドメイン１０を“リセット”する等、二つの処理を実行するように構成されていてもよい。【０１０９】
上述するように、本実施形態に係る第２ドメイン２０では、実行制限部１２３が、第1ドメイン１０が指示に応じられるか否か（制御可能であるか否か）に基づいて、ソフトウエアの実行停止（又は実行禁止）や、ソフトウエアの削除、第1ドメイン１０のリセット、等を行うので、第1ドメイン１０におけるソフトウエアの実行状態に応じて、セキュリティを確保するため制御を適切に行うことができる。【０１１０】
また、本実施形態に係る第２ドメイン２０では、実行制限部１２３が、第1ドメイン１０に異常が検出された場合や、第２ドメイン２０に異常が検出された場合、第1ドメイン１０や第２ドメイン２０をリセットするので、端末装置１のセキュリティを確保することができる。【０１１１】
［第３実施形態］
（第３実施形態に係る端末装置の構成）
次に、本発明の第３実施形態に係る端末装置１の構成について、上述した第１実施形態との相違点に着目して説明する。上述したように第２ドメイン２０は、ＤＳＰや暗号アクセラレータなど第１ドメイン１０の支援を目的とした第２ドメイン２０に適用される。そのため、第１ドメイン１０から第２ドメイン２０の本来の目的のために呼び出されることもある。そこで第２ドメイン２０は、第２ドメイン２０の本来の処理と同等のものとして実現する。仮に暗号アクセサレータに第２ドメイン２０を導入することを想定すると、第２ドメイン２０では、第１ドメインから受け付ける暗号処理を、タスクまたはプロセスとして実現できる。図８は、本実施形態に係る端末装置１において、第２ドメイン２０で実行される処理の対象が遷移する様子を示したイメージ図である。【０１１２】
例えば、第２ドメイン２０がソフトウエアを検査中であった場合（ステップＳ２０１）、第１ドメイン１０から、例えば、所定のアプリケーションを実行するなどの本来の処理要求がされると、第２ドメイン２０のカーネルによりスケジュールされる（ステップＳ２０３）。この時、第２ドメイン２０は、検査処理の優先度を低めに設定することで、すぐに要求に応じ、暗号処理等、第２ドメイン２０本来のアプリケーションの処理動作に切り替える（ステップＳ２０５）。また、第２ドメイン２０は、要求されたアプリケーションの処理を完了すると、カーネルにより検査処理がスケジュールされて、再度、ソフトウエアの検査処理のタスクを再開する（ステップＳ２０７）。【０１１３】
このようにして、第２ドメインでは、本来の処理には影響を与えず、処理を要求した第１ドメイン１０への応答性を損ねることもなくなるため、端末装置１を使用する際の影響を最小限にすることができる。【０１１４】
［その他の実施の形態］
本発明は上記の実施形態によって記載したが、この開示の一部をなす論述及び図面はこの発明を限定するものであると理解すべきではない。この開示から当業者には様々な代替実施形態、実施例及び運用技術が明らかとなろう。【０１１５】
例えば、本発明による第２ドメイン２０は、プロセッサやＲＡＭなどのハードウェアに対して特別な制限を課していないため、マルチコアプロセッサなどの汎用プロセッサへも導入することができる。この場合マルチコアに対応した汎用プロセッサに本発明の第２ドメイン２０を導入することにより、ＰＣやサーバなどでも、通常利用への影響を与えずにセキュリティを維持することが可能となる。【０１１６】
このように、本発明はここでは記載していない様々な実施形態等を含むことは勿論である。また、各実施形態は、組み合わせることも可能である。従って、本発明の技術的範囲は上記の説明から妥当な特許請求の範囲に係る発明特定事項によってのみ定められるものである。【０１１７】
なお、日本国特許出願第２００７−０３１３８０号（２００７年２月９日出願）の全内容が、参照により、本願明細書に組み込まれている。
【産業上の利用の可能性】
【０１１８】
以上説明したように、本発明に係る端末装置及びソフトウエア検査方法によれば、端末装置において、セキュリティを確保しつつ、ソフトウエアの検査によってＯＳやアプリケーションの起動期間が増加することを低減することができるため有用である。
【図１】
2008096891.tif 000003
【図２】
2008096891.tif 000004
【図３】
2008096891.tif 000005
【図４】
2008096891.tif 000006
【図５】
2008096891.tif 000007
【図６】
2008096891.tif 000008
【図７】
2008096891.tif 000009
【図８】
2008096891.tif 000010
【図９】
2008096891.tif 000011
【図１０】
2008096891.tif 000012
【図１１】
2008096891.tif 000013
【手続補正書】
【提出日】平成22年2月22日(2010.2.22)
【手続補正１】
【補正対象書類名】明細書
【補正対象項目名】０００５
【補正方法】変更
【補正の内容】
【０００５】
そこで、本発明は、上述した問題に鑑みてなされたものであり、セキュリティが低下することを抑制しつつ、ソフトウエアの検査によってＯＳやアプリケーションの起動時間が増加することを低減する端末装置及びソフトウエア検査方法を提供することを目的とする。
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】０００８
【補正方法】変更
【補正の内容】
【０００８】
このように、かかる特徴によれば、端末装置は、ソフトウエアを検査することによってセキュリティを確保しつつ、当該検査によってＯＳやアプリケーションの起動時間が増加することを低減することができる。
【手続補正３】
【補正対象書類名】明細書
【補正対象項目名】００２３
【補正方法】変更
【補正の内容】
【００２３】
上述するように、本発明によると、セキュリティが低下することを抑制しつつ、ソフトウエアの検査によってＯＳやアプリケーションの起動時間が増加することを低減する端末装置及びソフトウエア検査方法を提供することができる。
【手続補正４】
【補正対象書類名】明細書
【補正対象項目名】００３３
【補正方法】変更
【補正の内容】
【００３３】
第２ドメイン２０は、各種機能を動作させるためのＯＳを起動する。また、第２ドメイン２０は、第1ドメイン１０で実行される複数のソフトウエアが、安全であるか否かを検査（確認）する。具体的に、第２ドメイン２０は、第１ドメイン１０に記憶されているソフトウエアが安全であるか否かを検査し、例えば、安全でないことを確認した場合、対象となるソフトウエアを第１ドメインにおいて実行禁止にしたり、第１ドメイン１０の起動や実行を停止させたり、端末装置自身をリセットするなどの対処を行うなど、端末装置１のセキュリティを確保するための処理を実行する。また、第２ドメイン２０は、図１に示すように、実行順序記憶部１１１、ソフトウエア検査部１１７、実行制限部１２３等の機能を備え、これらの機能を主に、セキュリティを確保するための処理が実行される。
【手続補正５】
【補正対象書類名】明細書
【補正対象項目名】０１１８
【補正方法】変更
【補正の内容】
【０１１８】
以上説明したように、本発明に係る端末装置及びソフトウエア検査方法によれば、端末装置において、セキュリティを確保しつつ、ソフトウエアの検査によってＯＳやアプリケーションの起動時間が増加することを低減することができるため有用である。
【国際調査報告】
2008096891.tif 000014
2008096891.tif 000015
2008096891.tif 000016
2008096891.tif 000017