專利名稱:終端裝置以及軟件檢查方法
技術(shù)領(lǐng)域:
本發(fā)明涉及具備執(zhí)行軟件的第1域、和纟企查所述軟件是否安全的第2域的 終端裝置以及軟件^r查方法。
背景技術(shù):
以往,在便攜電話、PDA (Personal Digital Assistants), PC等終端裝置中, 有可能從外部對操作系統(tǒng)(以下記作OS)或應(yīng)用程序等軟件進行篡改而降低 安全性。因此,近年來,為了確保終端裝置的安全性,提出了檢查該軟件是否 安全的各種技術(shù)(例如參照專利文獻1 )。
在專利文獻1中公開了使用多個處理器來進行軟件的檢查的技術(shù)。在專利 文獻1所公開的技術(shù)中,在具備執(zhí)行在裝置中所使用的基本軟件的主處理器、 和與該主處理器隔離的安全處理器的裝置中,安全處理器檢查通過主處理器執(zhí) 行的軟件。在所述安全處理器中以無法從外部訪問的方式保存了加密處理以及 解密處理中使用的密鑰。并且,所述安全處理器使用該密鑰,根據(jù)通過主處理 器執(zhí)行的軟件的解密是否成功,檢查該軟件是否安全。另外,所述安全處理器, 每當將軟件從二次存儲存儲器向主存儲器加載以及存儲時,進行該軟件的檢 查,由此確保通過主處理器執(zhí)行的軟件的安全性。
專利文獻l:特開2006-18528號公才艮
但是,在專利文獻1所公開的技術(shù)中,當啟動(加載)OS或應(yīng)用程序等 軟件時進行該軟件的檢查,在該檢查結(jié)束后,該軟件成為可以利用。因此,存 在引導時順次執(zhí)行OS或應(yīng)用程序的終端裝置的啟動時間的增加、或用戶調(diào)用 應(yīng)用程序時的應(yīng)答性的惡化等,用戶的便利性惡化的問題。另外,在便攜電話 或PC等中使用的軟件的容量近年來持續(xù)增加,與之相伴,軟件的檢查時間增 加,因此需要縮短檢查時間或?qū)τ脩綦[蔽檢查時間等的對策。
發(fā)明內(nèi)容
因此,鑒于上述問題而提出本發(fā)明,其目的在于提供一種抑制安全性降低,同時減少由于軟件的檢查而使OS或應(yīng)用程序的啟動時間增加的終端裝置以及 軟件4全查方法。
為了達到上述目的,本發(fā)明的第1特征的主旨在于j是供一種終端裝置(終 端裝置l),具有執(zhí)行多個軟件的第l域(第I域IO),以及與所述第l域獨立
地動作、檢查所述多個軟件的每一個是否安全的第2域(第2域20),其中, 所述第2域具有執(zhí)行順序存儲部(執(zhí)行順序存儲部111),其存儲通過所述 第l域執(zhí)行的所述多個軟件的執(zhí)行優(yōu)先順序;軟件檢查部(軟件檢查部117),
是否安全;以及執(zhí)行限制部(執(zhí)行限制部123),其在所述多個軟件的全部4僉 查結(jié)束之前,限制通過所述第1域執(zhí)行所述多個軟件內(nèi)得到不安全的檢查結(jié)果 的軟件。
根據(jù)該特征,在終端裝置中,第2域的軟件檢查部可以不依賴于第l域的 處理,獨立地逐個檢查軟件,因此可以縮短軟件的檢查時間。另外,當?shù)? 域執(zhí)行應(yīng)用程序或中間件、OS、設(shè)備驅(qū)動程序等軟件時,第1域不進行檢查 處理,因此對于用戶,可以隱蔽檢查時間的開銷(overhead )。而且,第2域 的執(zhí)行限制部,在多個軟件的全部檢查結(jié)束前限制通過第1域執(zhí)行軟件,因此, 即使在第1域要在全部檢查結(jié)束前執(zhí)行軟件的情況下,也可以確保安全性。
于是,根據(jù)該特征,終端裝置可以通過檢查軟件來確保安全性,同時可以 減少由于該才企查而4吏OS或應(yīng)用程序的啟動時間增加。
本發(fā)明的第2特征的主旨在于,在第1特征所述的終端裝置中,所述執(zhí)行 順序存儲部,將用于識別所述第1域的第1域識別信息或用于識別所述第2 域的第2域識別信息中的某一個、與所述多個軟件的每一個對應(yīng)起來存儲,所 述第2域的所述軟件檢查部,按照所述執(zhí)行優(yōu)先順序,檢查與所述第2域識別 信息對應(yīng)存儲的軟件是否安全,所述第1域具備用于檢查與所述第1域識別信 息對應(yīng)存儲的軟件是否安全的副軟件檢查部(副軟件檢查部200 )。
根據(jù)該特征,通過第2域的硬件或軟件的制約,可以通過將不能檢查的軟 件委托給第1域或其它域等分擔檢查處理。另外,可以使檢查處理的負荷分散
來提高終端裝置整體的處理效率。
本發(fā)明的第3特征的主旨在于,在第1或第2特征所述的終端裝置中,所述執(zhí)行順序存儲部,將表示所述終端裝置的啟動時和所述終端裝置的啟動后中 至少一方的時刻的時刻信息、和所述多個軟件的每一個對應(yīng)起來存儲,所述軟 件檢查部和所述副軟件檢查部,按照由所述時刻信息表示的時刻,檢查所述軟 件是否安全。
根據(jù)該特征,通過第2域的檢查處理性能或檢查開始時刻等的制約,針對 在第1域的執(zhí)行前未完成檢查的軟件,可以在第1域啟動時的時刻進行檢查, 可以確保安全性。即,在第1域中可以防止執(zhí)行完成檢查前的軟件。
本發(fā)明的第4特征的主旨在于,在1至3任意一個特征所述的終端裝置中, 所述第2域還具備安全軟件列表(安全軟件列表119),其存儲所述多個軟 件內(nèi)、在所述軟件檢查部中確認為安全的軟件的識別信息,所述第l域在執(zhí)行 預(yù)定的軟件前,判定所述預(yù)定的軟件的識別信息是否存儲在所述安全軟件列表 中,當所述預(yù)定的軟件的識別信息未存儲在所述安全軟件列表中時,限制(阻 止)所述預(yù)定的軟件的執(zhí)行。
根據(jù)該特征,在第l域中,可以防止執(zhí)行完成檢查前的軟件。
本發(fā)明的第5特征的主旨在于,在1至4任意一個特征所述的終端裝置中, 在所述多個軟件中包含通過所述第l域始終執(zhí)行的第l軟件、和以預(yù)定頻率執(zhí) 行的第2軟件,所述執(zhí)行順序存儲部,與所述第2軟件的所述執(zhí)行優(yōu)先順序相 比,優(yōu)先存儲了所述第1軟件的所述執(zhí)行優(yōu)先順序,所述軟件檢查部按照所述 執(zhí)行優(yōu)先順序,使所述第1軟件優(yōu)先于所述第2軟件來檢查是否安全。
本發(fā)明的第6特征的主旨在于,在第5特征所述的終端裝置中,所述第2 域還具備執(zhí)行頻率取得部(執(zhí)行頻率取得部113),其取得通過所述第1域 執(zhí)行的所述第2軟件的執(zhí)行頻率;以及執(zhí)行頻率存儲部(執(zhí)行頻率存儲部115 ), 其將所取得的所述執(zhí)行頻率和所述第2軟件對應(yīng)起來存儲,所述軟件檢查部,
所述第2軟件是否安全。
本發(fā)明的第7特征的主旨在于,在1至6任意一個特征所述的終端裝置中, 所述第2域還具備非安全軟件列表(非安全軟件列表121),其存儲所述多 個軟件內(nèi)、在所述軟件檢查部中確認為不安全的軟件的識別信息。
本發(fā)明的第8特征的主旨在于,在1至7任意一個特征所述的終端裝置中,所述軟件檢查部每隔預(yù)定的期間檢查所述多個軟件是否安全。
本發(fā)明的第9特征的主旨在于,在第7特征所述的終端裝置中,所述第1 域發(fā)送用于請求所述多個軟件內(nèi)被檢查過的軟件的檢查結(jié)果的結(jié)果請求信息,
所述第2域還具備結(jié)果通知部(結(jié)果通知部127),其在從所述第1域接收 到所述結(jié)果請求信息時,向所述第l域發(fā)送結(jié)果應(yīng)答信息,該結(jié)果應(yīng)答信息包 含存儲在所述安全軟件列表中的所述識別信息、和存儲在所述非安全軟件列表 中的所述識別信息,所述第l域,根據(jù)從所述結(jié)果通知部接收到的所述結(jié)果應(yīng) 答信息,僅執(zhí)行通過所述軟件檢查部確認為安全的所述軟件。
本發(fā)明的第IO特征的主旨在于,在第9特征所述的終端裝置中,所述第 2域還具備請求接收部(請求接收部131 ),其從所述第1域接收用于請求枱r 查所述軟件的檢查請求信息,所述第l域,在從所述結(jié)果通知部通知的所述結(jié) 果應(yīng)答信息中沒有包含從現(xiàn)在起開始執(zhí)行的特定軟件的識別信息的情況下,向 所述請求接收部發(fā)送用于請求檢查所述特定軟件的所述檢查請求信息,所述請 求接收部,在接收到所述檢查請求信息時,在所述軟件檢查部正在檢查與所述 特定軟件不同的其它軟件的情況下,使所述其它軟件的檢查中斷,所述軟件檢 查部,使所述特定軟件優(yōu)先來檢查所述特定軟件是否安全。
本發(fā)明的第ll特征的主旨在于,在第IO特征所述的終端裝置中,所述第 l域,在發(fā)送了所述檢查請求信息時,停止所述特定軟件的執(zhí)行,直到接收到 來自所述執(zhí)行限制部的指示為止,所述執(zhí)行限制部,當通過所述軟件檢查部確 認為所述特定軟件安全的情況下,指示所述第l域執(zhí)行所述特定軟件。
本發(fā)明的第12特征的主旨在于,在第IO特征所述的終端裝置中,所述第 l域,在向所述請求接收部發(fā)送了所述檢查請求信息時,開始所述特定軟件的 執(zhí)行,所述執(zhí)行限制部,在通過所述軟件檢查部確認為所述特定軟件不安全的 情況下,限制所述第1域執(zhí)行所述特定軟件。
本發(fā)明的第13特征的主旨在于,在第1特征所述的終端裝置中,所述執(zhí) 行限制部,在通過所述軟件^r查部結(jié)束所述多個軟件是否安全的^r查之前,限 制所述第1域執(zhí)行所述多個軟件。
本發(fā)明的第14特征的主旨在于,提供一種終端裝置中的軟件檢查方法, 該終端裝置具有執(zhí)行多個軟件的第1域、以及檢查所述多個軟件的每一個是否安全的第2域,該軟件檢查方法中包含以下步驟順序存儲步驟,所述第2 域存儲通過所述第1域執(zhí)行的所述多個軟件的執(zhí)行優(yōu)先順序;檢查步驟,所述 第2域按照所述執(zhí)行優(yōu)先順序檢查所述多個軟件是否安全;以及限制步驟,所 述第2域在所述多個軟件的全部檢查結(jié)束之前,限制通過所述第1域執(zhí)行所述 多個軟件內(nèi)得到不安全的^^查結(jié)果的軟件。
如上所述,根據(jù)本發(fā)明,可以提供抑制安全性降低,同時減少由于軟件的 檢查而使OS或應(yīng)用程序的啟動時間增加的終端裝置以及軟件檢查方法。
圖l是第1實施方式的終端裝置的全體概略結(jié)構(gòu)以及第2域的最小功能框圖。
圖2是具體表示第1實施方式的第2域的結(jié)構(gòu)的功能框圖。 圖3是表示在第1實施方式的執(zhí)行順序存儲部中存儲的信息的圖。 圖4是表示在第1實施方式的執(zhí)行頻率存儲部中存儲的信息的圖。 圖5是表示在第1實施方式中,第1域和第2域啟動時的時間序列上的動 作的圖。
圖6是表示在第1實施方式中,第1域執(zhí)行軟件、第2域檢查軟件時的時
間序列上的動作的圖。
圖7是表示在第2實施方式的執(zhí)行順序存儲部中存儲的信息的圖。 圖8是表示在第3實施方式中,第2域的處理狀態(tài)遷移的圖^象的圖。 圖9是表示在第1實施方式的執(zhí)行順序存儲部中存儲的信息的一例的圖。 圖IO是表示在第1實施方式的執(zhí)行順序存儲部中存儲的信息的一例的圖。 圖ll是表示在第1實施方式的執(zhí)行順序存儲部中存儲的信息的一例的圖。
具體實施例方式
接下來,參照
本發(fā)明的實施方式。在以下附圖的記載中,對于相 同或類似的部分標記了相同或類似的符號。其中,應(yīng)該注意附圖為示意圖。 [第1實施方式〗 (終端裝置的結(jié)構(gòu))
對本發(fā)明的第1實施方式的終端裝置1的結(jié)構(gòu)進行說明。本發(fā)明以具有使 多個域動作的功能的終端裝置作為對象。另外,在本實施方式中,終端裝置l設(shè)想為在多個域上執(zhí)行操作系統(tǒng)(以下記為OS)以及應(yīng)用程序等軟件的便攜
電"^舌、PDA ( Personal Digital Assistants )、 PC等。
在此,在本實施方式中,所謂域(domain),無論物理上、邏輯上,指的 是由處理器、RAM ( Random Access Memory )構(gòu)成的1個獨立的處理才玄 (processing core )。作為物理上具有多個域的實施方式的例子而存在為了實 現(xiàn)高速化或低功耗,在主域之外具有DSP ( Digital Signal Processor )來作為副 域的多媒體便攜終端;作為副域而具有遵從IPSec ( Security Architecture for Internet Protocol)的加密處理加速器的信息便攜終端等。尤其是DSP或加密加 速器,接收到來自主域的指示后進行處理的類型較多,在此期間空閑或休眠。
在一個處理器中具有多個處理核的多核處理器也是物理上具有多個域的 實施方式。另外,作為通過對1個處理核進行時間空間分割來分割計算機資源, 在邏輯上具有多個域的方法,例如ARM公司的Trust Zone或VMware等虛擬 計算機。
上述多個域分別獨立動作,在域上運行的OS也獨立運行。本發(fā)明的裝置 和方法是關(guān)于利用擔負終端裝置1的多數(shù)處理的主域(以后稱為第1域)、 和支援主域的副域(以后稱為第2域),在第1域上使包含OS的軟件正常運 行,同時在第2域上使與在第1域上運行的OS不同的OS運行,第2域并行 地檢查第1域的全部軟件。即,在終端裝置1中,第1域和第2域不是運行一 個OS的域,而分別獨立且并行地運行不同OS。此外,第1域和第2域也可 以使用獨立的不同的代碼來使相同種類的OS運行。另外,第2域在啟動的同 時開始檢查可以通過第1域執(zhí)行的軟件。第2域,可以當在第1域的軟件中確 認了異常時,進行終端裝置的啟動的中止或復位(reset),也可以在第1域的 動作過程中僅對異常的軟件進行停止執(zhí)行或禁止執(zhí)行等。
圖1是表示本實施方式的終端裝置1的結(jié)構(gòu)的功能框圖。如圖1所示,本 實施方式的終端裝置1具備第1域10和第2域20。
第1域IO執(zhí)行在終端裝置1中使用的基本的多個軟件。具體而言,第1 域IO執(zhí)行在終端裝置1中作為基礎(chǔ)來使用的OS、或在該OS上啟動的應(yīng)用程 序等軟件。此外,預(yù)先全部存儲了這些軟件。
此外,在本實施方式中,軟件分類為始終執(zhí)行的第l軟件、和以預(yù)定頻率執(zhí)行的第2軟件。例如,OS是在終端裝置1的啟動時必定被執(zhí)行的軟件,被 包含在始終執(zhí)行的第1軟件中。另外,在應(yīng)用程序中包含始終執(zhí)行的第1軟件
(應(yīng)用程序)、和以預(yù)定頻率執(zhí)行的第2軟件(應(yīng)用程序)。例如在以便攜電話
為例時,作為第1軟件而存在始終啟動的電話用的應(yīng)用程序等。另外,作為以
預(yù)定頻率執(zhí)行的第2軟件,存在通過用戶操作被啟動的游戲用的應(yīng)用程序等。 第2域20啟動用于使各種功能工作的OS。另外,第2域20檢查(確認) 通過第1域10執(zhí)行的多個軟件是否安全。具體而言,第2域20檢查在第1 域10中存儲的軟件是否安全,例如當確認為不安全時執(zhí)行以下用于確保終端 裝置1的安全性的處理在第1域中禁止執(zhí)行成為對象的軟件、或者使第1 域10的啟動或執(zhí)行停止、或者進行將終端裝置本身復位等處理。另外,如圖 1所示,第2域20具備執(zhí)行順序存儲部111、軟件檢查部117、執(zhí)行限制部123 等功能,以這些功能為主,執(zhí)行用于確保安全性的處理。
此外,希望檢查第1域10的第2域20確保高安全性。因此,第2域20 為了提高安全性,可以利用ARM公司的Trust Zone等安全空間、或通過/人主 處理器進行隔離而實現(xiàn)了高安全性的安全處理器(secure processor)等。以下 說明第2域20中具備的各種功能。 (第2域的結(jié)構(gòu))
接下來,具體說明第2域20的結(jié)構(gòu)。如圖l所示,第2域20具備執(zhí)行順 序存儲部111、軟件檢查部117和執(zhí)行限制部123。
執(zhí)行順序存儲部111存儲了與通過第1域10執(zhí)行的軟件對應(yīng)的執(zhí)行優(yōu)先 順序。所謂執(zhí)行優(yōu)先順序,是在通過后述的軟件檢查部H7檢查軟件時,作為 檢查的順序而使用的信息。在此,在OS中一般靜態(tài)地定義了作為內(nèi)核(kernel )、 設(shè)備驅(qū)動器、服務(wù)器而工作的守護程序(daemon program)、自動啟動的應(yīng)用 程序等的執(zhí)行順序。在執(zhí)行順序存儲部111中,例如關(guān)于第1域10的OS,以 靜態(tài)執(zhí)行的順序作為執(zhí)行優(yōu)先順序來存儲這些程序
此外,在執(zhí)行優(yōu)先順序的指定中,可以合并多個軟件作為 一個軟件來處理。 例如可以將內(nèi)核和多個設(shè)備驅(qū)動器合并作為一個軟件,存儲在執(zhí)行順序存儲部中。
軟件檢查部117按照在執(zhí)行順序存儲部111中存儲的執(zhí)行優(yōu)先順序,進行第1域10的軟件的檢查。希望在第2域的OS的啟動結(jié)束后立即開始一企查。
另外,為了確保安全性,希望軟件檢查部117檢查(確認)第1域10中存儲
的全部軟件是否安全。
作為軟件的檢查方法而列舉出求出與軟件代碼對應(yīng)的檢驗和或散列值 (hash)來預(yù)先存儲,并且在檢查時讀出來對照的方法;和利用軟件代碼中附 帶的電子署名來檢查有無篡改的方法等。在上述的執(zhí)行順序存儲部111中存儲 了這些檢查所需的程序代碼的信息,根據(jù)需要而存儲了檢驗和列表、散列值。 實際上,軟件檢查部117利用這些信息和使用了散列計算功能或RSA方式的 公開密鑰加密方式等來進行檢查。
執(zhí)行限制部123根據(jù)通過軟件檢查部117檢查的軟件的檢查結(jié)果,指示通 過第1域IO執(zhí)行該軟件時的動作。例如,執(zhí)行限制部123指示第1域10禁止 執(zhí)行確認為不安全的軟件。另外,執(zhí)行限制部123,在第1域10執(zhí)行了被確 認為不安全的軟件的情況下,進行其停止指示(禁止執(zhí)行指示.)等。此外,執(zhí) 行限制部123也可以進行被確認為不安全的軟件的刪除、第1域10或終端裝 置1的復位或停止執(zhí)行。這樣,執(zhí)行限制部123在多個軟件的全部4企查結(jié)束前, 限制通過第1域IO執(zhí)行多個軟件內(nèi)的、通過軟件檢查部117得到了表示不安 全的檢查結(jié)果的軟件。
(第2域的詳細結(jié)構(gòu))
接著,更詳細地說明第2域20的結(jié)構(gòu)。圖2是具體表示第2域20的結(jié)構(gòu) 的功能框圖。如圖2所示,第2域20具備執(zhí)行順序存儲部lll、執(zhí)行頻率 取得部113、執(zhí)行頻率存儲部115、軟件檢查部117、安全軟件列表119、非安 全軟件列表121、執(zhí)行限制部123、結(jié)果通知部127、列表閃速存儲部(list flash) 129和請求接收部131。
如上所述,執(zhí)行順序存儲部111存儲了與通過第1域IO執(zhí)行的軟件對應(yīng) 的執(zhí)行優(yōu)先順序。在圖3中表示了在執(zhí)行順序存儲部111中存儲的信息的具體 例。如圖3所示,在執(zhí)行順序存儲部1U中,將識別在第1域10中存儲的軟 件的軟件ID (識別信息)、通過第1域10執(zhí)行的軟件的執(zhí)行優(yōu)先順序、軟件 的檢查所需要的散列值等關(guān)聯(lián)起來進行存儲。
此外,軟件ID可以是對1個軟件賦予的識別信息,也可以是對多個軟件構(gòu)成的1組賦予的識別信息。另外,軟件ID可以是文件名,也可以是配置了 軟件的地址、或地址和大小的組合。
在圖3的具體例中指定了執(zhí)行優(yōu)先順序,但也可以不明確指定,如圖9的 例子所示,以從存儲區(qū)域的先頭開始的順序作為執(zhí)行優(yōu)先順序。
而且,如圖IO所示,執(zhí)行順序存儲部111可以針對多個軟件的每一個, 存儲由哪個域進行檢查的指定。具體而言,如圖l所示,在第1域10中也可 以具備檢查軟件是否安全的副軟件檢查部300。在這種情況下,^^行順序存^諸 部111將識別第1域10的第1域識別信息、或識別所述第2域20的第2域識 別信息的某一個與各個軟件對應(yīng)起來存儲。在圖10的具體例中指定了軟件 ID為"1"的軟件由第1域(域ID = 1)進行檢查,其它軟件ID的軟件由第2 域(域ID-2)進行一企查。
于是,第2域20的軟件;險查部117按照執(zhí)行優(yōu)先順序檢查與第2域識別 信息對應(yīng)存儲的軟件,可以由第1域10的副軟件檢查部300檢查與第1域識 別信息對應(yīng)存儲的軟件。
在圖11的具體例中,執(zhí)行順序存儲部111針對各個軟件保存了終端裝置1 的啟動時以及啟動后的某一個、或者雙方的檢查的時刻的指定。具體而言,執(zhí) 行順序存儲部111,將表示終端裝置1的啟動時和終端裝置1的啟動后中至少 一方的時刻的時刻信息(啟動時、啟動后、啟動時和啟動后的雙方)與各個庫欠 件對應(yīng)起來存儲。在圖11的具體例中指定了軟件ID為'T,的軟件由第1 域(域ID = 1)在啟動時進行檢查,軟件ID為"2"的軟件由第2域(域ID =2)在啟動時和啟動后的雙方進行檢查。
在這種情況下,第2域20的軟件檢查部117以及第1域的副軟件檢查部 300,可以按照時刻信息和執(zhí)行優(yōu)先順序來檢查軟件是否安全。
另外,在圖4所示的具體例中,在執(zhí)行順序存儲部111中存儲了通過第 1域10始終執(zhí)行的OS或應(yīng)用程序等第1軟件的軟件ID;和通過第1域10以 預(yù)定頻率執(zhí)行的應(yīng)用程序等第2軟件的軟件ID。
另外,在執(zhí)行順序存儲部111中,與以預(yù)定頻率執(zhí)行的第2軟件的執(zhí)行優(yōu) 先順序相比,優(yōu)先存儲始終被執(zhí)行的第l軟件的執(zhí)行優(yōu)先順序。具體而言,在 執(zhí)行順序存儲部111中,關(guān)于始終被執(zhí)行的OS或應(yīng)用程序等第l軟件,對應(yīng)存儲了執(zhí)行優(yōu)先順序,但關(guān)于以預(yù)定頻率執(zhí)行的應(yīng)用程序等第2軟件,未對應(yīng) 存儲執(zhí)行優(yōu)先順序。在這種情況下,以預(yù)定頻率執(zhí)行的第2軟件并非沒有執(zhí)行 優(yōu)先順序,而是將執(zhí)行優(yōu)先順序存儲為最低。
執(zhí)行頻率取得部113,每當通過第1域IO執(zhí)行軟件時,從第1域10取得 用于識別被執(zhí)行的該軟件的軟件ID(識別信息)。另外,執(zhí)行頻率取得部113, 每當取得該軟件ID時,對在預(yù)定期間(例如一周等)內(nèi)取得的該軟件ID的取 得次數(shù)進行累積,存儲在執(zhí)行頻率存儲部115中。此外,執(zhí)行頻率取得部113 也可以定期地(例如每隔預(yù)定期間)清除執(zhí)行頻率來進行更新。另外,與在第 1域10中始終被執(zhí)行的第1軟件相比,執(zhí)行頻率取得部113主要取得以預(yù)定 頻率執(zhí)行的第2軟件的執(zhí)行頻率。
執(zhí)行頻率存儲部115存儲在第1域10中以預(yù)定頻率執(zhí)行的軟件的執(zhí)行頻 率。此外,在執(zhí)行頻率存儲部115中以如下軟件作為對象存儲該軟件的執(zhí)行頻 率,該軟件是在通過第1域IO執(zhí)行的軟件中沒有在執(zhí)行順序存儲部111中存 儲執(zhí)行優(yōu)先順序的軟件。這些信息通過執(zhí)行頻率取得部113被存儲。在圖4中 表示了在執(zhí)行頻率存儲部115中存儲的信息的具體例。如圖4所示,執(zhí)行頻率 存儲部115將軟件ID和執(zhí)行頻率對應(yīng)起來存儲。另外,存儲在執(zhí)行頻率存儲 部115中的信息,通過后述的軟件檢查部117被讀出,在決定檢查軟件的順序 時被使用。
軟件檢查部117參照在執(zhí)行順序存儲部111中存儲的執(zhí)行優(yōu)先順序,按照 該執(zhí)行優(yōu)先順序檢查(確認)在第1域10中存儲的軟件。另外,軟件檢查部 117也可以使第l軟件優(yōu)先于第2軟件來檢查是否安全。具體而言,軟件檢查 部117在執(zhí)行了第1軟件的檢查后,關(guān)于第2軟件,參照執(zhí)行頻率存儲部115 來檢查在第1域10中存儲的軟件是否安全。此時,軟件檢查部117可以以執(zhí) 行頻率存儲部115中存儲的執(zhí)行頻率作為優(yōu)先執(zhí)行順序,按照從執(zhí)行頻率較大 的一方開始的順序,檢查與執(zhí)行頻率對應(yīng)的第2軟件是否安全。
另外,軟件檢查部117每隔預(yù)定期間檢查一個或多個軟件是否安全。具體 而言,軟件檢查部117,當從后述的列表閃速存儲部129每隔預(yù)定期間接收到 指示執(zhí)行檢查的通知時,參照在執(zhí)行順序存儲部111以及執(zhí)行頻率存儲部115 中存儲的信息,執(zhí)行軟件的檢查。此時,軟件檢查部117為了提高處理效率,可以僅再次檢查前一次確認為安全的、與安全軟件列表119中存儲的軟件ID 只于應(yīng)的4欠件。
另外,軟件檢查部117,在后述的請求接收部131中從第1域IO接收到 請求檢查特定軟件是否安全的檢查請求信息時,使與該檢查請求信息中包含的 軟件ID對應(yīng)的軟件(特定軟件)優(yōu)先,檢查該軟件是否安全。例如,軟件檢 查部117,即使正在以某個軟件為對象來執(zhí)行是否安全的檢查處理,當通過請 求接收部131從第1域IO接收到檢查請求信息時,中斷所述檢查處理,檢查 與檢查請求信息中包含的軟件ID對應(yīng)的軟件是否安全。
另夕卜,軟件檢查部117將檢查結(jié)果存儲在安全軟件列表119和非安全軟件 列表121中。具體而言,軟件檢查部117在檢查軟件是否安全后,在確認該軟 件安全的情況下,將識別所述軟件的軟件ID存儲在安全軟件列表119中。另 外,軟件檢查部117在檢查軟件是否安全后,在確認該軟件不安全的情況下, 將識別所述軟件的軟件ID存儲在非安全軟件列表121中。另外,軟件檢查部 117將檢查結(jié)果和軟件ID通知給執(zhí)行限制部123。根據(jù)該通知,在執(zhí)行限制部 123中控制第1域10的動作。
安全軟件列表119存儲在軟件檢查部117中確認為安全的軟件的識別信 息。具體而言,安全軟件列表119存儲與在軟件檢查部117中檢查的結(jié)果是未 被篡改的安全的軟件對應(yīng)的軟件ID (識別信息)。另外,非安全軟件列表121 存儲在軟件檢查部117中確認為不安全的軟件的識別信息。具體而言,非安全 軟件列表121存儲與在軟件檢查部117中檢查的結(jié)果是已被篡改的軟件對應(yīng)的 軟件ID。在這兩個列表中存儲的軟件組,當后述的結(jié)果通知部127從第1域 IO接收到請求檢查結(jié)果的結(jié)果請求信息時,通過結(jié)果通知部127被通知到第1 域10。
列表閃速存儲部129具備間隔計時器(interval timer ),定期向軟件檢查部 117通知實施檢查。另外,此時列表閃速存儲部129將安全軟件列表119中存 4諸的信息全部或者部分清除。在此,以前一度被確認為安全的軟件也有被隨機 篡改的可能性,因此,列表閃速存儲部129通過催促軟件檢查部117定期地進 行檢查,確保安全性。
執(zhí)行限制部123根據(jù)軟件檢查部117的檢查結(jié)果,指示第1域10執(zhí)行軟件時的動作。另外,執(zhí)行限制部123根據(jù)需要向第1域IO指示軟件的禁止執(zhí)
行、中斷執(zhí)行等限制第1域10的動作,并根據(jù)情況將第1域10強制復位。
此外,執(zhí)行限制部123可以在通過軟件檢查部117結(jié)束了第1域10中存 儲的全部軟件是否安全的檢查之前,向第1域IO指示軟件的禁止執(zhí)行。在此 情況下,執(zhí)行限制部123例如可以在通過軟件檢查部117結(jié)束在執(zhí)行順序存儲 部111中存儲的全部軟件的檢查之前,使在第1域10中執(zhí)行的OS的啟動暫 時中斷。另外,執(zhí)行限制部123也可以在第2域20的OS的啟動結(jié)束之前, 使在第1域10中執(zhí)行的OS的啟動暫時中斷。于是,通過由執(zhí)行限制部123 限制第1域10的動作,在終端裝置1中可以在檢查結(jié)束后的安全的狀態(tài)下4吏 第1域10^l行軟件。
結(jié)果通知部127從第1域10接收請求通過軟件4全查部117被檢查的軟件 的檢查結(jié)果的結(jié)果請求信息,并且向第1域10發(fā)送包含在安全軟件列表119 中存儲的識別信息、和在非安全軟件列表121中存儲的識別信息在內(nèi)的結(jié)果應(yīng) 答信息。這樣,第1域10通過利用結(jié)果通知部127,可以取得與已檢查的軟 件組相關(guān)的信息。另外,在將安全軟件列表、非安全軟件列表配置在可以從第 1域10訪問的存儲器(RAM)或存儲裝置中的情況下,即使沒有結(jié)果請求信 息的接收或結(jié)果應(yīng)答信息的發(fā)送步驟,第1域10也可以取得與已檢查的軟件 組相關(guān)的信息。
請求接收部131,在從第1域10接收到請求檢查特定軟件的檢查請求信 息時,將該檢查請求信息通知給軟件檢查部117。此時,請求接收部131向軟 件檢查部117通知中止當前執(zhí)行中的檢查處理,催促其優(yōu)先檢查在檢查請求信 息中請求的軟件。于是,例如當?shù)?域10執(zhí)行在軟件檢查部117中未檢查的 軟件時,可以向軟件檢查部117請求對其進行檢查。
此外,當檢查的結(jié)果是確認為安全時,軟件檢查部117通過執(zhí)行限制部 123對第1域10通知該內(nèi)容。另外,在確認進行了篡改而不安全時,執(zhí)行限 制部123立即對應(yīng)該情況,在執(zhí)行該軟件前催促禁止執(zhí)行該軟件。 (終端裝置的動作)
接著,說明上述結(jié)構(gòu)的終端裝置1的動作。具體而言,說明在終端裝置l 中,當?shù)?域10和第2域20啟動時第2域20執(zhí)行軟件的檢查的控制動作、和所述第2域20在檢查軟件的過程中接收到來自第1域10的檢查請求時的控制動作。
(終端裝置啟動時的動作)
首先,參照圖5說明終端裝置1啟動時,第1域10和第2域20啟動,第2域20執(zhí)行軟件的檢查的控制動作。在圖5中表示了第1域10和第2域20啟動時的時間序列上的動作。此外,作為前提,在第2域20的執(zhí)行順序存儲部111中預(yù)先存儲了通過第1域IO執(zhí)行的軟件的執(zhí)行優(yōu)先順序。另外,第2域20是進行第1域10的檢查的主體,因此需要確保安全。因此,在本實施方式中,假定第2域20具備安全引導(secure boot)功能。即,在第2域20中的啟動步驟(引導步驟)中,檢查接下來執(zhí)行的軟件,在確認是正當軟件之后執(zhí)行該軟件。具體而言,在最初啟動的第l加載程序(loader)檢查第2加載程序后執(zhí)行第2加載程序,在第2加載程序檢查OS的內(nèi)核部后執(zhí)行內(nèi)核。
在步驟Sll中,當終端裝置1啟動時,第1域10以及第2域20開始啟動,在第1域10以及第2域20的各自中執(zhí)行OS的初始化。在第2域20中,在OS的初始化結(jié)束后開始第1域的檢查。為了更早開始檢查,在第2域20中可以將軟件檢查部117等作為設(shè)備驅(qū)動器來執(zhí)行。在這種情況下,即使在第2域20的OS的初始化結(jié)束前,軟件檢查部117也可以開始軟件的4全查。
根據(jù)第1域10和第2域20的啟動的時刻的構(gòu)成,在第1域10中通過第l域執(zhí)行未檢查的軟件。與此對應(yīng),可以采用以下3種方法。
在第1方法A中,由執(zhí)行順序存儲部111存儲了通過第1域10最初執(zhí)行的若干軟件,由此,第1域10在執(zhí)行該軟件前進行檢查。作為具體例,執(zhí)行順序存儲部111如圖10的例子所示,在將軟件ID和域ID對應(yīng)存儲的情況下,第1域10的副軟件檢查部200識別出在執(zhí)行特定軟件前需要檢查特定軟件,然后進行檢查。由此防止通過第1域10執(zhí)行未檢查的軟件。
在第2方法B中,第1域10在軟件的執(zhí)行前參照安全軟件列表,在安全軟件列表119中包含所述軟件時進行執(zhí)行,在不包含的情況下阻止(block)(限制)執(zhí)行。第1域10在阻止后參照安全軟件列表119,若包含所述軟件則解除阻止來纟丸行。
在第3方法C中,執(zhí)行限制部123使第1域10的動作中斷,直到通過軟件檢查部117結(jié)束第1域10的OS的軟件檢查為止。例如,在想要確保靜態(tài)
定義了執(zhí)行的軟件的OS的安全性時,執(zhí)行限制部123使第1域10的啟動延遲,直到通過軟件檢查部117結(jié)束與在執(zhí)行順序存儲部111中存儲的執(zhí)行優(yōu)先順序?qū)?yīng)的軟件(即第1軟件)的檢查為止。
在步驟S13中,在第2域20中,軟件檢查部117在第2域20的OS的初始化結(jié)束后,按照在執(zhí)行順序存儲部111中存儲的執(zhí)行優(yōu)先順序,開始軟件的檢查。在執(zhí)行順序存儲部111中存儲的執(zhí)行優(yōu)先順序,首先是通過第1域10執(zhí)行的OS的代碼(第1軟件)。作為具體例,在所述代碼中記載了作為內(nèi)核、設(shè)備驅(qū)動器、服務(wù)器而運行的守護程序。另外,軟件檢查部117也可以將檢查結(jié)果存儲在安全軟件列表119以及非安全軟件列表121中。
步驟S15是可選步驟,在第2域20中,軟件檢查部117在與執(zhí)行順序存儲部111中存儲的執(zhí)行優(yōu)先順序?qū)?yīng)的軟件的檢查結(jié)束后,接著參照執(zhí)行頻率存儲部115,按照從執(zhí)行頻率較大的一方開始的順序,執(zhí)行與存儲的執(zhí)行頻率對應(yīng)的軟件(第2軟件)的檢查。
在第2域20中,結(jié)果通知部127在從第1域10接收到結(jié)果請求信息時,將包含^^查結(jié)果的結(jié)果應(yīng)答信息發(fā)送給第1域10。
另外,在第2域20中,執(zhí)行限制部123也可以指示第1域10禁止執(zhí)行通過軟件檢查部117確認為不安全的軟件。當?shù)?域20具備通過對終端裝置1上的軟件進行備份等,在安全狀態(tài)下將其安全地保存的功能時,執(zhí)行限制部123可以刪除通過軟件檢查部117確認為不安全的軟件,更新為所保存的安全的軟件,然后存儲在第1域10中。
在步驟S19中,第1域10按照正常的啟動動作進行第1域10上的OS的初始化。
在步驟S21中,在第1域10上的OS的初始化結(jié)束后,第1域10執(zhí)行應(yīng)用程序等軟件。此時,可以參照安全軟件列表119來進^f于阻止,以便僅執(zhí)行通過第2域20的軟件檢查部117確認為安全的應(yīng)用程序等軟件,也可以跳過未檢查的軟件來執(zhí)行別的軟件。在后一種情況下,第1域10,在通過第2域20的軟件檢查部117結(jié)束第1域10中存儲的全部軟件的檢查前,也可以執(zhí)行通過軟件檢查部117確認為安全的軟件。另夕卜,第1域10可以在執(zhí)行軟件時將與執(zhí)行的軟件對應(yīng)的軟件ID通知給
第2域20的執(zhí)行頻率取得部113。在執(zhí)行頻率耳又得部113中,根據(jù)該通知,對在預(yù)定期間內(nèi)取得的軟件ID的取得次數(shù)進行累積,導出第1域10中的軟件的執(zhí)行頻率,存儲在執(zhí)行頻率存儲部115中。另外,通過使用該信息,第2域20的軟件檢查部117將在執(zhí)行頻率存儲部115中存儲的執(zhí)行頻率作為應(yīng)該檢查的軟件的執(zhí)行優(yōu)先順序,來檢查軟件是否安全。
另外,第1域IO可以在軟件的執(zhí)行前向第2域20的結(jié)果通知部127發(fā)送結(jié)果請求信息,從結(jié)果通知部127得到結(jié)果應(yīng)答信息。另外,第1域10根據(jù)結(jié)果應(yīng)答信息確認通過軟件檢查部117確認為不安全的軟件。然后,第1域IO執(zhí)行除了被確認為不安全的軟件以外的軟件。即,第1域10不執(zhí)行與結(jié)果應(yīng)答信息中包含的軟件ID內(nèi)、存儲在非安全軟件列表121中的軟件ID相對應(yīng)的軟件。另外,在第1域10中確認在結(jié)果應(yīng)答信息中包含的全部軟件ID,確認從現(xiàn)在起開始執(zhí)行的軟件是否通過第2域20的軟件檢查部117進行了檢查。通過該確認,在第1域10中可以執(zhí)行確認為安全的軟件。另外,第1域10,在從結(jié)果通知部127通知的結(jié)果應(yīng)答信息中不包含從現(xiàn)在起開始執(zhí)行的特定軟件的識別信息時,向請求接收部131發(fā)送請求檢查該特定軟件是否安全的檢查請求信息。此時,第1域10發(fā)送包含成為對象的特定軟件的軟件ID的檢查請求信息,請求檢查對象軟件。
在此,在本實施方式中,第1域IO執(zhí)行在發(fā)送了檢查請求信息時停止執(zhí)行請求了檢查的軟件,直到接收到來自執(zhí)行限制部123的指示的方法(1)、和在發(fā)送了檢查請求信息時,立即開始執(zhí)行該軟件的方法(2)中的某個方法。
例如,在方法(1)中,在第1域IO發(fā)送了檢查請求信息時,在接收到來自第2域20的執(zhí)行限制部123的指示前,停止執(zhí)行請求了檢查的軟件。另夕卜,在該方法中,當通過軟件檢查部117確認在檢查請求信息中請求的軟件(特定軟件)安全時,執(zhí)行限制部123指示第1域10執(zhí)行軟件。然后,第1域10接著開始執(zhí)行軟件。另外,在確認為不安全時,執(zhí)行限制部123指示第1域IO禁止執(zhí)行軟件。然后,第1域10取消該軟件的執(zhí)行。
另外,在方法(2)中,在第1域10發(fā)送了檢查請求信息時,立即執(zhí)行請求了檢查的軟件。在該方法中,第2域20的執(zhí)行限制部123,當通過軟件檢查部117確認為通過第1域10正在執(zhí)行的軟件(特定軟件)不安全時,指示第1域IO停止執(zhí)行特定軟件、以及此后禁止執(zhí)行。另外,關(guān)于被確認為安全
的軟件,第2域20的執(zhí)行限制部123對第1域10不進行任何操作。
于是,在終端裝置l中,第1域IO在要執(zhí)行未檢查的軟件時,可以設(shè)定方法(1)至(2)中的某一個方法。此外,方法(1)至(2)中的某一種方法,理想的是根據(jù)終端裝置1的運算處理能力等性能來設(shè)定。
另外,第2域20的軟件檢查部117,從第2域20啟動時起,開始在第1域10中存儲的軟件的檢查,在大致結(jié)束全部軟件的檢查時,在某程度的時間(預(yù)定期間)后,再次重新開始軟件的檢查。此時,在第2域20的軟件檢查部117中,為了實現(xiàn)檢查處理的高效化,僅檢查在前一次的檢查中確認為安全的軟件。此時,軟件檢查部117,當根據(jù)在執(zhí)行順序存儲部111以及執(zhí)行頻率取得部113中存儲的執(zhí)行優(yōu)先順序以及執(zhí)行頻率進行檢查時,參照安全軟件列表119,僅4全查已經(jīng)確認為安全的軟件。
(檢查應(yīng)用程序時的動作)
接下來,參照圖6具體說明通過第1域10以及第2域2(H企查例如以預(yù)定頻率執(zhí)行的應(yīng)用程序等第2軟件時的控制動作。此外,在此以第1域10發(fā)送用于請求檢查的檢查請求信息,并且立即開始軟件的執(zhí)行的上述方法(2)為例進《亍i兌明。
在步驟S101中,在第2域20中,軟件檢查部117正在執(zhí)行應(yīng)用程序C的檢查。然后,在第2域20中,假定請求接收部131從第1域10接收到檢查請求信息。
在步驟S103中,在第2域20中,軟件沖企查部117中斷當前正在執(zhí)行的應(yīng)用程序C的檢查,檢查與通過請求接收部131接收到的檢查請求信息中包含的軟件ID對應(yīng)的軟件(例如應(yīng)用程序D)是否安全。另外,此時,軟件檢查部117在確認為應(yīng)用程序D不安全時向執(zhí)行限制部123通知該情況。接收到該通知的執(zhí)行限制部123指示第1域10停止執(zhí)行該應(yīng)用程序D、以及此后禁止執(zhí)行。
在步驟S105中,在第2域20中,軟件檢查部117在檢查了接收到該請求的軟件后,重新開始剛才中斷的軟件的檢查,接著繼續(xù)檢查與在執(zhí)行順序存儲部111以及執(zhí)行頻率取得部113中存儲的執(zhí)行優(yōu)先順序以及執(zhí)行頻率對應(yīng)的軟件。
在步驟S107中,第1域10向第2域20發(fā)送應(yīng)用程序D的檢查請求信息,同時開始^^亍該應(yīng)用程序D。另外,第1域10在執(zhí)-f亍該應(yīng)用程序D的過程中從執(zhí)行限制部123指示停止執(zhí)行該應(yīng)用程序D時,立即停止執(zhí)行。(作用及效果)
根據(jù)本實施方式的終端裝置1,在第2域20中,軟件檢查部117按照執(zhí)行優(yōu)先順序檢查(確認)多個軟件是否安全。另外,第1域10在通過軟件檢查部117纟企查第1域10中存儲的全部軟件是否安全之前,也可以執(zhí)行被確認為安全的軟件。
因此,如現(xiàn)有技術(shù)那樣,在終端裝置l中不檢查存儲的全部多個軟件是否安全,而可以由第1域IO執(zhí)行檢查結(jié)束并且確認為安全的軟件。另外,在終端裝置1中,軟件卩險查部117按照預(yù)先存儲的執(zhí)行優(yōu)先順序或執(zhí)行頻率,逐個自動檢查軟件。因此,第1域IO在執(zhí)行軟件時可以進一步縮短得到檢查結(jié)果之前的待才幾期間。
另外,才艮據(jù)本實施方式的終端裝置1,在第2域20中,軟件才企查部117使通過第1域10始終執(zhí)行的軟件(第1軟件)優(yōu)先于以預(yù)定頻率執(zhí)行的軟件(第2軟件)來4企查是否安全,因此,第1域10在執(zhí)行軟件時可以進一步縮短等待檢查的期間。另外,軟件檢查部117按照與執(zhí)行頻率對應(yīng)的順序逐個自動檢查應(yīng)用程序等軟件,因此,當根據(jù)用戶的請求由第1域IO執(zhí)行軟件時,可以更早地提供已經(jīng)完成了檢查的環(huán)境。而且,此時通過第1域IO提高了消除等待檢查結(jié)果的待機期間本身的可能性。
于是,根據(jù)所述特征,終端裝置1可以通過檢查軟件來抑制安全性降低,同時通過該才全查可以減少OS或應(yīng)用程序的啟動時間的增加。因此,根據(jù)所述終端裝置1可以確保不斷大容量化的軟件的安全性,同時可以將啟動時間的增加抑制到最小限度,并且可以全面地檢查軟件。
另外,根據(jù)本實施方式的終端裝置1,在第2域20中,執(zhí)行限制部123根據(jù)通過軟件檢查部117檢查的軟件的檢查結(jié)果,限制第1域10的動作。因此,執(zhí)行限制部123可以禁止執(zhí)行被確認為不安全的軟件,確保終端裝置1的安全性。另外,在第2域20中,結(jié)果通知部127根據(jù)第1域10的請求通知斥企查結(jié)果,因此第1域10可以迅速地確認檢查結(jié)果。
另外,根據(jù)本實施方式的終端裝置1,在第2域20中,通過安全軟件列表119和非安全軟件列表121可以可靠地管理安全的軟件和不安全的軟件。
另外,根據(jù)本實施方式的終端裝置1,在第2域20中,軟件檢查部117根據(jù)列表閃速存儲部129的指示,每隔預(yù)定期間定期地檢查多個軟件是否安全,因此即使一度檢查為安全,也每隔預(yù)定期間再次檢查,可以確保安全性。另外,此時軟件檢查部117僅檢查前一次確認為安全的軟件,因此不執(zhí)行沒用的處理,可以降低運算處理負荷。
根據(jù)本實施方式的終端裝置1,在第1域10中不執(zhí)行檢查結(jié)果確認為不安全的軟件,因此可以確保安全性。另外,第1域10,在未檢查從現(xiàn)在起預(yù)定執(zhí)行的軟件的情況下,請求檢查該軟件。另外,在接收到該請求的第2域20中,軟件檢查部117優(yōu)先檢查所請求的軟件,因此可以縮短得到檢查結(jié)果之前的第1域10的待機期間。
根據(jù)本實施方式的終端裝置1,作為第1域10請求了檢查時的一種方法(方法(1 )),停止執(zhí)行軟件直到有來自第2域20的執(zhí)行限制部123的指示為止,因此在特定軟件不安全的情況下,可以防止通過該特定軟件流出個人信息等,可以較高地保持安全性。另外,作為第1域10請求了檢查時的另一方法(方法(2)),并行地立即開始執(zhí)行已經(jīng)請求了的軟件,因此可以抑制軟件啟動的期間延長。另外,在這種情況下,在第2域20中,當通過軟件檢查部117確認所請求的軟件不安全時,指示第1域IO立即停止執(zhí)行,因此也可以確保安全性。.
另夕卜,在第2域20中,執(zhí)行限制部123也可以指示第1域10禁止執(zhí)行軟件,直到通過軟件檢查部117完成全部軟件是否安全的檢查為止,因此可以根據(jù)用戶希望,提供安全性較高的環(huán)境。
另外, 一般終端裝置l在通過電池等驅(qū)動的情況下,希望節(jié)電化。根據(jù)現(xiàn)有技術(shù),例如在終端裝置啟動OS等時檢查存儲的全部軟件是否安全,因此在應(yīng)用程序等軟件對于用戶成為可以使用的狀態(tài)之前,消耗電力增大。因此,當在電池中積蓄的電力非常少的情況下,有時甚至無法對用戶提供可以使用軟件的狀態(tài)。但是,根據(jù)本發(fā)明的終端裝置1按照通常那樣使OS啟動,因此可以對用戶提供可以使用應(yīng)用程序的狀態(tài)。
(第2實施方式的終端裝置的結(jié)構(gòu))接下來,著眼于和上述第1實施方式的不同點,說明本發(fā)明的第2實施方式的終端裝置1的結(jié)構(gòu)。在上述第1實施方式的終端裝置1的第2域20中,執(zhí)行限制部123指示第1域10停止執(zhí)行(或禁止執(zhí)行)通過軟件檢查部117確認為不安全的軟件,但也設(shè)想到在該第1域10中已經(jīng)執(zhí)行了該軟件的情況下、或第1域10已經(jīng)被篡改,未接收到來自第2域20的指示的情況下,不遵從該指示的情況。而且也設(shè)想到,在該軟件中包含例如在啟動OS時參照的設(shè)定信息等的情況下,即使當前未通過第1域IO執(zhí)行(參照)該軟件,在確認不安全的情況下也需要在通過第1域IO執(zhí)行前再次啟動。因此,在本實施方式中說明在第1域10不遵從指示的情況下、或需要再次啟動的情況下第2域20執(zhí)行的處理。首先,在本實施方式的第2域20中,沖丸行限制部123,在通過第1域IO執(zhí)行軟件時,例如由于執(zhí)行了被篡改的軟件而在第1域10中檢查出異常的情況下,將第1域10復位(再次啟動)。另外,執(zhí)行限制部123,在檢查通過第2域20執(zhí)行的軟件是否安全的處理中,例如由于在第2域20中執(zhí)行了被篡改的軟件而在第2域20中檢查出異常的情況下,將第2域20復位(reset)。此外,執(zhí)行限制部123可以在第1域IO檢查出凍結(jié)(freeze)等異常時也將第1域10復位。另夕卜,執(zhí)行限制部123也可以不僅將第1域10復位,而且將第2域20—起復位。另外,執(zhí)行限制部123,在第2域20中發(fā)生安全引導失敗等異常,無法保證第2域20的安全性的情況下,可以進行終端裝置1本身的復位。
另外,如圖7所示,在本實施方式的執(zhí)行順序存儲部111中預(yù)先對應(yīng)地存儲了軟件ID、執(zhí)行優(yōu)先順序、當正在執(zhí)行與該軟件ID對應(yīng)的軟件時表示對第1域10的指示內(nèi)容的信息、當并非正在執(zhí)行時表示對第1域10的指示內(nèi)容的信息。
另外,在執(zhí)行順序存儲部111中,作為表示第1域IO正在執(zhí)行軟件的情況下的指示內(nèi)容的信息,存儲了表示可以進行第1域10的控制的情況下的指示內(nèi)容的"可控制時指示信息"(例如停止執(zhí)行)、和表示不可控制的情況下的指示內(nèi)容的"不可控制時指示信息"(例如復位)。而且,在執(zhí)行順序存儲部111中,作為表示第1域10并非正在執(zhí)行軟件的情況下的指示內(nèi)容的信息,存儲了表示可以進行第1域10的控制的情況下的指示內(nèi)容的"可控制時指示信息,,(例如禁止執(zhí)行)、和表示不可控制的情況下的指示內(nèi)容的"不可控制時指示信息"(例如復位)。
另外,本實施方式的執(zhí)行限制部123,當從軟件檢查部117接收到作為檢查結(jié)果而確認為不安全的軟件ID的通知時,在第1域10中判定與所通知的軟件ID對應(yīng)的軟件是否正在執(zhí)行。此外,執(zhí)行限制部123,當從軟件檢查部117接收到作為判定結(jié)果而確認為安全的軟件ID的通知時,執(zhí)行與上述第1實施方式相同的處理。另外,作為判定是否正在通過第1域IO執(zhí)行該軟件的方法,可以構(gòu)成為,每當?shù)?域IO執(zhí)行軟件時,將對應(yīng)的軟件ID通知給執(zhí)行限制部123,也可以構(gòu)成為,執(zhí)行限制部123根據(jù)該通知,判定被判定為不安全的軟件是否是通過第1域IO正在執(zhí)行的軟件。
另外,執(zhí)行限制部123,在判定在第1域10中是否正在執(zhí)行該軟件后,參照上述實施順序存儲部111,根據(jù)在執(zhí)行順序存儲部111中存儲的正在執(zhí)行或并非正在執(zhí)行時的"可控制時指示信息",控制第1域10的動作。
具體而言,扭j亍限制部123,當判定為正在執(zhí)行軟件時,在執(zhí)行順序存儲部111中,根據(jù)與該軟件ID對應(yīng)的正在執(zhí)行時的"可控制時指示信息(例如停止執(zhí)行)",向第1域10指示該軟件的動作(例如停止執(zhí)行)。另外,執(zhí)行限制部123,當判定為并非正在執(zhí)行時,也根據(jù)與該軟件ID對應(yīng)的并非正在執(zhí)行時的"可控制時指示信息(例如禁止執(zhí)行)",向第1域IO指示該軟件的動作(例如禁止執(zhí)行)。
然后,執(zhí)行限制部123,在根據(jù)"可控制時指示信息"對第1域10進行指示后,在第1域10不遵從該指示的情況下,參照上述執(zhí)行順序存儲部111,根據(jù)在執(zhí)行順序存儲部111中存儲的正在執(zhí)行或并非正在執(zhí)行時的"不可控制時指示信息",控制第1域10的動作。
具體而言,執(zhí)行限制部123,在第1域10正在執(zhí)行該軟件、并且第1域10不遵從該指示的情況下,根據(jù)在執(zhí)行順序存儲部111中與該軟件ID對應(yīng)存儲的正在執(zhí)行時的"不可控制時指示信息(例如刪除),,,向第1域10指示動
作(例如刪除)。另外,執(zhí)行限制部123,在第1域10并非是正在執(zhí)行該軟件(并非正在執(zhí)行)、并且不遵從該指示的情況下,也根據(jù)與該軟件ID對應(yīng)存儲的并非正在4丸^f于時的"不可控制時指示信息(例如刪除),,,向第1域10指示動作(例如刪除)。此外,執(zhí)行限制部123,在執(zhí)行順序存儲部111中與該軟件ID對應(yīng)的"不可控制時指示信息"例如是"刪除,,的情況下,可以不向第1域10指示"刪除",而立即執(zhí)行該軟件的刪除。
另夕卜,執(zhí)行限制部123,在執(zhí)行順序存儲部111中與該軟件ID對應(yīng)的"不可控制時指示信息"例如是"復位"的情況下,將第1域10強制復位。此外,執(zhí)行限制部123也可以執(zhí)行在"刪除"該軟件后,將第1域10 "復位"等兩個處理。
如上所述,在本實施方式的第2域20中,執(zhí)行限制部123根據(jù)第1域10是否遵從指示(是否可以控制),進行軟件的停止執(zhí)行(或禁止執(zhí)行)、或軟件的刪除、第1域10的復位等,因此根據(jù)第1域10中的軟件的執(zhí)行狀態(tài)確保安全性,所以能恰當?shù)剡M行控制。
另外,在本實施方式的第2域20中,執(zhí)行限制部123在第1域10中檢查出異常的情況下、或在第2域20中檢查出異常的情況下,將第1域10或第2域20復位,因此可以確保終端裝置1的安全性。
(第3實施方式的終端裝置的結(jié)構(gòu))
接下來,著眼于和上述第1實施方式的不同點,說明本發(fā)明的第3實施方式的終端裝置l的結(jié)構(gòu)。如上所述,將第2域20應(yīng)用于DSP或加密加速器等以支援第1域10為目的的第2域20。因此,有時從第1域10為了第2域20的本來目的而調(diào)用第2域20。因而,第2域20實現(xiàn)與第2域20的本來的處理相同的處理。假定在加密加速器中導入第2域20時,在第2域20中可以作為任務(wù)或進程來實現(xiàn)從第1域接受的加密處理。圖8是表示在本實施方式的終端裝置l中,通過第2域20執(zhí)行的處理的對象發(fā)生遷移的情形的圖像。
例如,在第2域20正在檢查軟件的情況下(步驟S201 ),當從第1域10發(fā)出例如執(zhí)行預(yù)定的應(yīng)用程序等本來的處理請求時,通過第2域20的內(nèi)核而被調(diào)度(步驟S203 )。此時,第2域20通過將檢查處理的優(yōu)先度設(shè)定得較低,立即根據(jù)請求切換到加密處理等第2域20本來的應(yīng)用程序的處理動作(步驟S205 )。另外,第2域20,當完成所請求的應(yīng)用程序的處理時,通過內(nèi)核調(diào)度檢查處理,再次重新開始軟件的檢查處理的任務(wù)(步驟S207)。
于是,在第2域中,不對本來的處理產(chǎn)生影響,也無損于對請求了處理的第1域10的應(yīng)答性,因此可以使使用終端裝置1時的影響達到最小限度。
本發(fā)明通過上述實施方式進行了記載,但構(gòu)成本公開的 一部分的論述以及附圖不應(yīng)理解為對本發(fā)明進行限定。根據(jù)本公開,本領(lǐng)域技術(shù)人員可以明了各種替代實施方式、實施例以及運用技術(shù)。
例如,本發(fā)明的第2域20未對處理器或RAM等硬件進行特別的限制,因此也可以向多核處理器等通用的處理器導入第2域。在這種情況下,通過在與多核相對應(yīng)的通用處理器中導入本發(fā)明的第2域20,在PC或服務(wù)器等中也可以不對正常利用造成影響地維持安全性。
于是,本發(fā)明當然包含在此未記載的各種實施方式等。另外,各實施方式也可以進行組合。從而,根據(jù)上述說明,本發(fā)明的^l支術(shù)范圍僅通過妥當?shù)恼埱蟊Wo的范圍中的發(fā)明特定事項而決定。
此外,日本專利申請第2007-031380號(2007年2月9日申請)的全部內(nèi)容,通過參照被并入本說明書。
產(chǎn)業(yè)上的可利用性
如上所述,根據(jù)本發(fā)明的終端裝置以及軟件檢查方法,在終端裝置中,可以在確保安全性的同時,通過軟件的檢查來減少OS或應(yīng)用程序的啟動時間增加,因此十分有用。
權(quán)利要求
1.一種終端裝置,其特征在于,具有執(zhí)行多個軟件的第1域,以及與所述第1域獨立地動作、檢查所述多個軟件的每一個是否安全的第2域,所述第2域具有執(zhí)行順序存儲部,其存儲通過所述第1域執(zhí)行的所述多個軟件的執(zhí)行優(yōu)先順序;軟件檢查部,其按照存儲在所述執(zhí)行順序存儲部中的所述執(zhí)行優(yōu)先順序,檢查所述多個軟件是否安全;以及執(zhí)行限制部,其在所述多個軟件的全部檢查結(jié)束之前,限制通過所述第1域執(zhí)行所述多個軟件內(nèi)得到不安全的檢查結(jié)果的軟件。
2. 根據(jù)權(quán)利要求1所述的終端裝置,其特征在于,所述執(zhí)行順序存儲部,將用于識別所述第1域的第1域識別信息或用于識 別所述第2域的第2域識別信息中的某一個、與所述多個軟件的每一個對應(yīng)起 來存儲,所述第2域的所述軟件檢查部,按照所述執(zhí)行優(yōu)先順序,檢查與所述第2 域識別信息對應(yīng)存儲的軟件是否安全,所述第l域具備用于檢查與所述第l域識別信息對應(yīng)存儲的軟件是否安全 的副軟件檢查部。
3. 根據(jù)權(quán)利要求2所述的終端裝置,其特征在于,所述執(zhí)行順序存儲部,將表示所述終端裝置的啟動時和所述終端裝置的啟 動后中至少一方的時刻的時刻信息、和所述多個軟件的每一個對應(yīng)起來存儲,所述軟件檢查部和所述副軟件檢查部,按照由所述時刻信息表示的時刻, 檢查所述軟件是否安全。
4. 根據(jù)權(quán)利要求1至3中任意一項所述的終端裝置,其特征在于, 所述第2域還具備安全軟件列表,其存儲所述多個軟件內(nèi)、在所述軟件檢查部中確認為安全的軟件的識別信息,所述第1域在執(zhí)行預(yù)定的軟件前,判定所述預(yù)定的軟件的識別信息是否存儲在所述安全軟件列表中,當所述預(yù)定的軟件的識別信息未存儲在所述安全軟 件列表中時,限制所述預(yù)定的軟件的執(zhí)行。
5. 根據(jù)權(quán)利要求1至4中任意一項所述的終端裝置,其特征在于, 在所述多個軟件中包含通過所述第l域始終執(zhí)行的第l軟件、和以預(yù)定頻率執(zhí)行的第2軟件,所述執(zhí)行順序存儲部,與所述第2軟件的所述執(zhí)行優(yōu)先順序相比,優(yōu)先存 儲了所述第1軟件的所述執(zhí)行優(yōu)先順序,所述軟件檢查部按照所述執(zhí)行優(yōu)先順序,使所述第1軟件優(yōu)先于所述第2 軟件來檢查是否安全。
6. 根據(jù)權(quán)利要求5所述的終端裝置,其特征在于, 所述第2域還具備執(zhí)行頻率取得部,其取得通過所述第1域執(zhí)行的所述第2軟件的執(zhí)行頻率;以及執(zhí)行頻率存儲部,其將所取得的所述執(zhí)行頻率和所述第2軟件對應(yīng)起來存儲,述執(zhí)行優(yōu)先順序,檢查所述第2軟件是否安全。
7. 根據(jù)權(quán)利要求1至6中任意一項所述的終端裝置,其特征在于, 所述第2域還具備非安全軟件列表,其存儲所述多個軟件內(nèi)、在所述軟件檢查部中確認為不安全的軟件的識別信息。
8. 根據(jù)權(quán)利要求1至7中任意一項所述的終端裝置,其特征在于, 所述軟件檢查部每隔預(yù)定的期間檢查所述多個軟件是否安全。
9. 根據(jù)權(quán)利要求7所述的終端裝置,其特征在于,所述第1域發(fā)送用于請求所述多個軟件內(nèi)被檢查過的軟件的檢查結(jié)果的 結(jié)果請求信息,所述第2域還具備結(jié)果通知部,其在從所述第l域接收到所述結(jié)果請求信息時,向所述第1域發(fā)送結(jié)果應(yīng)答信息,該結(jié)果應(yīng)答信息包含存儲在所述安全軟件列表中的所述識別信息、和存儲在所述非安全軟件列表中的所述識別信 臺所述第l域,根據(jù)從所述結(jié)果通知部接收到的所述結(jié)果應(yīng)答信息,僅執(zhí)行 通過所述軟件檢查部確認為安全的所述軟件。
10. 根據(jù)權(quán)利要求9所述的終端裝置,其特征在于,所述第2域還具備請求接收部,其從所述第1域接收用于請求檢查所述 軟件的檢查請求信息,所述第1域,在從所述結(jié)果通知部通知的所述結(jié)果應(yīng)答信息中沒有包含從 現(xiàn)在起開始執(zhí)行的特定軟件的識別信息的情況下,向所述請求接收部發(fā)送用于 請求檢查所述特定軟件的所述檢查請求信息,所述請求接收部,在接收到所述檢查請求信息時,在所述軟件檢查部正在 檢查與所述特定軟件不同的其它軟件的情況下,使所述其它軟件的檢查中斷,所述軟件檢查部,使所述特定軟件優(yōu)先來檢查所述特定軟件是否安全。
11. 根據(jù)權(quán)利要求IO所述的終端裝置,其特征在于,所述第l域,在發(fā)送了所述檢查請求信息時,停止所述特定軟件的執(zhí)行, 直到接收到來自所述執(zhí)行限制部的指示為止,所述執(zhí)行限制部,當通過所述軟件;險查部確認為所述特定軟件安全的情況 下,指示所述第1域執(zhí)行所述特定軟件。
12. 根據(jù)權(quán)利要求IO所述的終端裝置,其特征在于,所述第l域,在向所述請求接收部發(fā)送了所述檢查請求信息時,開始所述 特定軟件的執(zhí)行,所述執(zhí)行限制部,在通過所述軟件檢查部確認為所述特定軟件不安全的情 況下,限制所述第l域執(zhí)行所述特定軟件。
13. 根據(jù)權(quán)利要求1所述的終端裝置,其特征在于,所述執(zhí)行限制部,在通過所述軟件檢查部結(jié)束所述多個軟件是否安全的檢 查之前,限制所述第1域執(zhí)行所述多個軟件。
14. 一種終端裝置中的軟件檢查方法,該終端裝置具有執(zhí)行多個軟件的第 l域、以及檢查所述多個軟件的每一個是否安全的第2域,該軟件檢查方法的特征在于,包含以下步驟順序存儲步驟,所述第2域存儲通過所述第1域執(zhí)行的所述多個軟件的執(zhí)行優(yōu)先順序;檢查步驟,所述第2域按照所述執(zhí)行優(yōu)先順序檢查所述多個軟件是否安 全;以及限制步驟,所述第2域在所述多個軟件的全部檢查結(jié)束之前,限制通過所 述第1域執(zhí)行所述多個軟件內(nèi)得到不安全的檢查結(jié)果的軟件。
全文摘要
本發(fā)明的終端裝置具備執(zhí)行多個軟件的第1域,以及與該第1域獨立地動作、檢查軟件是否安全的第2域。第2域具備執(zhí)行順序存儲部,其存儲通過第1域執(zhí)行的所述多個軟件的執(zhí)行優(yōu)先順序;軟件檢查部,其按照執(zhí)行順序存儲部,檢查多個軟件是否安全;執(zhí)行限制部,其在所述多個軟件的全部檢查結(jié)束前,限制通過第1域執(zhí)行多個軟件內(nèi)得到不安全的檢查結(jié)果的軟件。
文檔編號G06F21/22GK101606164SQ20088000457
公開日2009年12月16日 申請日期2008年2月12日 優(yōu)先權(quán)日2007年2月9日
發(fā)明者太田賢, 小熊壽 申請人:株式會社Ntt都科摩