將文件加載到電子裝置中的隨機(jī)存取存儲(chǔ)器中的方法和相關(guān)聯(lián)電子裝置的制造方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及在可信執(zhí)行環(huán)境和富執(zhí)行環(huán)境之間共享文件。
[0002]更具體地,本發(fā)明涉及一種將文件加載到電子裝置中的隨機(jī)存取存儲(chǔ)器中的方法,該電子裝置被設(shè)計(jì)為運(yùn)行在一個(gè)可信執(zhí)行環(huán)境中和一個(gè)富執(zhí)行環(huán)境中,本發(fā)明還涉及一種這類電子裝置。
[0003]當(dāng)提供一個(gè)共享存儲(chǔ)器區(qū)域時(shí)本發(fā)明的應(yīng)用尤其有利,該共享存儲(chǔ)器區(qū)域可由該可信執(zhí)行環(huán)境中和該富執(zhí)行環(huán)境共同使用。
【背景技術(shù)】
[0004]正如例如論文“可信執(zhí)行環(huán)境在移動(dòng)裝置上的未開發(fā)潛力(The UntappedPotential of Trusted Execut1n Environments on Mobile Devices),,(Ekberg, K.Kostiainen 和 N.Asokan,IEEE Security&Privacy,卷 PP,版次 99,2014 年 4 月 16 日)中所解釋的,已經(jīng)知道可以利用可信操作系統(tǒng)使電子裝置安全運(yùn)行,可信操作系統(tǒng)有可能提供只有某些應(yīng)用程序可以在其中安裝和執(zhí)行的可信執(zhí)行環(huán)境(TEE)。
[0005]這種可信環(huán)境通常與富執(zhí)行環(huán)境(REE) —起提供,在富執(zhí)行環(huán)境中安全約束較為寬松并因此可以安裝大量應(yīng)用程序。富環(huán)境依賴于執(zhí)行不同于可信操作系統(tǒng)的富操作系統(tǒng)(富OS)的電子裝置。
[0006]為了確保兩個(gè)執(zhí)行環(huán)境之間的良好隔離以及因此帶來的良好運(yùn)行安全性,通常為每個(gè)執(zhí)行環(huán)境提供專用存儲(chǔ)器空間,尤其是在隨機(jī)存取存儲(chǔ)器中。
[0007]然而,又已提出使用可由這兩個(gè)執(zhí)行環(huán)境訪問的共享存儲(chǔ)器區(qū)域,這在2013BlackHat Europe大會(huì)上由T.Roth做的演示文稿“下一代移動(dòng)惡意程序(NextGenerat1n Mobile Rootkits) ”(在上文提到的論文中作為參考[15]做了引用)中特別提到。
【發(fā)明內(nèi)容】
[0008]在此背景下,本發(fā)明提出了一種將文件加載到一個(gè)電子裝置中的隨機(jī)存取存儲(chǔ)器中的方法,由于該電子裝置的一個(gè)處理器執(zhí)行一個(gè)可信操作系統(tǒng),該電子裝置被設(shè)計(jì)為在一個(gè)可信執(zhí)行環(huán)境(TEE)中運(yùn)行,或在一個(gè)富執(zhí)行環(huán)境(REE)中運(yùn)行,其特征在于,該方法包括以下多個(gè)步驟:
[0009]-由該可信操作系統(tǒng)接收標(biāo)識(shí)至少一個(gè)文件的信息;
[0010]-由該可信操作系統(tǒng)按照至少一個(gè)給定標(biāo)準(zhǔn)驗(yàn)證所標(biāo)識(shí)的該文件的符合性;
[0011]-如果符合,當(dāng)運(yùn)行在該富執(zhí)行環(huán)境中時(shí),將所標(biāo)識(shí)的該文件加載(例如通過該可信操作系統(tǒng))到以只讀模式訪問的隨機(jī)存取存儲(chǔ)器的一個(gè)區(qū)域中。
[0012]因此該可信操作系統(tǒng)控制將文件加載到在該可信執(zhí)行環(huán)境和該富執(zhí)行環(huán)境之間共享的隨機(jī)存取存儲(chǔ)器區(qū)域中;當(dāng)運(yùn)行在富執(zhí)行環(huán)境期間這種共享區(qū)域可以只讀模式訪問并因此其中存儲(chǔ)的文件(尤其當(dāng)運(yùn)行在該可信執(zhí)行環(huán)境期間所使用)不能被該富執(zhí)行環(huán)境中執(zhí)行的應(yīng)用程序破壞。
[0013]此加載操作可以在啟動(dòng)該電子裝置時(shí)執(zhí)行,這在下文詳細(xì)描述,或在運(yùn)行期間執(zhí)行,例如當(dāng)在該富執(zhí)行環(huán)境中啟動(dòng)對(duì)應(yīng)于該文件或使用該文件的一個(gè)應(yīng)用程序時(shí)。
[0014]所標(biāo)識(shí)的該文件是一個(gè)應(yīng)用程序,例如一個(gè)庫(kù)或一個(gè)數(shù)據(jù)集。
[0015]根據(jù)其他可選的和因此非限定性的特征:
[0016]-標(biāo)識(shí)該文件的該信息包含在一個(gè)要求說明(例如一個(gè)要求列表)中,當(dāng)運(yùn)行在該富執(zhí)行環(huán)境期間準(zhǔn)備該要求說明;
[0017]-根據(jù)數(shù)據(jù)構(gòu)建該要求說明,該數(shù)據(jù)表示安裝在該富執(zhí)行環(huán)境中的應(yīng)用程序的使用頻率;
[0018]-根據(jù)使用統(tǒng)計(jì)數(shù)據(jù)構(gòu)建該要求說明,該使用統(tǒng)計(jì)數(shù)據(jù)與多個(gè)標(biāo)準(zhǔn)相關(guān);
[0019]-該方法包括由該可信執(zhí)行系統(tǒng)構(gòu)建一個(gè)共享列表的步驟,該列表包括該加載文件的名稱和該加載文件的地址(例如,下文指明的虛擬地址);
[0020]-該共享列表包括與該加載文件相關(guān)的完整性驗(yàn)證信息;
[0021]-該共享列表包括由該可信操作系統(tǒng)生成并且與該加載文件相關(guān)的一個(gè)證書;
[0022]-該共享列表存儲(chǔ)在所述隨機(jī)存取存儲(chǔ)器區(qū)域中,當(dāng)運(yùn)行在該富執(zhí)行環(huán)境期間可以只讀模式訪問該區(qū)域;
[0023]-所述加載由一個(gè)非易失性存儲(chǔ)器(例如,一種可再編程非易失性存儲(chǔ)器)實(shí)現(xiàn);
[0024]-當(dāng)運(yùn)行在該富執(zhí)行環(huán)境期間,借助于指向多個(gè)物理地址的多個(gè)虛擬地址,所述區(qū)域可以只讀模式訪問,該多個(gè)物理地址不同于這些相關(guān)的虛擬地址。
[0025]-標(biāo)識(shí)該文件的該信息在從該富執(zhí)行環(huán)境切換到該可信執(zhí)行環(huán)境時(shí)被接收。
[0026]該方法進(jìn)一步包括以下多個(gè)步驟,該多個(gè)步驟在該富執(zhí)行環(huán)境中為該要求說明里提及的每個(gè)文件而執(zhí)行:
[0027]-確定該提及的文件是否已經(jīng)被加載到以只讀模式訪問的所述隨機(jī)存取存儲(chǔ)器區(qū)域中;
[0028]-如果否,當(dāng)運(yùn)行在該富執(zhí)行環(huán)境期間,將該相關(guān)的文件加載到以寫模式訪問的另一個(gè)隨機(jī)存取存儲(chǔ)器區(qū)域中。
[0029]該提出的方法可以進(jìn)一步包括以下多個(gè)步驟:
[0030]-在該富執(zhí)行環(huán)境中安裝一個(gè)新應(yīng)用程序之后,傳送一個(gè)經(jīng)更新的要求說明至該可信操作系統(tǒng);
[0031]-當(dāng)運(yùn)行在該富執(zhí)行環(huán)境期間,將該經(jīng)更新的要求說明中指定的一個(gè)新文件加載以只讀模式訪問的隨機(jī)存取存儲(chǔ)器的區(qū)域中。
[0032]本發(fā)明還提出了一種電子裝置,該電子裝置包括至少一個(gè)處理器和一個(gè)隨機(jī)存取存儲(chǔ)器,并且由于該處理器執(zhí)行一個(gè)可信操作系統(tǒng),該電子裝置被設(shè)計(jì)為在一個(gè)可信執(zhí)行環(huán)境中運(yùn)行,或者在一個(gè)富執(zhí)行環(huán)境中運(yùn)行,其特征在于,該可信操作系統(tǒng)被設(shè)計(jì)成用于:接收標(biāo)識(shí)至少一個(gè)文件的信息,利用至少一個(gè)給定標(biāo)準(zhǔn)來驗(yàn)證所標(biāo)識(shí)的該文件的符合性,并且如果符合,當(dāng)運(yùn)行在該富執(zhí)行環(huán)境中時(shí),將所標(biāo)識(shí)的該文件加載到以只讀模式訪問的隨機(jī)存取存儲(chǔ)器的一個(gè)區(qū)域中。
[0033]這種電子裝置可以進(jìn)一步具有根據(jù)該方法構(gòu)想的這些可選特征中的一個(gè)或多個(gè)可選特征。
【附圖說明】
[0034]參考附圖的以下描述清楚地解釋了本發(fā)明如何構(gòu)成以及它可以如何應(yīng)用于實(shí)踐,這些附圖通過非限制性示例來提供。
[0035]在附圖中:
[0036]-圖1展示了在本發(fā)明的上下文中使用的電子裝置的主要元件;
[0037]-圖2示意性地展示了在圖1的電子裝置中使用兩個(gè)環(huán)境;
[0038]-圖3展示了共享在本發(fā)明的上下文中提出的隨機(jī)存取存儲(chǔ)器;
[0039]-圖4a展示了在圖1的電子裝置中存儲(chǔ)的并在本發(fā)明的上下文中使用的功能表;
[0040]-圖4b展示了存儲(chǔ)使用統(tǒng)計(jì)數(shù)據(jù)的三維表,該使用統(tǒng)計(jì)數(shù)據(jù)可用在變體實(shí)施例中;
[0041]-圖5展示了一種根據(jù)本發(fā)明的將文件加載隨機(jī)存取存儲(chǔ)器中的方法的示例;
[0042]-圖6展示了在圖5的方法中生成的功能列表。
【具體實(shí)施方式】
[0043]圖1展示了在其中使用本發(fā)明的電子裝置10的主要元件。
[0044]這種電子裝置10(在本文是一個(gè)終端(例如,智能電話))使用基于微處理器的架構(gòu)。可替代地,該電子裝置可以是視頻解碼器(也稱為機(jī)頂盒)或連接的電子裝置(例如,手環(huán)、手表、護(hù)目鏡或計(jì)步器)。
[0045]電子裝置10包括一個(gè)處理器2,例如片上系統(tǒng)(SoC)微處理器。除了處理器2,這種系統(tǒng)包括具有各種功能的其他電子組件,例如只讀存儲(chǔ)器或R0M(未示出)、隨機(jī)存取存儲(chǔ)器或RAM 4、以及可再編程非易失性存儲(chǔ)器6,例如電可擦除且可編程只讀存儲(chǔ)器(EEPROM)。
[0046]圖2示意性展示了在電子裝置10中使用兩個(gè)執(zhí)行環(huán)境。
[0047]為此,電子裝置10的處理器2可以執(zhí)行兩個(gè)不同的操作系統(tǒng):富操作系統(tǒng)(富OS) 20和可信操作系統(tǒng)(可信OS) 30,有時(shí)它們稱為安全操作系統(tǒng)(安全OS)。
[0048]富操作系統(tǒng)20使用戶能夠以很大自由度下載、安裝和執(zhí)行應(yīng)用程序。因此,使用富操作系統(tǒng)20創(chuàng)建富執(zhí)行環(huán)境(REE)。
[00