TW201937366A - 具開機之可信驗證與容錯移轉之計算機系統及方法 - Google Patents

具開機之可信驗證與容錯移轉之計算機系統及方法 Download PDF

Info

Publication number
TW201937366A
TW201937366A TW107106581A TW107106581A TW201937366A TW 201937366 A TW201937366 A TW 201937366A TW 107106581 A TW107106581 A TW 107106581A TW 107106581 A TW107106581 A TW 107106581A TW 201937366 A TW201937366 A TW 201937366A
Authority
TW
Taiwan
Prior art keywords
bmc
bios
firmware
programmable logic
data
Prior art date
Application number
TW107106581A
Other languages
English (en)
Other versions
TWI665604B (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 其陽科技股份有限公司
Priority to TW107106581A priority Critical patent/TWI665604B/zh
Priority to CN201810336500.0A priority patent/CN110197070B/zh
Application granted granted Critical
Publication of TWI665604B publication Critical patent/TWI665604B/zh
Publication of TW201937366A publication Critical patent/TW201937366A/zh

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operations
    • G06F11/1446Point-in-time backing up or restoration of persistent data
    • G06F11/1458Management of the backup or restore process
    • G06F11/1469Backup restoration techniques
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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/575Secure boot
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Computer Security & Cryptography (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Quality & Reliability (AREA)
  • Stored Programmes (AREA)

Abstract

本發明揭露一種具開機之可信驗證與容錯移轉之計算機系統及方法。該方法包括:提供一包括基板管理控制器(BMC)、BMC韌體儲存裝置、BIOS韌體儲存裝置、BMC備份韌體儲存裝置、BIOS備份韌體儲存裝置與可程式邏輯閘裝置之計算機系統;當計算機系統進行開機時,由可程式邏輯閘裝置對BMC韌體資料與BIOS韌體資料執行可信驗證;以及當BMC韌體資料或BIOS韌體資料未通過可信驗證時,由可程式邏輯閘裝置將保證可信之BMC備份韌體資料或BIOS備份韌體資料對應覆蓋BMC韌體資料或BIOS韌體資料以達到容錯移轉。

Description

具開機之可信驗證與容錯移轉之計算機系統及方法
本發明係關於一種計算機系統,特別是指一種具開機之可信驗證與容錯移轉之計算機系統及方法。
在現有技術之伺服器、個人電腦(PC)、筆記型電腦(NB)、或其他手持裝置(如智慧型手機)等計算機系統中,僅伺服器之內部有TPM(Trusted Platform Module;可信平台模組)卡能單純地驗證作業系統(Operating System;OS)之儲存裝置是否可信而沒有被變更過,更遑論個人電腦(PC)、筆記型電腦(NB)、或其他手持裝置是無驗證裝置的。
以伺服器而言,伺服器之基板管理控制器(Baseboard Management Controller;BMC)與基本輸入輸出系統(Basic Input/Output System;BIOS)通常無可信驗證與容錯移轉機制,一旦伺服器開機至作業系統(OS)之前的韌體有被植入後門或被竄改過,TPM卡並無法偵測出來。
因此,現有技術實缺乏一種對計算機系統之開機程序 提供可信驗證與容錯移轉之保護機制。所以,如何解決上述現有技術之缺點,實已成為本領域技術人員之一大課題。
本發明提供一種具開機之可信驗證與容錯移轉之計算機系統及方法,其能對計算機系統之開機程序提供可信驗證與容錯移轉之保護機制。
本發明中具開機之可信驗證與容錯移轉之計算機系統包括:一基板管理控制器(BMC);一BMC韌體儲存裝置,其儲存有BMC韌體資料;一BIOS(基本輸入輸出系統)韌體儲存裝置,其儲存有BIOS韌體資料;一BMC備份韌體儲存裝置,其儲存有無法被修改及保證可信之BMC備份韌體資料;一BIOS備份韌體儲存裝置,其儲存有無法被修改及保證可信之BIOS備份韌體資料;以及一可程式邏輯閘裝置,其將基板管理控制器物理隔離BMC韌體儲存裝置、BIOS韌體儲存裝置、BMC備份韌體儲存裝置與BIOS備份韌體儲存裝置,其中,當計算機系統進行開機時,由可程式邏輯閘裝置對BMC韌體儲存裝置之BMC韌體資料與BIOS韌體儲存裝置之BIOS韌體資料執行可信驗證,並在BMC韌體資料或BIOS韌體資料未通過可信驗證時,由可程式邏輯閘裝置將無法被修改及保證可信之BMC備份韌體儲存裝置之BMC備份韌體資料或BIOS備份韌體儲存裝置之BIOS備份韌體資料對應覆蓋未通過可信驗證之BMC韌體資料或BIOS韌體資料以達到容錯移轉。
本發明中具開機之可信驗證與容錯移轉之方法包括: 提供一包括基板管理控制器(BMC)、BMC韌體儲存裝置、BIOS(基本輸入輸出系統)韌體儲存裝置、BMC備份韌體儲存裝置、BIOS備份韌體儲存裝置與可程式邏輯閘裝置之計算機系統,且可程式邏輯閘裝置將基板管理控制器物理隔離BMC韌體儲存裝置、BIOS韌體儲存裝置、BMC備份韌體儲存裝置與BIOS備份韌體儲存裝置;當計算機系統進行開機時,由可程式邏輯閘裝置對BMC韌體儲存裝置之BMC韌體資料與BIOS韌體儲存裝置之BIOS韌體資料執行可信驗證;以及當BMC韌體資料或BIOS韌體資料未通過可信驗證時,由可程式邏輯閘裝置將無法被修改及保證可信之BMC備份韌體儲存裝置之BMC備份韌體資料或BIOS備份韌體儲存裝置之BIOS備份韌體資料對應覆蓋未通過可信驗證之BMC韌體資料或BIOS韌體資料以達到容錯移轉。
為讓本發明之上述特徵和優點能更明顯易懂,下文特舉實施例,並配合所附圖式作詳細說明。在以下描述內容中將部分闡述本發明之額外特徵及優點,且此等特徵及優點將部分自所述描述內容顯而易見,或可藉由對本發明之實踐習得。本發明之特徵及優點借助於在申請專利範圍中特別指出的元件及組合來認識到並達到。應理解,前文一般描述與以下詳細描述兩者均僅為例示性及解釋性的,且不欲約束本發明所主張之範圍。
1‧‧‧計算機系統
10‧‧‧中央處理器模組
20‧‧‧基板管理控制器
30‧‧‧可程式邏輯閘裝置
31‧‧‧資料驗證演算法
40‧‧‧BMC韌體儲存裝置
41‧‧‧BMC韌體資料
50‧‧‧BIOS韌體儲存裝置
51‧‧‧BIOS韌體資料
60‧‧‧BMC備份韌體儲存裝置
61‧‧‧BMC備份韌體資料
70‧‧‧BIOS備份韌體儲存裝置
71‧‧‧BIOS備份韌體資料
B1‧‧‧電源鍵
B2‧‧‧重置鍵
C1至C3‧‧‧控制匯流排
D1至D6‧‧‧資料匯流排
S01至S17‧‧‧步驟
第1圖係繪示本發明中具開機之可信驗證與容錯移轉 之計算機系統之方塊示意圖;以及第2圖係繪示本發明中具開機之可信驗證與容錯移轉之方法之示意流程圖。
以下藉由特定的具體實施形態說明本發明之實施方式,熟悉此技術之人士可由本說明書所揭示之內容輕易地了解本發明之其他優點與功效,亦可藉由其他不同的具體實施形態加以施行或應用。
第1圖係繪示本發明之具開機之可信驗證與容錯移轉之計算機系統1之方塊示意圖。如圖所示,計算機系統1包括一中央處理器模組10、一基板管理控制器(BMC)20、一可程式邏輯閘裝置30、一BMC韌體儲存裝置40、一BIOS(基本輸入輸出系統)韌體儲存裝置50、一BMC備份韌體儲存裝置60與一BIOS備份韌體儲存裝置70。
計算機系統1可應用於伺服器、個人電腦、筆記型電腦、平板電腦或智慧型手機等。中央處理器模組10可包括中央處理器(CPU)與南橋晶片組(Platform Controller Hub;PCH)等。可程式邏輯閘裝置30可為場域可程式閘陣列(Field-Programmable Gate Array,FPGA)、複雜可程式邏輯閘元件(Complex Programmable Logic Device,CPLD)、可程式邏輯閘元件(Programmable Logic Device,PLD)、或通用陣列邏輯(Generic Array Logic,GAL)。但是,本發明並不以此為限。
BMC韌體儲存裝置40儲存有BMC韌體資料41,BIOS 韌體儲存裝置50儲存有BIOS韌體資料51,BMC備份韌體儲存裝置60儲存有無法被修改及保證可信之BMC備份韌體資料61,BIOS備份韌體儲存裝置70儲存有無法被修改及保證可信之BIOS備份韌體資料71。
可程式邏輯閘裝置30在計算機系統1中具有最高之主導權,並可將基板管理控制器20物理隔離BMC韌體儲存裝置40、BIOS韌體儲存裝置50、BMC備份韌體儲存裝置60與BIOS備份韌體儲存裝置70,使基板管理控制器20無法直接讀取或寫入BMC韌體儲存裝置40、BIOS韌體儲存裝置50、BMC備份韌體儲存裝置60或BIOS備份韌體儲存裝置70等之韌體資料,即BMC韌體資料41、BIOS韌體資料51、BMC備份韌體資料61或BIOS備份韌體資料71,以達到物理隔離保護該些韌體資料之效果。
當計算機系統1進行開機時,由可程式邏輯閘裝置30對BMC韌體儲存裝置40之BMC韌體資料41與BIOS韌體儲存裝置50之BIOS韌體資料51執行可信驗證,並在BMC韌體資料41或BIOS韌體資料51未通過可信驗證時,由可程式邏輯閘裝置30將無法被修改及保證可信之BMC備份韌體儲存裝置60之BMC備份韌體資料61或BIOS備份韌體儲存裝置70之BIOS備份韌體資料71對應覆蓋未通過可信驗證之BMC韌體資料41或BIOS韌體資料51以達到容錯移轉。
詳言之,可程式邏輯閘裝置30具有一資料驗證演算法31,以透過資料驗證演算法31對BMC韌體資料41或BIOS 韌體資料51執行可信驗證,使可程式邏輯閘裝置30能安全讀取或寫入BMC韌體資料41或BIOS韌體資料51。
可程式邏輯閘裝置30接上電源時會主動讀取BMC韌體儲存裝置40之BMC韌體資料41,並在BMC韌體資料41通過資料驗證演算法31之可信驗證時,由可程式邏輯閘裝置30控制基板管理控制器20開始運行,使基板管理控制器20藉由可程式邏輯閘裝置30讀取BMC韌體資料41。
中央處理器模組10係連接基板管理控制器20,且可程式邏輯閘裝置30可將中央處理器模組10與基板管理控制器20物理隔離BMC韌體儲存裝置40、BIOS韌體儲存裝置50、BMC備份韌體儲存裝置60與BIOS備份韌體儲存裝置70,使中央處理器模組10與基板管理控制器20皆無法直接讀取或寫入BMC韌體儲存裝置40、BIOS韌體儲存裝置50、BMC備份韌體儲存裝置60或BIOS備份韌體儲存裝置70等之韌體資料,以達到物理隔離保護該些韌體資料之效果。
計算機系統1可包括連接可程式邏輯閘裝置30之電源鍵B1,且可程式邏輯閘裝置30會隨時監控電源鍵B1之訊號。當計算機系統1處於關機狀態時,可程式邏輯閘裝置30接收到電源鍵B1之訊號後才會讀取BIOS韌體儲存裝置50之BIOS韌體資料51,並由可程式邏輯閘裝置30之資料驗證演算法31對BIOS韌體資料51執行可信驗證。可程式邏輯閘裝置30將BIOS韌體資料51之可信驗證之 結果傳送至基板管理控制器20,並在BIOS韌體資料51之可信驗證之結果為通過或可信時,由基板管理控制器20控制中央處理器模組10開始運行,使中央處理器模組10依序透過基板管理控制器20與可程式邏輯閘裝置30讀取BIOS韌體儲存裝置50之BIOS韌體資料51以進行開機。
計算機系統1可包括連接可程式邏輯閘裝置30之重置鍵B2,且可程式邏輯閘裝置30會隨時監控重置鍵B2之訊號。當計算機系統1處於開機狀態時,可程式邏輯閘裝置30接收到重置鍵B2之訊號後將其傳送至基板管理控制器20,並由基板管理控制器20將重置鍵B2之訊號傳送至中央處理器模組10,而中央處理器模組10在完成重置或關機後會送出通知訊號予基板管理控制器20,以供基板管理控制器20控制中央處理器模組10,使中央處理器模組10處於重置狀態而無法運作。
計算機系統1可包括一控制匯流排C1,其分別連接中央處理器模組10與基板管理控制器20,以供基板管理控制器20透過控制匯流排C1控制中央處理器模組10。
計算機系統1可包括連接基板管理控制器20與可程式邏輯閘裝置30之控制匯流排C2及控制匯流排C3,以使可程式邏輯閘裝置30透過控制匯流排C3控制基板管理控制器20,或使基板管理控制器20經由控制匯流排C2傳送重置通知信號予可程式邏輯閘裝置30。
計算機系統1可包括資料匯流排D1及資料匯流排D2,資料匯流排D1分別連接中央處理器模組10與基板管 理控制器20,而資料匯流排D2分別連接基板管理控制器20與可程式邏輯閘裝置30,以進行資料之傳送。
計算機系統1可包括四資料匯流排,即資料匯流排D3、資料匯流排D4、資料匯流排D5及資料匯流排D6,其分別連接可程式邏輯閘裝置30與BMC韌體儲存裝置40、可程式邏輯閘裝置30與BIOS韌體儲存裝置50、可程式邏輯閘裝置30與BMC備份韌體儲存裝置60以及可程式邏輯閘裝置30與BIOS備份韌體儲存裝置70,以供可程式邏輯閘裝置30透過資料匯流排D3、資料匯流排D4、資料匯流排D5及資料匯流排D6分別讀取或寫入BMC韌體資料41、BIOS韌體資料51、BMC備份韌體資料61與BIOS備份韌體資料71。
第2圖係繪示本發明之具開機之可信驗證與容錯移轉之方法之示意流程圖,並參閱第1圖加以說明。
本發明之具開機之可信驗證與容錯移轉之方法係提供一包括基板管理控制器(BMC)20、BMC韌體儲存裝置40、BIOS(基本輸入輸出系統)韌體儲存裝置50、BMC備份韌體儲存裝置60、BIOS備份韌體儲存裝置70與可程式邏輯閘裝置30之計算機系統1,且可程式邏輯閘裝置30將基板管理控制器20物理隔離BMC韌體儲存裝置40、BIOS韌體儲存裝置50、BMC備份韌體儲存裝置60與BIOS備份韌體儲存裝置70。當計算機系統1進行開機時,由可程式邏輯閘裝置30對BMC韌體儲存裝置40之BMC韌體資料41與BIOS韌體儲存裝置50之BIOS韌體資料51執行 可信驗證。而且,當BMC韌體資料41或BIOS韌體資料51未通過可信驗證時,由可程式邏輯閘裝置30將無法被修改及保證可信之BMC備份韌體儲存裝置60之BMC備份韌體資料61或BIOS備份韌體儲存裝置70之BIOS備份韌體資料71對應覆蓋未通過可信驗證之BMC韌體資料41或BIOS韌體資料51以達到容錯移轉。
詳言之,在第2圖之步驟S01中,在計算機系統1接上電源並啟動計算機系統1之電源鍵B1之情況下,基板管理控制器20與可程式邏輯閘裝置30均有電且開始運作。
在第2圖之步驟S02中,由可程式邏輯閘裝置30控制計算機系統1之控制匯流排C3,以使基板管理控制器20處於重置狀態而無法運行。接著,由可程式邏輯閘裝置30經由計算機系統1之資料匯流排D3讀取BMC韌體儲存裝置40之BMC韌體資料41,並透過可程式邏輯閘裝置30之資料驗證演算法31對BMC韌體資料41執行可信驗證。
在第2圖之步驟S03中,由可程式邏輯閘裝置30之資料驗證演算法31判斷BMC韌體資料41是否通過可信驗證。若否,則進入步驟S04;若是,則進入步驟S05。
在第2圖之步驟S04中,若BMC韌體資料41未通過資料驗證演算法31之可信驗證,則可程式邏輯閘裝置30控制計算機系統1之資料匯流排D5以讀取BMC備份韌體儲存裝置60中無法被修改及保證可信之BMC備份韌體資料61,並將無法被修改及保證可信之BMC備份韌體資料 61經由資料匯流排D3寫入覆蓋BMC韌體儲存裝置40中未通過可信驗證之BMC韌體資料41。
在第2圖之步驟S05中,若BMC韌體資料41通過資料驗證演算法31之可信驗證,則可程式邏輯閘裝置30控制計算機系統1之控制匯流排C3以釋放基板管理控制器20而開始運行,使基板管理控制器20依序透過計算機系統1之資料匯流排D2與可程式邏輯閘裝置30讀取BIOS韌體儲存裝置50之BIOS韌體資料51以執行運作。
在第2圖之步驟S06中,判斷計算機系統1是否處於關機狀態。若否,則進入步驟S15;若是,則進入步驟S07。
在第2圖之步驟S07中,若計算機系統1處於關機狀態,則基板管理控制器20控制計算機系統1之控制匯流排C1,以使計算機系統1之中央處理器模組10處於重置狀態而無法運作。
在第2圖之步驟S08中,由可程式邏輯閘裝置30持續監控計算機系統1之電源鍵B1是否被啟動而送出開機訊號。若否,則進入步驟S09;若是,則進入步驟S11。
在第2圖之步驟S09中,由可程式邏輯閘裝置30持續監控基板管理控制器20是否發生內部或非預期之外力重置。若否,則返回步驟S08;若是,則進入步驟S10。
在第2圖之步驟S10中,由基板管理控制器20透過控制匯流排C2傳送重置通知信號予可程式邏輯閘裝置30,並返回步驟S02。
在第2圖之步驟S11中,若可程式邏輯閘裝置30收 到電源鍵B1被啟動而送出之開機訊號,則可程式邏輯閘裝置30透過資料匯流排D4讀取BIOS韌體儲存裝置50之BIOS韌體資料51,並由可程式邏輯閘裝置30之資料驗證演算法31對BIOS韌體資料51執行可信驗證。
在第2圖之步驟S12中,由可程式邏輯閘裝置30之資料驗證演算法31判斷BIOS韌體資料51是否通過可信驗證。若否,則進入步驟S13;若是,則進入步驟S14。
在第2圖之步驟S13中,若BIOS韌體資料51未通過可信驗證,則可程式邏輯閘裝置30控制計算機系統1之資料匯流排D6以讀取BIOS備份韌體儲存裝置70中無法被修改及保證可信之BIOS備份韌體資料71,並將無法被修改及保證可信之BIOS備份韌體資料71經由計算機系統1之資料匯流排D4寫入覆蓋BIOS韌體儲存裝置50中未通過可信驗證之BIOS韌體資料51。
在第2圖之步驟S14中,若BIOS韌體資料51通過可信驗證,則可程式邏輯閘裝置30控制計算機系統1之控制匯流排C3以通知基板管理控制器20有關BIOS韌體資料51已通過可信驗證,使基板管理控制器20控制計算機系統之控制匯流排C1以釋放計算機系統1之中央處理器模組10而開始運作。中央處理器模組10開始運作後會控制資料匯流排D1,並依序透過基板管理控制器20、資料匯流排D2、可程式邏輯閘裝置30、資料匯流排D4去讀取BIOS韌體儲存裝置50之BIOS韌體資料51以執行計算機系統1之開機,此時計算機系統1已安全開機。
在第2圖之步驟S15中,由可程式邏輯閘裝置30持續監控電源鍵B1或重置鍵B2是否被啟動而送出相應之關機訊號或重置訊號。若否,則進入步驟S16;若是,則進入步驟S17。
在第2圖之步驟S16中,由可程式邏輯閘裝置30持續監控基板管理控制器20是否發生內部或非預期之外力重置。若否,則返回步驟S15;若是,則進入步驟S10。
在第2圖之步驟S17中,若可程式邏輯閘裝置30收到電源鍵B1之關機訊號或重置鍵B2之重置訊號,則可程式邏輯閘裝置30會控制該控制匯流排C3通知基板管理控制器20,使基板管理控制器20透過控制匯流排C1傳送關機訊號或重置訊號至中央處理器模組10,而中央處理器模組10會依據關機訊號或重置訊號執行相應之關機或重置動作,並經由資料匯流排D1送出重置訊號予基板管理控制器20,此時返回步驟S07。
由上可知,本發明之具開機之可信驗證與容錯移轉之計算機系統及方法中,當計算機系統進行開機時,經由可程式邏輯閘裝置對BMC韌體資料與BIOS韌體資料執行可信驗證,並在BMC韌體資料或BIOS韌體資料未通過可信驗證時,將無法被修改及保證可信之BMC備份韌體資料或BIOS備份韌體資料寫入覆蓋未通過可信驗證之BMC韌體資料或BIOS韌體資料,藉以達到容錯移轉,據此提供對計算機系統之開機程序具有可信驗證與容錯移轉之保護機制。
同時,本發明之可程式邏輯閘裝置可將基板管理控制器(或中央處理器模組)物理隔離BMC韌體儲存裝置、BIOS韌體儲存裝置、BMC備份韌體儲存裝置與BIOS備份韌體儲存裝置,使基板管理控制器(或中央處理器模組)無法直接讀取或寫入BMC韌體儲存裝置、BIOS韌體儲存裝置、BMC備份韌體儲存裝置或BIOS備份韌體儲存裝置等之韌體資料,以達到物理隔離保護該些韌體資料之效果。
再者,本發明之基板管理控制器(BMC)需透過可程式邏輯閘裝置才能讀取其開機之BMC韌體資料以達成第一層之分層保護,而中央處理器模組需透過基板管理控制器與可程式邏輯閘裝置才能讀取其開機之BIOS韌體資料以達成第二層之分層保護,藉此提供雙層之保護機制。
上述實施形態僅例示性說明本發明之原理、特點及其功效,並非用以限制本發明之可實施範疇,任何熟習此項技藝之人士均可在不違背本發明之精神及範疇下,對上述實施形態進行修飾與改變。任何運用本發明所揭示內容而完成之等效改變及修飾,均仍應為申請專利範圍所涵蓋。因此,本發明之權利保護範圍,應如申請專利範圍所列。

Claims (20)

  1. 一種具開機之可信驗證與容錯移轉之計算機系統,包括:一基板管理控制器(BMC);一BMC韌體儲存裝置,係儲存有BMC韌體資料;一BIOS(基本輸入輸出系統)韌體儲存裝置,係儲存有BIOS韌體資料;一BMC備份韌體儲存裝置,係儲存有無法被修改及保證可信之BMC備份韌體資料;一BIOS備份韌體儲存裝置,係儲存有無法被修改及保證可信之BIOS備份韌體資料;以及一可程式邏輯閘裝置,係將該基板管理控制器物理隔離該BMC韌體儲存裝置、BIOS韌體儲存裝置、BMC備份韌體儲存裝置與BIOS備份韌體儲存裝置,其中,當該計算機系統進行開機時,由該可程式邏輯閘裝置對該BMC韌體儲存裝置之BMC韌體資料與該BIOS韌體儲存裝置之BIOS韌體資料執行可信驗證,並在該BMC韌體資料或該BIOS韌體資料未通過該可信驗證時,由該可程式邏輯閘裝置將無法被修改及保證可信之該BMC備份韌體儲存裝置之BMC備份韌體資料或該BIOS備份韌體儲存裝置之BIOS備份韌體資料對應覆蓋未通過該可信驗證之該BMC韌體資料或該BIOS韌體資料。
  2. 如申請專利範圍第1項所述之計算機系統,其中,該 計算機系統係應用於伺服器、個人電腦、筆記型電腦、平板電腦或智慧型手機,該可程式邏輯閘裝置為場域可程式閘陣列(FPGA)、複雜可程式邏輯閘元件(CPLD)、可程式邏輯閘元件(PLD)、或通用陣列邏輯(GAL)。
  3. 如申請專利範圍第1項所述之計算機系統,其中,該可程式邏輯閘裝置透過資料驗證演算法對該BMC韌體資料或該BIOS韌體資料執行該可信驗證,使該可程式邏輯閘裝置安全讀取或寫入該BMC韌體資料或該BIOS韌體資料。
  4. 如申請專利範圍第3項所述之計算機系統,其中,該可程式邏輯閘裝置接上電源時主動讀取該BMC韌體儲存裝置之BMC韌體資料,並在該BMC韌體資料通過該資料驗證演算法之該可信驗證時,由該可程式邏輯閘裝置控制該基板管理控制器開始運行,使該基板管理控制器讀取該BMC韌體資料。
  5. 如申請專利範圍第1項所述之計算機系統,更包括一連接該基板管理控制器之中央處理器模組,且該可程式邏輯閘裝置將該中央處理器模組與該基板管理控制器物理隔離該BMC韌體儲存裝置、BIOS韌體儲存裝置、BMC備份韌體儲存裝置與BIOS備份韌體儲存裝置。
  6. 如申請專利範圍第5項所述之計算機系統,更包括一連接該可程式邏輯閘裝置之電源鍵,該可程式邏輯閘 裝置隨時監控該電源鍵之訊號,當該計算機系統處於關機狀態時,該可程式邏輯閘裝置接收到該電源鍵之訊號後才讀取該BIOS韌體儲存裝置之BIOS韌體資料,並由該可程式邏輯閘裝置之資料驗證演算法對該BIOS韌體資料執行該可信驗證。
  7. 如申請專利範圍第6項所述之計算機系統,其中,該可程式邏輯閘裝置將該BIOS韌體資料之可信驗證之結果傳送至該基板管理控制器,並在該BIOS韌體資料之可信驗證之結果為通過或可信時,由該基板管理控制器控制該中央處理器模組開始運行,使該中央處理器模組依序透過該基板管理控制器與該可程式邏輯閘裝置讀取該BIOS韌體儲存裝置之BIOS韌體資料以進行開機。
  8. 如申請專利範圍第5項所述之計算機系統,更包括一連接該可程式邏輯閘裝置之重置鍵,該可程式邏輯閘裝置隨時監控該重置鍵之訊號,當該計算機系統處於開機狀態時,該可程式邏輯閘裝置接收到該重置鍵之訊號後將其傳送至該基板管理控制器,並由該基板管理控制器將該重置鍵之訊號傳送至該中央處理器模組,而該中央處理器模組在完成重置或關機後送出通知訊號予該基板管理控制器,以供該基板管理控制器控制該中央處理器模組,使該中央處理器模組處於重置狀態而無法運作。
  9. 如申請專利範圍第1項所述之計算機系統,更包括至 少一控制匯流排,係連接該基板管理控制器與該可程式邏輯閘裝置,以供該可程式邏輯閘裝置透過該控制匯流排控制該基板管理控制器。
  10. 如申請專利範圍第1項所述之計算機系統,更包括四資料匯流排,係分別連接該可程式邏輯閘裝置與該BMC韌體儲存裝置、該可程式邏輯閘裝置與該BIOS韌體儲存裝置、該可程式邏輯閘裝置與該BMC備份韌體儲存裝置以及該可程式邏輯閘裝置與該BIOS備份韌體儲存裝置,以供該可程式邏輯閘裝置透過該四資料匯流排分別讀取或寫入該BMC韌體資料、BIOS韌體資料、BMC備份韌體資料與BIOS備份韌體資料。
  11. 一種具開機之可信驗證與容錯移轉之方法,包括:提供一包括基板管理控制器(BMC)、BMC韌體儲存裝置、BIOS(基本輸入輸出系統)韌體儲存裝置、BMC備份韌體儲存裝置、BIOS備份韌體儲存裝置與可程式邏輯閘裝置之計算機系統,且該可程式邏輯閘裝置將該基板管理控制器物理隔離該BMC韌體儲存裝置、BIOS韌體儲存裝置、BMC備份韌體儲存裝置與BIOS備份韌體儲存裝置;當該計算機系統進行開機時,由該可程式邏輯閘裝置對該BMC韌體儲存裝置之BMC韌體資料與該BIOS韌體儲存裝置之BIOS韌體資料執行可信驗證;以及當該BMC韌體資料或該BIOS韌體資料未通過該 可信驗證時,由該可程式邏輯閘裝置將無法被修改及保證可信之該BMC備份韌體儲存裝置之BMC備份韌體資料或該BIOS備份韌體儲存裝置之BIOS備份韌體資料對應覆蓋未通過該可信驗證之該BMC韌體資料或該BIOS韌體資料。
  12. 如申請專利範圍第11項所述之方法,更包括當該計算機系統接上電源且啟動該計算機系統之電源鍵時,該可程式邏輯閘裝置控制該計算機系統之一控制匯流排以使該基板管理控制器處於重置狀態而無法運行。
  13. 如申請專利範圍第11項所述之方法,更包括由該可程式邏輯閘裝置經由該計算機系統之一資料匯流排讀取該BMC韌體儲存裝置之BMC韌體資料,以透過該可程式邏輯閘裝置之資料驗證演算法對該BMC韌體資料執行該可信驗證。
  14. 如申請專利範圍第13項所述之方法,其中,若該BMC韌體資料未通過該可信驗證,該可程式邏輯閘裝置控制該計算機系統之另一資料匯流排以讀取該BMC備份韌體儲存裝置之BMC備份韌體資料,並將BMC備份韌體資料經由該資料匯流排寫入覆蓋該BMC韌體資料。
  15. 如申請專利範圍第13項所述之方法,其中,若該BMC韌體資料通過該可信驗證,該可程式邏輯閘裝置控制該計算機系統之控制匯流排以釋放該基板管理控制器而開始運行,使該基板管理控制器透過該計算機系統 之又一資料匯流排藉由該可程式邏輯閘裝置讀取該BMC韌體儲存裝置之BMC韌體資料以執行運作。
  16. 如申請專利範圍第11項所述之方法,更包括若該計算機系統處於關機狀態,該基板管理控制器控制該計算機系統之一控制匯流排,以使該算機系統之中央處理器模組處於重置狀態而無法運作。
  17. 如申請專利範圍第11項所述之方法,更包括由該可程式邏輯閘裝置持續監控該基板管理控制器是否發生內部或非預期之外力重置。
  18. 如申請專利範圍第11項所述之方法,更包括由該可程式邏輯閘裝置持續監控該計算機系統之電源鍵是否被啟動,若該可程式邏輯閘裝置收到該電源鍵被啟動而送出之開機訊號,該可程式邏輯閘裝置讀取該BIOS韌體儲存裝置之BIOS韌體資料,並由該可程式邏輯閘裝置之資料驗證演算法對該BIOS韌體資料執行該可信驗證。
  19. 如申請專利範圍第18項所述之方法,更包括若該BIOS韌體資料未通過該可信驗證,該可程式邏輯閘裝置控制該計算機系統之一資料匯流排以讀取該BIOS備份韌體儲存裝置中保證可信之該BIOS備份韌體資料,並將該BIOS備份韌體資料經由該計算機系統之另一資料匯流排寫入覆蓋該BIOS韌體資料。
  20. 如申請專利範圍第18項所述之方法,其中,若該BIOS韌體資料通過該可信驗證,該可程式邏輯閘裝置控制 該計算機系統之一控制匯流排以通知該基板管理控制器有關該BIOS韌體資料已通過該可信驗證,使該基板管理控制器控制該計算機系統之另一控制匯流排以釋放該計算機系統之中央處理器模組而開始運作。
TW107106581A 2018-02-27 2018-02-27 具開機之可信驗證與容錯移轉之計算機系統及方法 TWI665604B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
TW107106581A TWI665604B (zh) 2018-02-27 2018-02-27 具開機之可信驗證與容錯移轉之計算機系統及方法
CN201810336500.0A CN110197070B (zh) 2018-02-27 2018-04-12 具开机的可信验证与容错移转的计算机系统及方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
TW107106581A TWI665604B (zh) 2018-02-27 2018-02-27 具開機之可信驗證與容錯移轉之計算機系統及方法

Publications (2)

Publication Number Publication Date
TWI665604B TWI665604B (zh) 2019-07-11
TW201937366A true TW201937366A (zh) 2019-09-16

Family

ID=67751012

Family Applications (1)

Application Number Title Priority Date Filing Date
TW107106581A TWI665604B (zh) 2018-02-27 2018-02-27 具開機之可信驗證與容錯移轉之計算機系統及方法

Country Status (2)

Country Link
CN (1) CN110197070B (zh)
TW (1) TWI665604B (zh)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110795738B (zh) * 2019-09-19 2022-05-13 超聚变数字技术有限公司 一种计算机的启动方法和控制器、存储介质以及系统
CN113761544A (zh) * 2020-06-02 2021-12-07 佛山市顺德区顺达电脑厂有限公司 服务器系统
CN111723376A (zh) * 2020-06-10 2020-09-29 苏州浪潮智能科技有限公司 一种板内可信平台的监测和控制方法、电路和装置
CN112086078A (zh) * 2020-09-18 2020-12-15 Tcl华星光电技术有限公司 驱动电路的数据保护装置及方法
CN112114908A (zh) * 2020-11-20 2020-12-22 支付宝(杭州)信息技术有限公司 硬件平台及其启动方法、装置和电子设备
CN113032788A (zh) * 2021-03-24 2021-06-25 山东英信计算机技术有限公司 一种计算机系统中的固件镜像切换方法、装置及介质

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9122492B2 (en) * 2010-10-25 2015-09-01 Wms Gaming, Inc. Bios used in gaming machine supporting pluralaties of modules by utilizing subroutines of the bios code
TW201328246A (zh) * 2011-12-21 2013-07-01 Inventec Corp 雲端伺服系統的管理方法及管理系統
TW201401098A (zh) * 2012-06-18 2014-01-01 Hon Hai Prec Ind Co Ltd 固件驗證方法及系統
WO2014150352A1 (en) * 2013-03-21 2014-09-25 Insyde Software Corp. Network controller sharing between smm firmware and os drivers
KR20140144520A (ko) * 2013-06-11 2014-12-19 삼성전자주식회사 프로세서 모듈, 마이크로 서버 및 프로세서 모듈의 제어 방법
CN103412775A (zh) * 2013-08-12 2013-11-27 浪潮电子信息产业股份有限公司 一种智能自动化刷新BMC firmware的方法
CN104679622A (zh) * 2013-11-29 2015-06-03 英业达科技有限公司 基本输入输出系统维护方法
US9811654B2 (en) * 2014-06-11 2017-11-07 Dell Products L.P. Systems and methods for providing authentication using a managed input/output port
WO2016014031A1 (en) * 2014-07-22 2016-01-28 Hewlett-Packard Development Company, L.P. Authorizing a bios policy change for storage
CN104486127A (zh) * 2014-12-22 2015-04-01 浪潮集团有限公司 一种基于可信管理单元的冗余可信服务器管理方法
US10038705B2 (en) * 2015-10-12 2018-07-31 Dell Products, L.P. System and method for performing intrusion detection in an information handling system
US9805200B2 (en) * 2016-02-01 2017-10-31 Quanta Computer, Inc. System and method for firmware verification
CN107451024A (zh) * 2017-09-07 2017-12-08 大唐高鸿信安(浙江)信息科技有限公司 基于bmc芯片实现的硬件可信度量方法

Also Published As

Publication number Publication date
CN110197070A (zh) 2019-09-03
TWI665604B (zh) 2019-07-11
CN110197070B (zh) 2023-07-21

Similar Documents

Publication Publication Date Title
US11520894B2 (en) Verifying controller code
TWI665604B (zh) 具開機之可信驗證與容錯移轉之計算機系統及方法
US10853179B2 (en) Information handling system and method for restoring firmware in one or more regions of a flash memory device
TWI530790B (zh) 系統啓動碼恢復方法、運算系統、及供於系統中使用之控制器
US10754955B2 (en) Authenticating a boot path update
US9880908B2 (en) Recovering from compromised system boot code
US10133637B2 (en) Systems and methods for secure recovery of host system code
CN111052118A (zh) 硬件实施的固件安全
US20190228157A1 (en) Computing device having two trusted platform modules
US11593487B2 (en) Custom baseboard management controller (BMC) firmware stack monitoring system and method
EP2631840A1 (en) Authentication device and authentication method
US20220222349A1 (en) Information handling system host to management controller attestation service channel
US12204887B2 (en) Seamless and secure motherboard replacement system and method
US11797679B2 (en) Trust verification system and method for a baseboard management controller (BMC)
US11429723B2 (en) Multi-domain boot and runtime status code drift detection
CN113330436B (zh) 基于制造状态的固件子系统恢复
US20250245333A1 (en) Extended Embedded Controller Authenticated BIOS Interface for Analysis of Firmware Variable Transactions
US20200319975A1 (en) Early boot event logging system
US11593490B2 (en) System and method for maintaining trusted execution in an untrusted computing environment using a secure communication channel
US12254322B2 (en) Virtual pseudo PCIe (VVP) device nodes for fast reliable OS and virtual memory (VM) boot
US20250355993A1 (en) Virtualized root of trust in distributed computing system
US20260003970A1 (en) Firmware Level Intelligent Interrupts For Vulnerability Free User Presence Detection Experience
HK40066655B (zh) 使用存储器孔径冲刷顺序的数据保存