亚洲狠狠干,亚洲国产福利精品一区二区,国产八区,激情文学亚洲色图

中央處理器和計算機開機自檢的方法

文檔序號:8905155閱讀:516來源:國知局
中央處理器和計算機開機自檢的方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及計算機系統(tǒng),更具體地,涉及具有開機自檢功能的中央處理器和計算機開機自檢的方法。
【背景技術(shù)】
[0002]近來,計算機系統(tǒng)在各領(lǐng)域得到廣泛的應(yīng)用。由于信息網(wǎng)絡(luò)的普及,計算機系統(tǒng)的安全問題日益受到關(guān)注。通過網(wǎng)絡(luò)傳播的惡意應(yīng)用程序可能通過竊取、篡改、刪除計算機系統(tǒng)中存儲的數(shù)據(jù)給用戶造成損失。
[0003]為了應(yīng)對上述安全問題,有必要在計算機系統(tǒng)的各個層面防范惡意應(yīng)用程序的攻擊。不難理解,上級層面的安全性依賴于下級層面的安全性,派生程序的安全性依賴于父程序的安全性。例如,如果操作系統(tǒng)的代碼段被惡意篡改,則應(yīng)用程序?qū)用娴陌踩胧Υ藷o能為力。因此,系統(tǒng)最底層代碼和最初執(zhí)行的代碼的完整性是保障整個計算機系統(tǒng)安全性的基礎(chǔ)。
[0004]計算機系統(tǒng)在開機時,是依據(jù)儲存在主機板上的只讀存儲器(ROM)中的系統(tǒng)初始化指令,例如基本輸入輸出系統(tǒng)(Basic Input Output System, B1S)或者擴展固件接口(Extensible Firmware Interface, EFI),來完成最初的啟動和初始化過程。系統(tǒng)初始化指令也有可能被惡意篡改,因此,有必要在開機自檢時檢查系統(tǒng)初始化指令的完整性,以防止因系統(tǒng)初始化指令被篡改而危及計算機系統(tǒng)的安全。

【發(fā)明內(nèi)容】

[0005]因此,為了解決上述問題,本發(fā)明提供具有開機自檢功能的中央處理器和計算機開機自檢的方法。
[0006]根據(jù)本發(fā)明實施例的一個方面,提供一種中央處理器,包括:片內(nèi)只讀存儲器,用于存儲預(yù)設(shè)摘要信息,其中該預(yù)設(shè)摘要信息不允許修改;以及核心,用于在開機時使用摘要算法計算存儲在主機板中的驗證指令的摘要信息,并將該摘要信息與該預(yù)設(shè)摘要信息進行比較以驗證該驗證指令的完整性,如果該摘要信息與該預(yù)設(shè)摘要信息不一致,則執(zhí)行關(guān)機指令,其中該驗證指令用于驗證該主機板的系統(tǒng)初始化指令的完整性。
[0007]根據(jù)本發(fā)明實施例,如果該摘要信息與該預(yù)設(shè)摘要信息一致,則該核心可以執(zhí)行該驗證指令以驗證該系統(tǒng)初始化指令的完整性,如果該系統(tǒng)初始化指令未能通過完整性驗證,則執(zhí)行關(guān)機指令。
[0008]根據(jù)本發(fā)明實施例,該片內(nèi)只讀存儲器可以進一步用于存儲簽名驗證數(shù)據(jù),其中該驗證指令可以用于執(zhí)行簽名驗證算法以利用該簽名驗證數(shù)據(jù)驗證該系統(tǒng)初始化指令的完整性。
[0009]根據(jù)本發(fā)明實施例,該簽名驗證算法可以是級聯(lián)簽名驗證算法,用于利用該簽名驗證數(shù)據(jù)驗證該系統(tǒng)初始化指令的第一部分的完整性,并利用包括在已驗證的該系統(tǒng)初始化指令的該第一部分中的附加簽名驗證數(shù)據(jù)驗證該系統(tǒng)初始化指令的第二部分的完整性。
[0010]根據(jù)本發(fā)明實施例,該簽名驗證算法可以是基于非對稱加解密算法,該系統(tǒng)初始化指令可以被基于該非對稱加解密算法使用私有密鑰加密,該簽名驗證數(shù)據(jù)可以包括與該私有密鑰對應(yīng)的公共密鑰。
[0011]根據(jù)本發(fā)明實施例,其中該驗證指令與該系統(tǒng)初始化指令存儲于該主機板的同一存儲器中。
[0012]根據(jù)本發(fā)明實施例,該核心可以包括用于執(zhí)行該摘要算法的硬件電路。
[0013]根據(jù)本發(fā)明實施例,該片內(nèi)只讀存儲器可以進一步用于存儲摘要指令,其中該核心通過執(zhí)行該摘要指令來執(zhí)行該摘要算法。
[0014]根據(jù)本發(fā)明實施例的另一方面,提供一種計算機開機自檢的方法,包括:在開機時從主機板中讀取驗證指令;使用摘要算法計算該驗證指令的摘要信息;將該摘要信息與存儲在中央處理器的片內(nèi)只讀存儲器中的預(yù)設(shè)摘要信息進行比較以驗證該驗證指令的完整性;以及如果該摘要信息與該預(yù)設(shè)摘要信息不一致,則執(zhí)行關(guān)機指令,其中該預(yù)設(shè)摘要信息不允許修改,且其中該驗證指令用于驗證該主機板的系統(tǒng)初始化指令的完整性。
[0015]根據(jù)本發(fā)明實施例,如果該摘要信息與該預(yù)設(shè)摘要信息一致,則該方法可以進一步包括:從主機板中讀取該系統(tǒng)初始化指令;執(zhí)行該驗證指令以驗證該系統(tǒng)初始化指令的完整性;以及如果該系統(tǒng)初始化指令未能通過完整性驗證,則執(zhí)行關(guān)機指令。
[0016]根據(jù)本發(fā)明實施例,該驗證指令可以用于執(zhí)行簽名驗證算法以利用存儲在該片內(nèi)只讀存儲器中的簽名驗證數(shù)據(jù)驗證該系統(tǒng)初始化指令的完整性。
[0017]根據(jù)本發(fā)明實施例,該簽名驗證算法可以是級聯(lián)簽名驗證算法,用于利用該簽名驗證數(shù)據(jù)驗證該系統(tǒng)初始化指令的第一部分的完整性,并利用包括在已驗證的該系統(tǒng)初始化指令的該第一部分中的附加簽名驗證數(shù)據(jù)驗證該系統(tǒng)初始化指令的第二部分的完整性。
[0018]根據(jù)本發(fā)明實施例,該簽名驗證算法可以是基于非對稱加解密算法,該系統(tǒng)初始化指令被基于該非對稱加解密算法使用私有密鑰加密,該簽名驗證數(shù)據(jù)包括與該私有密鑰對應(yīng)的公共密鑰。
[0019]根據(jù)本發(fā)明實施例,其中該驗證指令與該系統(tǒng)初始化指令存儲于該主機板的同一存儲器中。
[0020]根據(jù)本發(fā)明實施例,可以通過該中央處理器的核心中的硬件電路來執(zhí)行該摘要算法。
[0021 ] 根據(jù)本發(fā)明實施例,可以通過執(zhí)行存儲在該片內(nèi)只讀存儲器中的摘要指令來執(zhí)行該摘要算法。
[0022]通過使用根據(jù)本發(fā)明的中央處理器和計算機開機自檢的方法,一方面以中央處理器內(nèi)部的片內(nèi)只讀存儲器作為系統(tǒng)信任根,大大提高了系統(tǒng)的安全性;另一方面,由于在片內(nèi)只讀存儲器中僅存儲具有較短尺寸的驗證指令的預(yù)設(shè)摘要信息而不是完整的驗證指令,可以節(jié)省有限的存儲空間。。
【附圖說明】
[0023]圖1示出包括根據(jù)本發(fā)明的實施例的中央處理器102的計算機系統(tǒng)100 ;
[0024]圖2示出根據(jù)本發(fā)明另一實施例的中央處理器102 ;
[0025]圖3示出根據(jù)本發(fā)明另一實施例的圖1的主機板101中的B1S ROM 111 ;
[0026]圖4是根據(jù)本發(fā)明的實施例的計算機開機自檢的方法的流程圖;以及
[0027]圖5是級聯(lián)簽名驗證情況下圖4中的步驟S406的詳細(xì)過程的流程圖。
【具體實施方式】
[0028]下面參照附圖詳細(xì)描述根據(jù)本發(fā)明的示范性實施例。附圖中,將相同或類似的附圖標(biāo)記賦予結(jié)構(gòu)以及功能基本相同的組成部分,并且為了使說明書更加簡明,省略了關(guān)于基本上相同的組成部分的冗余描述。
[0029]圖1示出包括根據(jù)本發(fā)明一實施例的中央處理器102的計算機系統(tǒng)100。
[0030]參照圖1,計算機系統(tǒng)100包括主機板101、中央處理器102、輸入/輸出(I/O)設(shè)備103、以及存儲設(shè)備104。主機板101包括B1S ROM 111和隨機存取存儲器(RAM) 112。值得注意的是,這里是以B1S作為系統(tǒng)初始化指令來舉例,采用其它系統(tǒng)初始化指令(例如EFI)技術(shù)的計算機系統(tǒng)100也落入本發(fā)明要保護的范圍。
[0031]圖2示出根據(jù)本發(fā)明另一實施例的中央處理器102。
[0032]參照圖2,中央處理器102包括片內(nèi)只讀存儲器(on-die ROM) 201和核心202。其中片內(nèi)只讀存儲器201用于存儲預(yù)設(shè)摘要信息,該預(yù)設(shè)摘要信息不允許修改。核心202用于在計算機系統(tǒng)100開機時使用一摘要算法計算存儲在主機板101中的一驗證指令的一摘要信息,其中該驗證指令用于驗證主機板101的系統(tǒng)初始化指令(例如,B1S指令)的完整性;核心202將計算出的摘要信息與片內(nèi)只讀存儲器201內(nèi)的預(yù)設(shè)摘要信息進行比較以驗證該驗證指令的完整性,如果該摘要信息與該預(yù)設(shè)摘要信息不一致,則執(zhí)行關(guān)機指令,以保證計算機系統(tǒng)100的安全性。在一實施例中,片內(nèi)只讀存儲器201可以是中央處理器102中的片內(nèi)(On-die)R0M,其內(nèi)容在中央處理器102的芯片制造過程中預(yù)先設(shè)定而且無法被更改,從而保證其存儲的預(yù)設(shè)摘要信息不會被篡改,因此可作為整個計算機系統(tǒng)100的信任根。本發(fā)明一方面以中央處理器102內(nèi)部的片內(nèi)只讀存儲器201作為系統(tǒng)信任根,大大提高了系統(tǒng)的安全性;另一方面,由于在片內(nèi)只讀存儲器201中僅存儲具有較短尺寸的驗證指令的預(yù)設(shè)摘要信息而不是完整的驗證指令,可以節(jié)省有限的存儲空間。根據(jù)本發(fā)明的實施例,在片內(nèi)只讀存儲器201中僅需預(yù)先存儲預(yù)設(shè)摘要信息、根公鑰和摘要指令,而摘要指令所占用的存儲空間也遠小于完整的驗證指令,但本發(fā)明不限于此,在另一實施例中,摘要算法可以用包括在核心202中的硬件電路實現(xiàn),該情況下,可以不在片內(nèi)只讀存儲器201中存儲摘要指令,從而進一步節(jié)省存儲空間,由于中央處理器102的制造成本隨著片內(nèi)只讀存儲器201容量增大而顯著提高,本發(fā)明可由此大大降低中央處理器102的制造成本。
[0033]圖3示出根據(jù)本發(fā)明另一實施例的圖1的主機板101中的B1S ROM 111。
[0034]參照圖3,在B1S ROM 111中存儲驗證指令和系統(tǒng)初始化指令。在本實施例中,驗證指令與系統(tǒng)初始化指令存儲于同一存儲器中,而在其它實施例中,驗證指令也可存儲在主機板上B1S ROM 111以外的其它存儲空間。在圖3中,系統(tǒng)初始化指令以級聯(lián)的方式包括系統(tǒng)初始化指令1、系統(tǒng)初始化指令2、和系統(tǒng)初始化指令3,但本發(fā)明不限于此。根據(jù)本發(fā)明的實施例,系統(tǒng)初始化指令可以包括任意多個部分或者僅包括一個部分。這里,系統(tǒng)初始化指令的各個部分可以分別對應(yīng)于從高到低的各級廠商、發(fā)行商在主機板中存儲的程序數(shù)據(jù)。
[0035]在計算機系統(tǒng)100開機時,核心202執(zhí)行存儲在片內(nèi)只讀存儲器201中的摘要指令以摘要算法(例如,安全散列算法)計算存儲在B1S ROM 111中或其它存儲器中的驗證指令的摘要信息。以摘要算法采用安全散列算法SHA-1為例,核心202讀取存儲在B1S ROM111中或其它存儲器中的驗證指令的代碼,并對其進行散列(hash)運算以產(chǎn)生20個字節(jié)(byte)的摘要信息,具體過程在此不再贅述。采用不同的散列算法(例如SHA-2,SHA-128或SHA-256等)產(chǎn)生的摘要信息的數(shù)據(jù)量會有所不同。當(dāng)然,采用其它摘要算法也落入本發(fā)明要保護的范圍。
[0036]核心202再將計算得到的摘要信息與存儲在片內(nèi)只讀存儲器201中的預(yù)設(shè)摘要信息進行比較。因為摘要算法是將任意長度的驗證指令代碼作為原文(originator),輸出固定長度的摘要信息,作為原文的驗證指令代碼不同,摘要信
當(dāng)前第1頁1 2 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1