TWI605357B - 電腦系統以及電腦系統操作方法 - Google Patents

電腦系統以及電腦系統操作方法 Download PDF

Info

Publication number
TWI605357B
TWI605357B TW105138803A TW105138803A TWI605357B TW I605357 B TWI605357 B TW I605357B TW 105138803 A TW105138803 A TW 105138803A TW 105138803 A TW105138803 A TW 105138803A TW I605357 B TWI605357 B TW I605357B
Authority
TW
Taiwan
Prior art keywords
authentication
computer system
authentication code
server
startup
Prior art date
Application number
TW105138803A
Other languages
English (en)
Other versions
TW201721496A (zh
Inventor
李凱
沈昀
Original Assignee
上海兆芯集成電路有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 上海兆芯集成電路有限公司 filed Critical 上海兆芯集成電路有限公司
Publication of TW201721496A publication Critical patent/TW201721496A/zh
Application granted granted Critical
Publication of TWI605357B publication Critical patent/TWI605357B/zh

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/31User authentication
    • G06F21/33User authentication using certificates
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/51Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems at application loading time, e.g. accepting, rejecting, starting or inhibiting executable software based on integrity or source reliability
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/57Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
    • G06F21/572Secure firmware programming, e.g. of basic input output system [BIOS]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/57Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
    • G06F21/577Assessing vulnerabilities and evaluating computer system security
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/4401Bootstrapping
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/30Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/03Indexing scheme relating to G06F21/50, monitoring users, programs or devices to maintain the integrity of platforms
    • G06F2221/034Test or assess a computer or a system

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computing Systems (AREA)
  • Stored Programmes (AREA)

Description

電腦系統以及電腦系統操作方法
本案係關於電腦系統上組件之程式碼更新。
電腦系統上許多組件都有程式碼更新需求;包括對中央處理單元(CPU)的微碼(microcode)打補丁、晶片組(chipset)的控制器韌體更新、基本輸入輸出系統(BIOS)更新…等。
如何安全升級電腦系統上組件的程式碼而防止惡意攻擊為本技術領域重要課題。
根據本案一種實施方式實現的一電腦系統包括一中央處理單元以及一非揮發式記憶體。該中央處理單元根據微碼運作,且包括一認證程式碼執行區(authenticated code execution area,縮寫ACEA)。該非揮發式記憶體儲存一啟動用認證程式碼模組(startup authenticated code module,縮寫startup ACM)。該中央處理單元在上電後執行微碼(microcode),以自該非揮發式記憶體將該啟動用認證程式碼模組載入該認證程式碼執行區、且進行認證。該中央處理單元執行通過認證的該啟動用認證程式碼模組,以連線一伺服器,並 自該伺服器取得該電腦系統上一組件的程式碼更新檔。
根據本案令一種實施方式實現的一種電腦系統操作方法,包括:在一電腦系統的一中央處理單元內提供一認證程式碼執行區,該中央處理單元係根據微碼運作;以一非揮發式記憶體儲存一啟動用認證程式碼模組;執行上述微碼,以自該非揮發式記憶體將該啟動用認證程式碼模組載入該認證程式碼執行區並進行認證;以及執行通過認證的該啟動用認證程式碼模組,以連線一伺服器,並自該伺服器取得該電腦系統上一組件的程式碼更新檔。
由於中央處理單元內的認證程式碼執行區不能被中央處理單元以外的設備訪問,故得以確保執行啟動用認證程式碼模組Startup_ACM的安全性。較之先前技術經由易被攻擊之基本輸入輸出系統(BIOS)或者經由更易被攻擊之操作系統(Operating System,OS)獲取該程式碼更新檔,本發明技術大大提高電腦系統組件之程式碼更新。
下文特舉實施例,並配合所附圖示,詳細說明本發明內容。
100‧‧‧電腦系統
102‧‧‧中央處理單元
104‧‧‧非揮發式記憶體
106‧‧‧晶片組
108‧‧‧認證程式碼執行區
110‧‧‧暫存器
112‧‧‧Startup_ACM之密鑰認證資訊
114‧‧‧微碼
116‧‧‧伺服器
118‧‧‧網路介面控制器
120,120’‧‧‧程式碼更新檔
122‧‧‧系統證書
123‧‧‧雙向認證資訊
124‧‧‧揮發式記憶體
126‧‧‧硬件組態保護模組
128‧‧‧基本輸入輸出系統程式碼
130‧‧‧硬件基礎核心度量根微碼
132‧‧‧對應Startup_ACM的一擷取指令
S202…S214‧‧‧步驟
Startup_ACM‧‧‧啟動用認證程式碼模組
第1圖圖解根據本案一種實施方式實現的一電腦系統100;且第2圖為流程圖,圖解根據本案一種實施方式所實現的一種電腦系統操作方法,特別有關於電腦系統之開機程序。
以下敘述列舉本發明的多種實施例。以下敘述介紹本發明的基本概念,且並非意圖限制本發明內容。實際發明範圍應依照申請專利範圍界定之。
第1圖圖解根據本案一種實施方式實現的一電腦系統100。電腦系統100包括一中央處理單元102以及一非揮發式記憶體104。該中央處理單元102根據微碼(microcode)114運作,且包括一認證程式碼執行區(authenticated code execution area,縮寫ACEA)108。該非揮發式記憶體104儲存一啟動用認證程式碼模組(startup authenticated code module,縮寫Startup ACM)Startup_ACM。該中央處理單元102在上電後執行微碼114,以自該非揮發式記憶體104將該啟動用認證程式碼模組Startup_ACM載入該認證程式碼執行區108進行認證。該中央處理單元102經由在該認證程式碼執行區108上執行通過認證的啟動用認證程式碼模組Startup_ACM,以連線一伺服器116(如,透過一網路介面控制器118)。該伺服器116提供電腦系統100上一組件的程式碼更新檔120一例如,該中央處理單元102的微碼114之更新檔(microcode patch)、晶片組106的控制器韌體(chipset controller firmware)之更新檔或者基本輸入輸出系統(basic input and output system,簡稱BIOS)的更新檔。伺服器116提供的該程式碼更新檔可載至一揮發式記憶體124如編號120’。
在一種實施方式中,電腦系統100更包括晶片組106,該晶片組106包括一暫存器110,對應該啟動用認證程式碼模組Startup_ACM儲存一密鑰認證資訊112,舉例而言,如果 該中央處理單元102對載入的啟動用認證程式碼模組Startup_ACM進行認證時採用的是非對稱加密算法(asymmetric encryption algorithm),則該密鑰認證資訊舉例而言為加解密所用之公共密鑰(public key)的哈希摘要值(hash value);而自該非揮發式記憶體104載入的啟動用認證程式碼模組Startup_ACM自帶一加密簽名(cryptographic signature),其包括加解密所用之公共密鑰(public key)之資訊。該中央處理單元102執行微碼114對載入的啟動用認證程式碼模組Startup_ACM進行認證時,先從載入的啟動用認證程式碼模組Startup_ACM取出簽名中的公共密鑰,計算其哈希摘要值,並與暫存器110中預存的密鑰認證資訊112中的哈希摘要值比對,若一致,則認證通過,繼續後續的連線伺服器116以取得程式碼更新檔120的流程。
在本發明中,中央處理單元102除了對啟動用認證程式碼模組Startup_ACM通過前述的認證方式進行驗證以保證其安全性以外,中央處理單元102會在其本身內部的認證程式碼執行區108中執行通過驗證的啟動用認證程式碼模組Startup_ACM,該認證程式碼執行區108不能被中央處理單元102以外的設備訪問以進一步確保執行啟動用認證程式碼模組Startup_ACM的安全性。較之先前技術經由易被攻擊之基本輸入輸出系統(BIOS)128或者經由更易被攻擊之操作系統(Operating System,OS)獲取該程式碼更新檔120,安全性大大提高。
在一種實施方式中,中央處理單元102除了確保啟 動用認證程式碼模組Startup_ACM本身及其執行環境的安全性以外,更藉由執行啟動用認證程式碼模組Startup_ACM與該伺服器116在雙向認證下相連。如此一來,伺服器116提供的程式碼更新檔120可性度更高。一種實施方式中,該啟動用認證程式碼模組Startup_ACM更儲存與伺服器116進行雙向認證的雙向認證資訊123。中央處理單元102執行該啟動用認證程式碼模組Startup_ACM以連線該伺服器116時,更提供該伺服器116該雙向認證資訊123,以與伺服器116進行雙向認證。一種實施方式中,在認證程式碼執行區108中執行的啟動用認證程式碼模組Startup_ACM係經由網路介面控制器118與伺服器116通訊。
一種實施方式中,該啟動用認證程式碼模組Startup_ACM更儲存系統證書122。該中央處理單元102在本身內部的認證程式碼執行區108安全地執行該啟動用認證程式碼模組Startup_ACM以連線該伺服器116時,更提供該伺服器116上述系統證書122,使該伺服器116提供的上述程式碼更新檔120符合該電腦系統上100的該組件。上述系統證書122可包括該組件之型號、或該組件之序列號等資訊。
電腦系統100的揮發式記憶體(如,動態隨機存取記憶體DRAM)124暫存取自該伺服器116的程式碼更新檔120’。如圖所示實施方式,該晶片組106更包括一硬件組態保護模組(hardware configuration protect module)126,用以對該揮發式記憶體124上暫存的上述程式碼更新檔120’進行保護使其僅能被中央處理單元102訪問和擷取。中央處理單元102再自該揮發式記憶體124上擷取程式碼更新檔120’進行認證,以通過認 證的程式碼更新檔更新對應組件之程式碼。舉例而言,該組件為中央處理單元102,該程式碼更新檔120’為微碼114之更新檔,則中央處理單元102會將程式碼更新檔120’自該揮發式記憶體124擷取至中央處理單元102內部進行認證,以通過認證的程式碼更新檔120’更新微碼114。在一種實施方式中,程式碼更新檔120’的認證資訊也可以存儲在暫存器110中,程式碼更新檔120’認證操作也可以在受保護的認證碼程式區108中進行。
如圖所示,啟動用認證程式碼模組Startup_ACM同基本輸入輸出系統(BIOS)程式碼128載於非揮發式記憶體104上。該中央處理單元102係在經由啟動用認證程式碼模組Startup_ACM對基本輸入輸出系統之進行認證(BIOS phase 1 to phase 3)之前於自身內部安全環境(如認證程式碼執行區108)執行該啟動用認證程式碼模組Startup_ACM與伺服器116連線獲得該程式碼更新檔120。本發明在電腦系統100上電開機過程中,在基本輸入輸出系統128被認證和載入之前,藉由執行啟動用認證程式碼模組Startup_ACM獲得該程式碼更新檔120,較之先前技術需要在更新基本輸入輸出系統128的同時甚至進入操作系統(operating system,OS)之後才能獲得該程式碼更新檔120,更加及時。
在一種實施方式中,該中央處理單元102在上電後係執行上述微碼114中的一硬件基礎核心度量根微碼(H-CRTM)130,以執行對應該啟動用認證程式碼模組Startup_ACM的一擷取指令(GETSEC leaf instruction)132,以自 該非揮發式記憶體104將該啟動用認證程式碼模組Startup_ACM載入該認證程式碼執行區108,並執行之。
此段落特別說明中央處理單元102的微碼114。微碼114乃中央處理器102內部的硬體接線韌體(hardwired firmware),用以執行多組微操作(micro-operations),以組合成組合語言指令與中央處理器內部功能。硬件基礎核心度量根微碼(H-CRTM)130係中央處理單元102在上電後、在基本輸入輸出系統之認證(BIOS phase 1 to phase 3)前會執行的微碼。
此段落說明上述啟動用認證程式碼模組Startup_ACM,屬於認證程式碼模組(authenticated code modules,簡稱ACM)的一種。認證程式碼模組(ACM)由中央處理器102實行,操作如同微碼114之擴充(extensions)。經硬件基礎核心度量根微碼130認證通过的認證程式碼模組(ACM)方能在中央處理單元102規劃的安全空間-如,認證程式碼執行區(ACEA)108-執行。認證程式碼執行區(ACEA)108如此中央處理單元102內部記憶體設計將使得認證程式碼模組(ACM)之運行受保護,不僅避開安全性低的直接記憶體存取(DMA)、更避免認證程式碼模組(ACM)之程式碼以及資料外洩。暫存器110內儲存的密鑰認證資訊112即是用來比對載入認證程式碼執行區(ACEA)108的認證程式碼模組Startup_ACM是否握有正確密鑰。認證程式碼模組Startup_ACM是在中央處理單元102上電時執行微碼114(如,硬件基礎核心度量根微碼(H-CRTM)130)呼叫擷取指令(GETSEC leaf instruction)132獲得。認證程式碼模組Startup_ACM之執行將啟動靜態信任度量核心(static root of trust measure,簡寫SRTM),包括量測基本輸入輸出系統開機區塊(BIOS boot block)。本案係在高安全性的認證程式碼模組Startup_ACM執行過程中與伺服器116建立連結,以如此高安全性的架構自伺服器116獲得電腦系統100上組件的程式碼更新檔。相較之,將電腦系統100上組件的程式碼更新檔與基本輸入輸出(BIOS)/統一可延伸韌體介面(UEFI)打包在一起做更新的傳統技術較為被動;傳統技術將承擔組件程式碼沒有即時更新的風險。另有一種傳統技術是在操作系統(OS)下進行電腦系統組件的程式碼更新,其安全性依賴操作系統,亦有其風險。英特爾發行的信任執行平台(TXT platform)可應用來實現本案技術內容。
第2圖為流程圖,圖解根據本案一種實施方式所實現的一種電腦系統操作方法,特別有關於電腦系統之開機程序。以下對應第1圖說明之。步驟S202執行微碼114,例如微碼114之硬件基礎核心度量根微碼(H-CRTM)130,以自非揮發式記憶體104載入中央處理單元102內部的認證程式碼執行區108並認證(例如基於密鑰認證資訊112)該啟動用認證程式碼模組Startup_ACM。步驟S204判斷載入該認證程式碼執行區108的該啟動用認證程式碼模組之認證是否通過。如果該啟動用認證程式碼模組Startup_ACM認證通過,則執行步驟S206,執行通過認證的該啟動用認證程式碼模組Startup_ACM,以連線伺服器116,基於雙向認證(例如,基於系統證書128及雙向認證資訊123)自該伺服器116取得該電腦系統100上一組件的程式碼更新檔120。步驟S208將取自該伺服器116的程式碼更新檔120暫 存於揮發式記憶體124(呈編號120’)。步驟S210,程式碼更新檔120’將在揮發式記憶體124內被中央處理單元102擷取並驗證,如前所述,揮發式記憶體124由硬體組態保護模組126控制,使其不能被中央處理單元102之外的設備修改,在這種被保護的狀態下執行上述擷取和驗證。步驟S211,以通過認證的程式碼更新檔120’更新對應組件之程式碼(例如微碼114)。特別注意是,以上程式更新碼之下載是安排在步驟S212基本輸入輸出系統128之認證之前。步驟S214進入基本輸入輸出系統128之運作。倘若步驟S204該啟動用認證程式碼模組Startup_ACM不通過認證,開機程序係略過步驟S206…S214而結束,使得未經授權的啟動用認證程式碼模組Startup_ACM不會進行後續步驟S206之與伺服器116連線取得程式碼更新檔120以及步驟S212認證BIOS128的操作,以防止惡意攻擊,在一種實施方式中,系統會報錯以通知用戶。
雖然本發明已以較佳實施例揭露如上,然其並非用以限定本發明,任何熟悉此項技藝者,在不脫離本發明之精神和範圍內,當可做些許更動與潤飾,因此本發明之保護範圍當視後附之申請專利範圍所界定者為準。
100‧‧‧電腦系統
102‧‧‧中央處理單元
104‧‧‧非揮發式記憶體
106‧‧‧晶片組
108‧‧‧認證程式碼執行區
110‧‧‧暫存器
112‧‧‧Startup_ACM之密鑰認證資訊
114‧‧‧微碼
116‧‧‧伺服器
118‧‧‧網路介面控制器
120、120’‧‧‧程式碼更新檔
122‧‧‧系統證書
123‧‧‧雙向認證資訊
124‧‧‧揮發式記憶體
126‧‧‧硬件組態保護模組
128‧‧‧基本輸入輸出系統程式碼
130‧‧‧硬件基礎核心度量根微碼
132‧‧‧對應Startup_ACM的一擷取指令
Startup_ACM‧‧‧啟動用認證程式碼模組

Claims (23)

  1. 一種電腦系統,包括:一中央處理單元,根據微碼運作,且包括一認證程式碼執行區;以及一非揮發式記憶體,儲存一啟動用認證程式碼模組;其中:該中央處理單元在上電後執行上述微碼,以自該非揮發式記憶體將該啟動用認證程式碼模組載入該認證程式碼執行區並進行認證;且該中央處理單元更執行通過認證的該啟動用認證程式碼模組,以連線一伺服器,並自該伺服器取得該電腦系統上一組件的程式碼更新檔。
  2. 如申請專利範圍第1項所述之電腦系統,更包括:一晶片組,包括一暫存器儲存該啟動用認證程式碼模組的密鑰認證資訊,其中該中央處理單元根據上述密鑰認證資訊對該啟動用認證程式碼模組進行認證。
  3. 如申請專利範圍第1項所述之電腦系統,其中:該中央處理單元執行該啟動用認證程式碼模組與該伺服器在雙向認證下相連。
  4. 如申請專利範圍第1項所述之電腦系統,其中:該啟動用認證程式碼模組更儲存系統證書;且該中央處理單元執行通過認證的該啟動用認證程式碼模組連線該伺服器時,更提供該伺服器上述系統證書,使該伺服 器提供的上述程式碼更新檔符合該電腦系統上的該組件。
  5. 如申請專利範圍第4項所述之電腦系統,其中:上述系統證書包括該組件之型號、或該組件之序列號。
  6. 如申請專利範圍第1項所述之電腦系統,其中:該啟動用認證程式碼模組更儲存與該伺服器進行雙向認證的認證資訊。
  7. 如申請專利範圍第1項所述之電腦系統,更包括:一揮發式記憶體,暫存取自該伺服器的上述程式碼更新檔。
  8. 如申請專利範圍第7項所述之電腦系統,其中更包括:一硬件組態保護模組,用以保證該揮發式記憶體只能被該中央處理單元訪問以擷取上述程式碼更新檔。
  9. 如申請專利範圍第1項所述之電腦系統,其中:該中央處理單元對上述程式碼更新檔進行認證,以通過認證的上述程式碼更新檔更新該組件之程式碼。
  10. 如申請專利範圍第1項所述之電腦系統,其中:該中央處理單元係在進行一基本輸入輸出系統之認證前執行該啟動用認證程式碼模組。
  11. 如申請專利範圍第1項所述之電腦系統,其中:該中央處理單元在上電後係執行上述微碼中的一硬件基礎核心度量根微碼,以執行對應該啟動用認證程式碼模組的一擷取指令,以自該非揮發式記憶體將該啟動用認證程式碼模組載入該認證程式碼執行區並進行認證。
  12. 如申請專利範圍第1項所述之電腦系統,其中:上述組件為該中央處理單元,上述程式碼更新檔為上述微碼 之更新檔。
  13. 一種電腦系統操作方法,包括:在一電腦系統的一中央處理單元內提供一認證程式碼執行區,該中央處理單元係根據微碼運作;以一非揮發式記憶體儲存一啟動用認證程式碼模組;執行上述微碼,以自該非揮發式記憶體將該啟動用認證程式碼模組載入該認證程式碼執行區並進行認證;以及執行通過認證的該啟動用認證程式碼模組,以連線一伺服器,並自該伺服器取得該電腦系統上一組件的程式碼更新檔。
  14. 如申請專利範圍第13項所述之電腦系統操作方法,更包括:以一晶片組的一暫存器儲存該啟動用認證程式碼模組的密鑰認證資訊;以及根據上述密鑰認證資訊對該啟動用認證程式碼模組進行認證。
  15. 如申請專利範圍第13項所述之電腦系統操作方法,其中所述執行通過認證的該啟動用認證程式碼模組,以連線所述伺服器的步驟更包括:執行該啟動用認證程式碼模組與該伺服器在雙向認證下相連。
  16. 如申請專利範圍第13項所述之電腦系統操作方法,其中該啟動用認證程式碼模組更儲存系統證書,其中執行通過認證的該啟動用認證程式碼模組以連線該伺服器的步驟更包括:提供該伺服器上述系統證書,使該伺服器提供的上述程式碼 更新檔符合該電腦系統上的該組件。
  17. 如申請專利範圍第16項所述之電腦系統操作方法,其中:上述系統證書包括該組件之型號、或該組件之序列號。
  18. 如申請專利範圍第13項所述之電腦系統操作方法,其中:該啟動用認證程式碼模組更儲存與該伺服器進行雙向認證的認證資訊。
  19. 如申請專利範圍第13項所述之電腦系統操作方法,更包括:對上述程式碼更新檔進行認證,以通過認證的上述程式碼更新檔更新該組件之程式碼。
  20. 如申請專利範圍第19項所述之電腦系統操作方法,其中:以一晶片組的一暫存器儲存上述程式碼更新檔組的密鑰資訊;以及根據上述密鑰認證資訊對上述程式碼更新檔組進行認證。
  21. 如申請專利範圍第13項所述之電腦系統操作方法,其中:在進行一基本輸入輸出系統之認證前執行該啟動用認證程式碼模組。
  22. 如申請專利範圍第13項所述之電腦系統操作方法,其中上述執行上述微碼,以自該非揮發式記憶體將該啟動用認證程式碼模組載入該認證程式碼執行區並進行認證的步驟更包括:在上電後係執行上述微碼中的一硬件基礎核心度量根微碼,以執行對應該啟動用認證程式碼模組的一擷取指令,以自該非揮發式記憶體將該啟動用認證程式碼模組載入該認證程式碼執行區並進行認證。
  23. 如申請專利範圍第13項所述之電腦系統操作方法,其中:該認證程式碼執行區只能被該中央處理單元訪問,以確保上述執行通過認證的該啟動用認證程式碼模組以連線該伺服器之步驟的安全性。
TW105138803A 2015-12-04 2016-11-25 電腦系統以及電腦系統操作方法 TWI605357B (zh)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201510885117.7A CN105468964B (zh) 2015-12-04 2015-12-04 计算机***以及计算机***操作方法

Publications (2)

Publication Number Publication Date
TW201721496A TW201721496A (zh) 2017-06-16
TWI605357B true TWI605357B (zh) 2017-11-11

Family

ID=55606651

Family Applications (1)

Application Number Title Priority Date Filing Date
TW105138803A TWI605357B (zh) 2015-12-04 2016-11-25 電腦系統以及電腦系統操作方法

Country Status (5)

Country Link
US (1) US10095855B2 (zh)
EP (1) EP3176723B1 (zh)
KR (1) KR101939442B1 (zh)
CN (1) CN105468964B (zh)
TW (1) TWI605357B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI710952B (zh) * 2018-08-28 2020-11-21 緯創資通股份有限公司 韌體更新方法及電腦系統

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11436317B2 (en) * 2017-02-21 2022-09-06 Raptor Engineering LLC Systems and methods for assuring integrity of operating system and software components at runtime
US11741232B2 (en) 2021-02-01 2023-08-29 Mellanox Technologies, Ltd. Secure in-service firmware update

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7213152B1 (en) * 2000-02-14 2007-05-01 Intel Corporation Modular bios update mechanism
JP2002169700A (ja) * 2000-11-30 2002-06-14 Mitsubishi Electric Corp 内蔵プログラム更新メモリ
JP2004259077A (ja) 2003-02-27 2004-09-16 Hitachi Ltd 組込み機器プログラム更新方法
WO2008059480A1 (en) * 2006-11-16 2008-05-22 Sandisk Il Ltd. Systems and methiods for protection of data integrity of updatable data against unauthorized modification
US8209542B2 (en) * 2006-12-29 2012-06-26 Intel Corporation Methods and apparatus for authenticating components of processing systems
US8522322B2 (en) * 2010-09-22 2013-08-27 Intel Corporation Platform firmware armoring technology
US8812828B2 (en) * 2010-11-16 2014-08-19 Intel Corporation Methods and apparatuses for recovering usage of trusted platform module
JP5932837B2 (ja) 2011-01-19 2016-06-08 インターナショナル・ビジネス・マシーンズ・コーポレーションInternational Business Machines Corporation コードを更新および認証するための方法およびシステム、プログラムの完全性を試験する方法およびシステム
US9596082B2 (en) * 2011-12-15 2017-03-14 Intel Corporation Secure debug trace messages for production authenticated code modules
US9666241B2 (en) * 2012-01-19 2017-05-30 Quixant Plc Firmware protection and validation
US9189225B2 (en) * 2012-10-16 2015-11-17 Imprivata, Inc. Secure, non-disruptive firmware updating
CN103166952B (zh) * 2012-11-16 2016-04-27 太原科技大学 一种嵌入式车载数据采集终端
US20150127930A1 (en) * 2013-11-06 2015-05-07 Seagate Technology Llc Authenticated device initialization
CN105706099B (zh) * 2013-11-06 2018-11-30 三菱电机株式会社 软件更新装置
JP2015102889A (ja) * 2013-11-21 2015-06-04 レノボ・シンガポール・プライベート・リミテッド ファームウェアの更新方法、電子機器、コンピュータおよびコンピュータ・プログラム
CN104899524B (zh) * 2015-05-25 2018-11-27 上海兆芯集成电路有限公司 中央处理器和验证主机板数据的方法
US9626181B2 (en) * 2015-07-06 2017-04-18 Dell Products L.P. Systems and methods to securely inject binary images and code into firmware

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI710952B (zh) * 2018-08-28 2020-11-21 緯創資通股份有限公司 韌體更新方法及電腦系統

Also Published As

Publication number Publication date
EP3176723A1 (en) 2017-06-07
US10095855B2 (en) 2018-10-09
CN105468964A (zh) 2016-04-06
US20170161483A1 (en) 2017-06-08
CN105468964B (zh) 2018-09-14
KR101939442B1 (ko) 2019-01-16
EP3176723B1 (en) 2018-03-28
KR20170066231A (ko) 2017-06-14
TW201721496A (zh) 2017-06-16

Similar Documents

Publication Publication Date Title
CN109669734B (zh) 用于启动设备的方法和装置
US8914627B2 (en) Method for generating a secured boot image including an update boot loader for a secured update of the version information
US7962738B2 (en) Hypervisor runtime integrity support
JP4433401B2 (ja) 情報処理システム、プログラム、及び情報処理方法
JP5802337B2 (ja) アウトオブバンドリモート認証
KR101359841B1 (ko) 신뢰성 있는 부트 최적화를 위한 방법 및 장치
US8789037B2 (en) Compatible trust in a computing device
US8826405B2 (en) Trusting an unverified code image in a computing device
Löhr et al. Patterns for secure boot and secure storage in computer systems
US20080168275A1 (en) Securely Recovering a Computing Device
US20060161790A1 (en) Systems and methods for controlling access to data on a computer with a secure boot process
JP6735872B2 (ja) コンピュータシステム及びコンピュータシステムを初期化する方法
WO2017133559A1 (zh) 安全启动方法及装置
US8522003B2 (en) Software loading method and apparatus to a computing platform
TWI687840B (zh) 記憶體子系統、安全客戶端裝置與認證方法
CN104751063A (zh) 一种基于实模式技术的操作***可信引导方法
TWI605357B (zh) 電腦系統以及電腦系統操作方法
CN105335659B (zh) 计算机***以及计算机***操作方法
JP2019133220A (ja) 完全性検証装置、完全性検証システム、完全性検証方法、及び、完全性検証プログラム