TW200540640A - Launching a secure kernel in a multiprocessor system - Google Patents
Launching a secure kernel in a multiprocessor system Download PDFInfo
- Publication number
- TW200540640A TW200540640A TW093125590A TW93125590A TW200540640A TW 200540640 A TW200540640 A TW 200540640A TW 093125590 A TW093125590 A TW 093125590A TW 93125590 A TW93125590 A TW 93125590A TW 200540640 A TW200540640 A TW 200540640A
- Authority
- TW
- Taiwan
- Prior art keywords
- processor
- patent application
- item
- reliable
- scope
- Prior art date
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/57—Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
- G06F21/575—Secure boot
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/46—Multiprogramming arrangements
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/16—Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
- G06F15/163—Interprocessor communication
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/76—Architectures of general purpose stored program computers
- G06F15/80—Architectures of general purpose stored program computers comprising an array of processing units with common control, e.g. single instruction multiple data processors
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/76—Architectures of general purpose stored program computers
- G06F15/80—Architectures of general purpose stored program computers comprising an array of processing units with common control, e.g. single instruction multiple data processors
- G06F15/8007—Architectures of general purpose stored program computers comprising an array of processing units with common control, e.g. single instruction multiple data processors single instruction multiple data [SIMD] multiprocessors
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/30—Authentication, i.e. establishing the identity or authorisation of security principals
- G06F21/44—Program or device authentication
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/30—Authentication, i.e. establishing the identity or authorisation of security principals
- G06F21/44—Program or device authentication
- G06F21/445—Program or device authentication by mutual authentication, e.g. between devices or programs
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/606—Protecting data by securing the transmission between two devices or processes
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/64—Protecting data integrity, e.g. using checksums, certificates or signatures
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/70—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
- G06F21/71—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2221/00—Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/03—Indexing scheme relating to G06F21/50, monitoring users, programs or devices to maintain the integrity of platforms
- G06F2221/034—Test or assess a computer or a system
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- Software Systems (AREA)
- Computer Security & Cryptography (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Bioethics (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Multi Processors (AREA)
- Storage Device Security (AREA)
- Stored Programmes (AREA)
Description
200540640 (1) 九、發明說明 【發明所屬之技術領域】 本發明關於電腦系統,較具體地關於啓動其中的安全 作業。 【先前技術】 一以鏈路爲主的系統拓樸可包括多個點對點相連的節 點。該拓樸可能並非完全連接;即,——特定節點可能並非 與所有其他節點相連,但任一節點可依據所組成的路由機 制,經由多條鏈路而與任何其他節點聯繫。例如,該些節 點可爲處理器、輸入/輸出(I/O )集線器,或其他裝置 〇 在系統作業的開端,處理器硬體可靠地依指定而作業 ’而且鏈路機制可靠地自一鏈路控制器傳送硬體所發送的 鏈路層信息予另一鏈路控制器。此外,該鏈路機制提供有 關一鏈路每一端之硬體零件的可靠信息。同樣地,該I/O 集線器的硬體機制將依指定而作業。 在某些體現中,儘管存在個別的實體記憶體,但在一 系統架構上執行之特定協定可用於存取記憶體,並維持記 憶體整體的相關外貌與性能,做爲一單一實體位置空間。 然而,該相關性能係依據不可靠軟體所組成的位址解碼及 路由機制。因此,該等協定無法正確地交付存取記憶體, it至組態經驗證爲止。特別是其無法可靠地免於組態錯誤 及不當的作業,例如記憶體替代標號或使用具不同對映的 -5- 200540640 (2) 相同實體位址。因而存在著在該等系統中啓動可靠環境的 需要。 【發明內容及實施方式】 在不同實施例中,可安全地啓動一安全核心,其在一 系統拓樸中的所有處理器上執行。此外,該安全核心連同 該啓動程序中所使用的一或多個軟體代理程式,可以安全 的方式實施測量及記錄。以此方式,可記錄植基於啓動該 安全核心所使用之硬體的傳遞信任鏈。 在某些實施例中,可靠的硬體可包括一主要輸入/輸 出(I/O )集線器,其上依附一主要的可靠平台模組( TPM )。一(非安全的)作業系統(OS )可具有該拓樸之 特徵的知識。此外,可執行一可靠的軟體代理程式,使得 其執行無法以任何方式竄改。 一使用者或系統管理者可要求載入一系統中的安全核 心。如文中所提及,「安全」一詞係指稍後檢查系統並判 斷是否載入一特定核心的能力。此外,該使用者或第三者 可進一步判斷該核心是否載入一安全的記億體環境。因此 ,在一實施例中,藉由提供在該安全環境中檢查軟體的能 力,一外部代理程式可建立信任,或決定信任該安全環境 所包含的該核心。在一實施例中,可檢查代表該安全記憶 體區域的密碼拼湊値(例如軟體識別値),而非暴露整個 區域進行檢查。在一實施例中,該數位簽章安全軟體識別 値可由外部代理程式儲存於可存取的硬體中。 -6- 200540640 (3) 穸照圖1 A,顯示啓動依據本發明一實施例之多處理 器系統上安全核心之方法的流程圖。如圖丨A中所示,方 法1 00的展開可將一可靠的代理程式及一安全核心載入記 憶體(方塊1 1 〇 )。在一實施例中,一不可靠的作業系統 (〇S)可將可靠的代理程式及該安全核心載入系統記憶 體的女全區域中。該可靠的代理程式及該安全核心可儲存 於大量儲存裝置,例如磁碟機,並可載入可由系統多個處 理器存取的該系統記憶體中。此外,該〇 s可建構頁碼表 以便定址該安全核心及可靠的代理程式。在一實施例中, 該頁碼標的位址及長度可儲存於該系統之主要輸入/輸出 (I / Ο )集線器的特定位置中。該0 S亦可儲存一用以驗證 該模組的公共金鑰。在一實施例中,該可靠的代理程式可 爲安全驗證碼,其用以驗證該系統的組態,較具體地是用 以驗證該系統的記憶體組態。該可靠的代理程式可進一步 用以啓動該安全核心的執行。 其次,該OS可在一啓動邏輯處理器(ILP )(方塊 120)上發佈一安全啓動。該安全啓動可爲一啓動安全輸 入的安全輸入(SENTER )指令。SENTER指令的執行可 致使該1LP在其插座及其他處理器插座內發佈特殊匯流排 信息’接著花相當長的時間間隔等候後續的系統動作。 在一實施例中,該啓動邏輯處理器(ILP )可直接連 接主要的I/O集線器,其依序直接連接主要的可靠平台模 組(TPM )。在該實施例中,該ILP可驗證具有至該主要 TPM的可靠路徑。例如,可檢查該ILP插座中的可靠鏈 200540640 (4) 路參數。該路徑可爲一可靠的硬體路徑,其不需由韌體或 軟體啓動。執行該方法時,在該ILP爲一多處理器插座的 一部分之實施例中,該ILP亦可致使該插座中的其他邏輯 處理器(OLP )停止。 其次’該IL P可建構一層級樹(方塊1 3 〇 )。該層級 樹可依據一所需的演算法進行建構。該層級樹可用於識別 有關一樹狀結構之複數階層中ILP節點之系統的所有其他 節點’其中該ILP做爲該樹的根部。直接連接該ILP的節 點可爲第二層節點,直接連接第二層節點的節點可爲第三 層節點’以此類推。該層級樹可用於驗證該系統的適當組 態’並啓動以鏈路爲主之信息至其他節點的路由。只有可 靠的硬體及鏈路可用於建構該層級樹。在某些實施例中, 該層級樹可提供一可靠的廣播機制,藉此該ILP可發送一 信息予每一處理器插座,用於每一處理器插座的機構以回 應該廣播信息,並當該些回應向上通過該樹回到該ILP時 予以總和,及一界線機制以確保所有處理器插座在該ILP 處理下一廣播信息之前,到達已知狀態。 仍參閱圖1 A,在方塊1 4 0 —安全啓動信息可發送予 該層級樹上的其他插座。在一實施例中,該信息可使用層 級樹協定進行發送,該協定係自根階層發送信息至下一階 層(即至下行鏈路節點),其依序發送信息至下一最低階 層,以此類推。回應時,每一階層可向上回傳回應封包至 其傳送階層(即至上行鏈路節點)。因此,當所有節點接 收信息並適予回應,便將一最後總結回應封包回傳至該根 200540640 (5) 節點。執行該方法時,每一插座上的回應邏輯處 RLP )可致使該插座中的其他邏輯處理器(〇LP )停 現在參閱圖1B,當啓動邏輯處理器(ILP )接 所有其他節點已適當地接收及回應SENTER指令的 應時’該ILP便可驗證該可靠的代理程式(方塊i 該驗證可包括例如執行一拼湊計算,並將該結果與 儲存的拼湊値相比。該驗證資訊接著可發送予回應 理器(RLP )(方塊160 )。該些RLP可個別驗證 取受保護之記憶體位置中可靠的代理程式,並驗證 的代理程式(方塊1 7 0 )。 當該ILP接收每一 RLP的驗證總結回應時, 接著便可在該系統的所有插座上控制該可靠代理程 行(方塊180)。例如,在一實施例中,該IL P可 界線機制啓動該可靠代理程式的部分,等候每一插 行該可靠代理程式部分的指標,接著繼續處理下一 該指標可使用上述層級樹協定發送。 該硬體因而使用該層級樹啓動每一處理器插座 之可靠的代理程式。該可靠的代理程式可在每一處 座上以協調的單指令多資料(SIMD )類型同時執 些可靠代理程式的執行使用該層級樹與該ILP協調 ’共同執行該拓樸之記憶體組態的完整驗證。當該 代理程式成功地驗證該組態時’該ILP上的該可靠 式執行便可驗證用於該安全核心定位之頁碼表,比 心的拼湊,及將該拼湊記錄於主要的可靠平台模組
理器( 〔止。 收顯示 總結回 50 ) ° 先前所 邏輯處 其可存 該可靠 該ILP 式的執 使用一 座已執 部分。 上相同 理器插 行。該 與通訊 可靠的 代理程 較該核 (TPM 200540640 (6) )中。 在該可靠的代理程式執行結束時,該ILP可啓動該安 全核心(方塊190)。此時,該安全核心便接管系統作業 ,並可依據其中的碼執行(方塊! 9 5 )。例如,該安全核 心可在該系統的所有插座上執行。 現在參閱圖2 ’顯示依據本發明一實施例之系統的方 塊圖。如圖2中所示,系統200可爲一具有隨意且部分相 連之點對點架構的多處理器系統。即,系統2 〇 〇的某些節 點可直接相連’同時其他節點可經由其間相連的中間節點 通訊。在其他實施例中,系統2 0 0可具有完全相連的拓樸 。在一實施例中,儘管本發明的範圍並未加以限制,但系 統2 0 0可爲一同步多處理(s Μ P )伺服器電腦。 即,雖然圖2中顯示爲一伺服器平台,但應理解的是 在其他實施例中,一系統可爲所需的桌上型、手提型、伺 服器或其他該等平台之一。在某些實施例中,圖2之不同 零件間的相互連接可爲點對點連接,其用於系統2 0 0內的 相關共用記憶體,在一該等實施例中,用於其間通訊之相 互連接及協定可形成一共同系統介面(C S I )。在該實施 例中,系統2 〇 〇的多處理器、記憶體及其他零件可無誤地 彼此共用介面。 在圖2的實施例中’系統2 0 0的所有零件可共同成一 個相關的系統。該共同系統在處理流程中於各通道間不拘 順序地進行相關處理。雖然文中所討論的爲一共同系統, 應理解的是相關及非相關的處理均可在該系統零件上傳送 -10- 200540640 (7) 及進行。例如,與系統2 0 0相關的一個、部分或所有記憶 體中的一個區域,可保留以進行非相關的處理。而且,應 理解的是本發明的實施例並不侷限於相關系統。 如圖2中所示,第一處理器插座2 1 0可包括複數個處 理核心2 1 2 a、2 1 2 b、2 1 2 c及2 1 2 d。雖然圖2之實施例中 顯示包括四個該等處理核心,但應理解的是在其他實施例 中,處理器插座可包括更多或較少的該等核心。如圖2中 進一步所示,該處理器核心可經由匯流排或環2 1 5相連接 。在某些實施例中,例如依據共同系統介面(C S I )協定 的實施例中,該處理器插座可包括其餘的邏輯電路功能, 例如記憶體控制器功能、C S I封包產生及路由機制。 例如,如圖2中所示在處理器插座2 1 0中爲邏輯電路 功能2 1 6,其可包括記憶體控制器及其他的邏輯電路功能 。邏輯電路功能2 1 6可包括具處理器插座的相關節點識別 元(NID)。如圖2中所示,處理器插座210可具有一節 點識別元,其在一實施例中顯示爲啓動邏輯處理器。邏輯 電路功能2 1 6可包括一來源位址檢測器,其對映實體記憶 體映圖中所有項目的相關節點(例如NID )位址。若適當 配置,每一處理器插座可包括具有來源位址檢測器的邏輯 電路功能,該來源位址檢測器回應相同位址予相同節點。 在一實施例中,NID在系統啓動上可配賦不可靠的韌體, 其因而並非唯一。因此,在某些實施例中,一可靠的代理 程式可用於判斷每一節點的NID實際上是否爲唯一。在 某些實施例中,邏輯電路功能2 1 6亦可包括一目標位址檢 -11 - 200540640 (8) 測器,其對映位址予實體記憶體,例如實體記憶體直接連 接至一特定處理器插座。 記憶體2 1 8亦可直接連接至處理器插座2 1 0。雖然記 憶體2 1 8可直接連接至處理器插座2 1 0,但應理解的是在 不同實施例中,系統2 0 0內的任一處理器插座均可存取記 憶體2 1 8。記憶體2 1 8可使用邏輯電路功能2 1 6內的記憶 體控制器功能,做爲與處理器插座2 1 0的介面。此外,雖 然圖2中並未顯示,但應理解的是每一處理器插座可具有 一或更多個與之相關的記憶體。雖然每一插座可具有一直 接相連的實體記憶體,但其餘的記憶體元件,例如高速緩 衝儲存器,可與該處理器插座中的個別處理核心相連。在 一實施例中,一系統中的所有記憶體可定址爲單一實體位 址空間,雖然存在多個該等記憶體,但每一均可直接與不 同的處理器插座相連。 如圖2中進一步所示,處理器插座210可直接連接至 處理器插座220、處理器插座250及處理器插座260。此 外,處理器插座210直接連接至主要輸入/輸出(I/O ) 集線器 2 90,其依序直接連接至主要的可靠平台模組( TPM ) 2 92。雖然文中並未詳細討論,但處理器插座230 、240、27 0及280(與插座220、250及260)可具有如 處理器插座2 1 0相關討論之類似的處理核心、匯流排、環 及邏輯電路功能。最後,圖2中進一步所示的爲第二輸入 /輸出(I/O )集線器2 9 5,其直接連接至處理器插座250 、260 、 270 及 280 〇 -12 - 200540640 (9) I/O集線器2 9 0及2 9 5可各包括複數個埠,做爲與其 相連之〗/〇裝置的介面。例如,在某些實施例中,該等 I / 〇裝置可爲符合一或多個匯流排模式的裝置。在一實施 例中’該等I/O裝置可爲符合周邊零件連接介面快速基準 規格版本1.0a(2002年7月發表)之周邊零件連接介面 (PCI )快速裝置。主要的可靠平台模.組(τρΜ ) 292可 爲符合可靠的運算平台聯盟(T C P A )主要規格版本1.1b (2002年2月22日發表)之可靠的平台模組。主要的可 靠平台模組(T P Μ ) 2 9 2可保護與製造及維持安全作業環 境有關的資料。在一特定實施例中,主要的可靠平台模組 (ΤΡΜ ) 2 92可包括特定加密、解密及/或驗證程序的金 鑰。主要的可靠平台模組(Τ Ρ Μ ) 2 9 2亦可包括儲存空間 以容納摘要値及用於安全環境的其他資訊。在一實施例中 ,主要的可靠平台模組(ΤΡΜ ) 292中的儲存空間可包括 非揮發性記憶體(例如快閃記憶體),以便在電力漏失時 保持內容。 雖然在圖2的實施例中顯不每一處理器插座包括四或 五個直接連接,但在其他實施例中,不同插座間可包括較 多或較少的直接連接。更有甚者,應理解的是在不同實施 例中可呈現較多或較少的插座,各具有不同數量的核心及 不同數量的邏輯電路功能。例如,一單一處理器係統可具 有一單一 I/O集線器及與其相連的相關I/O裝置。另一方 面,一具有不同數量處理器(例如4、8、1 6或3 2 )的多 處理器係統,可具有適當數量的I/O集線器及與其相連的 -13- 200540640 (10) 其他零件。任何該等平台拓樸可具有點對點相互連接的優 點’以提供該系統相關部分的一致性,亦允許與其相連之 1 /〇裝置的非相關點對點處理。此外,在某些實施例中, 其餘的零件亦可呈現於系統2 00中,例如縱橫開關、路由 器等。 現在參與圖3 ’顯示依據本發明一實施例之層級樹的 方塊圖。如圖3中所示,層級樹3 00可爲啓動邏輯處理器 (IL P )所建構之層級樹的圖示。較具體地,層級樹3 0 〇 相對於系統2 0 0的層級樹,其中處理器插座2 ! 〇包括該 IL P °請注意該層級樹的每一節點具有一節點識別元,其 相對於圖2之相符處理器插座的節點識別元。如圖3中所 示’根階層節點3 1 0具有節點識別元丨,相對於圖2之處 理器插座2 1 0。該階層兩節點包括直接連接處理器插座 2 1 〇的節點。具體地’如圖3中所示,該階層兩節點包括 節點3 1 5、3 2 0、3 2 5及3 3 0,各相對於直接連接處理器插 座2 1 0之系統2 0 0的節點,即處理器插座2 2 〇、2 5 〇與 260 ’及主要輸入/輸出(1/〇 )集線器29〇。 第三層的節點包括節點3 3 5、3 4 0及3 5 0。每一該些 節點相對於直接連接第二層節點的節點。例如,節點3 3 5 (例如相對於I/O集線器290 )直接連接處理器插座250 •’節點3 4 G (即相對於處理器插座2 7 〇 )直接連接處理器 插座260 ;及節點3 5 0 (即相對於處理器軟體23〇 )直接 連接處理器插座2 2 0。最後,第四層的節點包括節點3 5 5 及3 6 0,二者均直接連接第三層節點,即節點3 4 〇。 - 14 - 200540640 (11) 因此一層級樹識別系統中參與插座的數量。該系統中 每一插座(根插座除外)可具有一經識別爲上行鏈路的鏈 路。啓動邏輯處理器(ILP )所產生之廣播信息可由回應 邏輯處理器(RLP )自其上行鏈路接收。此外,除了葉( 例如圖3的第四層節點)以外的所有插座,可具有經識別 爲下行鏈路的鏈路。每一插座可傳播廣播信息至其下行鏈 路。在某些實施例中,查閱表或其他相對於圖3中所示之 圖示的資料結構,可儲存於與處理器插座2 1 0相關的記憶 體供該ILP使用。 因此在該層級樹的建構末端,該層級樹包括與節點數 量及其階層有關的資訊。在層級樹細目的結論,可配賦獨 特的識別元予每一節點,並可決定及儲存特定節點下的節 點總數。因此如圖3中所示,除了每一節點的節點識別元 (亦顯示於圖2中)外,可呈現其餘層級樹的獨特識別元 (例如節點識別元(ID ) 1具有層級樹識別元1,其中節 點ID5具有層級樹識別元2 )。 現在參閱圖4,顯示依據本發明一實施例之可靠鏈路 硬體的方塊圖。該可靠鏈路硬體可用於提供一處理器插座 中的可靠鏈路硬體,供完成可靠代理程式的執行之前使用 。該可靠的硬體鏈路爲可靠的,作業及沿鏈路傳送信息時 不需韌體或軟體。可靠鏈路硬體4 5 5 a及4 5 5 b可容納於處 理器插座內(即插座410a及410b)。雖然圖4中顯示二 個該等插座,但文中將討論插座4 1 0 a及其零件。如圖4 中所示,硬體鏈路4 5 5 a可於處理器核心4 2 0 a及鏈路控制 -15- 200540640 (12) 器4 5 0a之間連接。使用可靠的硬體鏈路4 5 5 a,p 路信息便可不依賴軟體或韌體而進行發送及自核 接收。 對比之下,對一般系統信息及封包傳輸而言, 爲主的信息可經匯流排或環425 a,並透由核心介 及協定引擎4 3 5 a而往/返核心4 2 〇 a。在一實施例 定引擎435a可爲一共同系統介面(CSI)協定引奪 將資料及信息形成C S I封包。此外,匯流排4 4 0 a 開關445 a連接協定引擎4 3 5 a。由此,資料及信肩 至與處理器插座相關之記憶體等其他節點、鏈路 4 5 0a或其他需要的位置。 由於包括核心介面4 3 0 a、協定引擎4 3 5 a及縱 445 a的零件係由不可靠的韌體建構,所以該路徑 執行可靠的代理程式之前,無法提供非欺僞的存取 因此在不同實施例中,硬體鏈路4 5 5 a可提供核心 鏈路控制器4 5 0 a間的非欺僞的存取路徑,其特別 可靠代理程式的系統驗證之前。例如,在驗證之前 鏈路控制器4 5 0 a及4 5 0 b等鏈路控制器可用於以核 殊指令產生鏈路信息。因而一接收鏈路控制器可捕 信息內容,並經由例如可靠的硬體鏈路4 5 5 a等可 體鏈路,使其可直接用於處理器核心。在某些實施 從一鏈路控制器至一處理器核心可發生一事件機制 該核心中的微碼可於新鏈路信息抵達時在該可靠的 路上形成。在鏈路啓動期間,有關鄰近節點的資訊 Γ靠的鏈 心 4 2 0 a 以鏈路 面 4 3 Oa J中,協 〖,以便 經縱橫 、可發送 控制器 :橫開關 在完成 路徑。 42 0a 與 適用於 ,例如 心的特 捉鏈路 靠的硬 例中, ,使得 硬體鏈 可被一 -16- 200540640 (13) 鏈路控制器捕捉,並可用於協定引擎及處理器核心。在該 等實施例中,該等訊息可包括鄰近節點的節點類型及節點 識別元。 如圖4中進一步所示,上述討論有關處理器插座 4 10a的零件可見於處理器插座410b中。此外,兩處理器 間的可靠鏈路可經由連接鏈路控制器4 5 0 a及鏈路控制器 4 5 0b的硬體鏈路460進行影響。該可靠鏈路可用於在可 靠代理程式的系統驗證之前,在處理器插座間發送以鏈路 爲主的信息。 現在參閱圖5,顯示依據本發明一實施例由一啓動邏 輯處理器(ILP )實施之安全啓動的時序圖。如圖5中所 示,安全啓動5 00藉由將一可靠代理程式及一安全核心載 入記憶體(區段5 02 )而展開。如上述,在一實施例中, 一不可靠的作業系統(〇 S )可執行該載入作業。接著可 發送一安全輸入(SENTER)指令予包含所需ILP的處理 器插座(區段5 04 )。例如,該指令可由一不可靠的〇S 發佈。 當該ILP接收該SENTER指令時,其可發佈一類似的 指令予其插座中的其他邏輯處理器,並發佈予其他處理器 插座5較具體地發佈予一回應邏輯處理器(RLP ) ’其係 每一處理器插座中均有一個(時序505)。在不同的實施 例中,該邏輯處理器的可能爲ILP及/或RLP,並可能依 據軟體或韌體而有所不同。例如,在一實施例中’ 0 S可 能選擇ILP。此外,其他處理器插座中的RLP則可被特定 -17 - 200540640 (14) 插座中的所有邏輯處理器所選擇。在時序5 證實其直接連接主要I/O集線器。接著在 ILP可廣播一 SENTER匯流排信息予其插座 處理器(OLP),而且每一 OLP均可回應該 (時序5 2 0 )。 此時,可展開一 SENTER本機事件(區 時序5 2 5,每一 OLP可發佈一確認(ACK ) 候狀態。該等候狀態可由OLP維持直至之ί 離開該等候狀態。
接著可進入一 SENTER總體指令階段( 首先,該ILP可發送一信息,自該系統中的 (ACK )。當該IL Ρ接收A C Κ時,便發送 (時序5 3 0 )。此時,該ILP便可建構一層H 雖然可採不同型式建構層級樹,但在一 由發送脈衝建構一層級樹,該脈衝係脈衝階 該樹向下至下一較低階層,該層級樹並接收 其係包含累積結果向上回至該樹的鏈路階層 式,接收脈衝信息的每一 RLP可將該信息 鏈路,並接收返回信息。所發送之以鏈路爲 息,致使每一插座設定一插座階層。接著, 目’其中配賦每一節點一特有的識別元。因 層級樹時,每一插座便配賦一特有識別元及 步顯示其相對於該ILP的相關位置,與往/ 行鏈路與下行鏈路連接。 10 ,該ILP可 時序 5 1 5,該 內的其他邏輯 SENTER指令 段5 22 )。在 ,並進入一等 菱該ILP下令 區段5 2 8 )。 節點尋求確認 一持續的指令 δ樹。 實施例中可藉 層的信息,由 返回,該返回 信息。以此方 傳送予其下行 主的層級樹信 發生層級樹細 此,在完成該 一階層,進一 返該插座的上 -18 - 200540640 (15) 在確認及完成該層級樹時,該ILp可發送該SENTER 指令予所有其他的處理器插座(時序5 3 5 )。其次,該 ILP可合倂自該層級樹上節點所接收的總和回應(時序 5 4 0 )。該樹上一演算法證實該拓樸的軟體組態已賦予每 一節點一特有識別元,其可用於該系統的路由協定中。 接著該ILP可測量(即運算該拼湊)及認證(即證實 簽章)該可靠的代理程式,其在主要1/〇集線器中的指定 位址發現下列並予以廣播,包括拼湊値、該可靠代理程式 的基礎位址與長度,及用於驗證對其他處理器插座之簽章 的公共金鏡(時序5 5 0 )。該廣播可使用層級樹協定進行 。當其他插座驗證該可靠的代理程式時,將發送回應信息 ’其之後將於時序5 5 5由該ILP合倂。若每一插座發送肯 定回應,該ILP便載入、紀錄該可靠代理程式的拼湊(例 如在主要可靠平台模組(TPM)中),並於時序560啓動 該可靠代理程式。在某些實施例中,若一個或更多個插座 無法肯定回應,那麼安全啓動便終止。儘管本發明的範圍 並未如此限制,但在圖5所示實施例中,該可靠代理程式 可爲一安全可靠代理程式(例如,SIN IT-AC的名稱,其 爲女全啓動一驗證碼)。 接著可執行該可靠代理程式(區段5 7 2 )。在一實施 例中’該可靠代理程式的執行可於鬆散鎖定步驟單指令多 資料(SIMD )執行中進行。即,相同的可靠代理程式可 在所有插座上’於該碼中的特定界線同步執行。例如,該 I L P可在所有鏈路上發佈包括作業碼及資料的廣播信息。 -19 - 200540640 (16) 每一 RLP可得到該資料,若有的話並將該資料傳送至其 下行鏈路,及處理該資料。若該RLP是一葉,其可將一 回應信息向上回送至其上行鏈路。若該RLP爲一中間節 點,其便等候其下行鏈路的所有回應,使用作業碼總和所 有回應資料,並發送總和的回應予其上行鏈路。當該ILP 最後獲得所有其他插座的總和回應時,便以類似的方式繼 續執行至下一界線位置。 在執行中,該可靠代理程式可驗證本機組態及每一處 理器插座上的來源位址解碼器(時序5 7 0 )。此外,該可 靠代理程式可驗證每一處理器插座之每一節點識別元的獨 特性(時序5 7 5 )。例如,該可靠代理程式可使該來源位 址解碼器發送至該ILP (時序5 8 0 )。接著該ILP可合倂 並分析來源位址解碼器的比較結果(時序5 8 5 )。之後, 該ILP可藉由驗證、載入、紀錄及啓動該安全核心而終止 (時序5 90 )。在某些實施例中,該驗證資訊(例如一拼 湊値)可儲存於一主要TP Μ中。儘管本發明的範圍並未 如此限制,但在一實施例中,該安全核心可爲一安全虛擬 機器監視器(S V Μ Μ )。 仍參閱圖5,監視器啓動(區段5 92 )可使該ILP以 特殊指令喚起所有插座中的所有處理器核心,致使所有處 理器離開其等候狀態。因而在區段5 9 6所有監視器加入, 而且所有處理器核心於時序5 9 8參與,而安全核心作業展 開(區段5 9 9 )。 現在參閱圖6,顯示依據本發明一實施例之安全啓動 -20- 200540640 (17) 的時序圖。較具體地,圖6顯示由一回應邏輯處理器( RLP )實施之安全啓動的時序。因而圖6中所見之安全啓 動6 0 0與圖5中的時序圖極接近。首先,發生一 SENTER 門鈴事件(區段 6 0 4 )。在該事件中,該事件被IL P的 SENTER門鈴指令插斷(時序 605)。接著在時序610, 該RLP便發送一 SENTER下行鏈路信息予其下行鏈路節 點(若有的話)。在時序615,該RLP廣播該SENTER信 息予其插座內的所有處理器(即OLP)。該插座中每一其 他邏輯處理器可回應該SENTER週期(時序620 )。接著 發生一 SENTER本機事件(區段622 ),其中每一 OLP發 佈一 ACK回送予該ILP,且該OLP進入等候狀態(時序 625 ) 〇 接著在區段62 8,發生一 SENTER門鈴總體事件。當 該RLP接收所有現行鏈路節點的所有ACK時,該RLP便 發送一持續信息予該IL P (時序6 3 0 )。該R L P於時序 6 3 5合倂該等持續信息。接著在時序6 4 0,該R L P可接收 該IL P的驗證資訊。在一實施例中,該丨L p可發送有關該 可靠代理程式拼湊値、基準、規格及公共金鑰拼湊的資訊 。此外在此時,該R L P將該資訊傳送至其下行鏈路節點 。在時序6 4 5,該RLP可比較所接收之拼湊與其於該可靠 代理程式之拼湊。 在時序6 5 0,該RLP接收其下行鏈路節點的的驗證信 息並將結果合倂。而且,該RLP經由其上游節點向上發 送總和回應予該ILP。接著該RLP依據所接獲該ILp的資 - 21 - 200540640 (18) 訊’載入、驗證及檢查該可靠代理程式的簽章,並啓動該 可靠代理程式(時序6 5 5 )。 若所有處理器插座抵達此點,該可靠代理程式便執行 (區段6 7 2 )。具體地,該可靠代理程式驗證本機組態及 每一處理器插座的節點ID (時序660 ),並檢查及驗證該 插座中的來源位址解碼器(時序665及670)。該RLP可 接收下行鏈路插座的驗證結果,並合倂及向上發送該結果 予其上行鏈路處理器或該ILP (時序6 7 5 )。接著該RLP 便進入特殊等候狀態(時序6 8 0 )。 在此點,該安全核心首先於該I L P插座上被啓動(區 段6 9 2 )。接著在時序6 8 5,該IL P上的安全核心以特殊 喚起指令,喚起所有插座上的所有處理器核心。此時,該 安全核心可持續在該系統的部分或所有處理器上執行。例 如’在安全核心啓動後,可製造一虛擬機器環境,其中該 S V Μ Μ可以該系統內的最優先碼進行作業,並可用於藉由 虛擬機器中的0 S或應用程式而允許或拒絕存取某些系統 資源。 以此方式,本發明的實施例可在任意複雜伺服器硬體 拓樸上啓動一可靠安全核心,該拓樸係由不可靠軟體及韌 體所組成。該核心接著可進行建構、記錄及驗證一可靠的 伺服裔執fT ί哀境。此外’在某些實施例中,一可靠的代理 程式可於一伺服器拓樸的所有處理器插座上以單指令多資 料(SIMD )類型執行,並藉由使用一可靠的界線/廣播 機制’驗證一任意複雑伺服器拓樸的組態,並藉由該可靠 -22- 200540640 (19) 代理程式之硬體的傳遞可靠,紀錄及啓動一安全環境。 實施例可以編碼完成,並可儲存於具有儲存指令的儲 存媒體上,該指令可用於程控一電腦系統以執行該指令。 該儲存媒體可包括但不侷限於任一型式的磁碟,包括軟碟 、光碟、唯讀光碟(CD-ROM)、可複寫式光碟(CD-RW )及可讀寫光碟機;半導體裝置,例如唯讀記憶體(ROM )、隨機存取記憶體(RAM )、可抹除式程控唯讀記憶體 (EPROM )、快閃記憶體、電子可抹除式程控唯讀記憶 體(EEPROM )、磁性或光學卡;或適於儲存電子指令的 任一型態媒體。 雖然本發明已以數量有限的實施例加以描述,但熟悉 本技藝之人士將理解所衍生的許多修改及變化。希望申請 專利範圍可涵蓋所有該等修改及變化,並落於本發明的真 實精神與範圍之內。 【圖式簡單說明】 圖1 A爲依據本發明一實施例之方法的流程圖。 圖1 B爲圖1 A之流程圖的延續。 圖2爲依據本發明一實施例之系統的方塊圖。 1® 3爲依據本發明一實施例所建構之層級樹的方塊圖 〇 圖4爲依據本發明一實施例之可靠硬體的方塊圖。 圖5爲依據本發明一實施例由一啓動邏輯處理器實施 之安全啓動的時序圖。 -23- 200540640 (20) 圖6爲依據本發明一實施例由一回應邏輯處理器實施 之安全啓動的時序圖。 [主要元件符號說明】 1 節 點 m 別 元 100 方 法 110、 120、 13 0、 140、 方 塊 15 0、 160、 170、 180、 190、 1 95 200 系 統 2 10、 220、 2 3 0、 240、 處 理 器 插 座 2 5 0、 2 6 0、 2 7 0、 2 8 0、 4 10a、 4 1 Ob 2 12a '212b 、2 1 2 c、2 1 2d 處 理 核 心 2 15、 4 2 5 a 匯 流 排 或 環 2 16 ''想 邏 輯 電 路 功能 2 18 記 憶 體 230 處 理 器 軟 體 29 0、 295 主 要 輸 入 /輸出(I/O)集線器 292 主 要 的 可 靠平台模組(TPM) 300 層 級 樹 3 1 0 根 階 層 節 點 3 15、 3 2 0、 3 2 5、 3 3 5、 節 點 3 4 0、 3 5 0、 3 5 5、 360 -24- 200540640 (21) 4 2 0 a 4 3 0 a 4 3 5 a 44 0a 4 4 5 a 4 5 0a 455a 、 455b 460 500 、 600 502 、 504 、 572 、 592 、 622 、 628 、 505、 510、 525 、 530 、 550 、 555 、 575 、 580 、 598 、 605 、 620 、 625 、 640 、 645 、 660 、 665 、 680 、 685 、 522 、 528 、 596、 604、 672 515、 520 、 535 、 540 、 560 、 570 、 585 、 590 、 610、 615、 630 、 635 、 650 、 655 、 670 、 675 、 692 處理器核心 核心介面 協定引擎 匯流排 縱橫開關 鏈路控制器 可靠鏈路硬體 硬體鏈路 安全啓動 區段
時序
-25-
Claims (1)
- 200540640 (1) 十、申請專利範圍 1 · 一種方法,包含: 在一系統之複數個處理器上,安纟地啓動一安全核心 ,該系統具有一部分連接拓樸或一完纟連接拓樸。 2 .如申請專利範圍第1項之方法,進一步包含使用一 可靠的代理程式以安全地啓動該安全核心。 3 ·如申請專利範圍第2項之方法,進一步包含測量該 安全核心的特性,並將該特性記錄於/傳遞可罪的鏈中。 4 .如申請專利範圍第2項之方法,進一步包含使用該 可靠的代理程式以驗證該系統的一記懷體組態。 5 .如申請專利範圍第4項之方法,其中該記憶體組態 包含具有單一位址空間的分散式記憶體。 6 .如申請專利範圍第1項之方法,其中該複數個處理 器係經由任意點對點相互連接而連接。 7 . —種方法,包含: 驗證一系統的一啓動邏輯處理器; 若該啓動邏輯處理器經證實,則以該啓動邏輯處理器 證一可靠代理程式;及 若該可靠代理程式經證實,則在該系統之複數個處理 器上啓動該可靠代理程式。 8 ·如申請專利範圍第7項之方法,進一步包含將該可 靠代理程式的位址資訊,儲存於該系統之主要集線器代理 程式的一個保護部分中。 9.如申請專利範圍第7項之方法,進一步包含在該複 -26- 200540640 (2) 數個處理器上建構一層級樹。 1 0 .如申請專利範圍第9項之方法,進一步包含使用 該層級樹在該複數個處理器上啓動該可靠代理程式。 1 1 .如申請專利範圍第7項之方法,進一步包含使用 一界線機制執行該可靠代理程式。 1 2 .如申請專利範圍第項之方法,進一步包含在執 行該可靠代理程式後,執行一安全核心。 1 3 .如申請專利範圍第7項之方法,進一步包含驗證 該系統的一記憶體組態。 1 4 ·如申請專利範圍第7項之方法,其中驗證該啓動 邏輯處理器包含確認該啓動邏輯處理器與一主要集線器代 理程式之間的直接連接。 1 5 . —種方法,包含: 使用一啓動邏輯處理器在一系統的複數個處理器上建 構一層級樹;及 使用該層級樹在該複數個處理器上啓動該可靠代理程 式。 1 6 .如申請專利範圍第1 5項之方法,進一步包含在該 複數個處理器上執行該可靠代理程式。 1 7 .如申請專利範圍第1 5項之方法,進一步包含使用 一不安全作業系統將一安全核心載入該系統的一 s5憶體中 〇 1 8 .如申請專利範圍第1 7項之方法,進一步包含將有 關該安全核心及該可靠代理程式的資訊儲存於該系統的一 -27- 200540640 (3) 主要集線器代理程式中。 1 9.如申請專利範圍第1 5項之方法,進一步包含列舉 該層級樹中每一具獨特識別元的該複數個處理器。 2 〇 .如申請專利範圍第1 9項之方法,進一步包含結合 連接每一具獨特識別元之該複數個處理器的多個下行鏈路 節點。 2 1 ·如申請專利範圍第1 5項之方法,其中建構該層級 樹包含廣播一第一信息予直接連接的節點,並接收該直接 連接之節點的返回信息。 22·如申請專利範圍第21項之方法,進一步包含將該 第一信息自該直接連接之節點傳送至直接連接的下行鏈路 節點。 2 3 ·如申請專利範圍第1 5項之方法,進一步包含選擇 該啓動邏輯處理器做爲該層級樹的根。 24. —種裝置,包含: 一處理器核心; 一鏈路控制器;及 一可靠的硬體鏈路,將該處理器核心直接連接至該鏈 路控制器。 25·如申請專利範圍第24項之裝置,進一步包含一連 接該處理器核心的協定引擎,該協定引擎係由一不可靠代 理程式組成。 2 6 .如申請專利範圍第2 5項之裝置,其中該協定引擎 包含一共同系統介面引擎。 -28- 200540640 (4) 27.如申請專利範圍第25項之裝置,其中該協定引擎 連接該鏈路控制器。 2 8 .如申請專利範圍第2 4項之裝置,其中該鏈路控制 器在一可靠代理程式驗證該裝置之前,經由該可靠的硬體 鏈路與該處理器核心通訊。 29·如申請專利範圍第24項之裝置,其中該處理器核 心、該可靠的硬體鏈路及該鏈路控制器爲一處理器插座的 一部分。 3 0.如申請專利範圍第24項之裝置,進一步包含經由 點對點相互連接而相連的複數個處理器插座。 3 1 ·如申請專利範圍第24項之裝置,其中若接收一鏈 路信息,則該鏈路控制器便用以直接通知該處理器核心。 3 2· —種系統,包含: ~具有啓動邏輯處理器之第一處理器插座; 一與該第一處理器插座相連的動態隨機處理記憶體; 一與該第一處理器插座相連的第二處理器插座;及 一包含指令的儲存媒體,若執行該指令將使該系統使 用啓動邏輯處理器,在該第一處理器插座及該第二處理器 插座上啓動一可靠代理程式。 *3 ·如申請專利範圍第3 2項之系統,進一步包含一與 該第〜處理器插座直接相連的主要集線器代理程式。 ° 4 .如申請專利範圍第3 3項之系統,進一步包含一與 該主要集線器代理程式直接相連的主要可靠平台模組。 3 5 .如申請專利範圍第3 2項之系統,其中該第一處理 -29- 200540640 (5) 器插座包含一位於鏈路控制器與處理器核心/之間的胃靠^ 體鏈路。 3 6 .如申請專利範圍第3 2項之系統,其中該第一處理 器插座及該第一處理器插座經由一點對點相互連ί妾而連接 〇 3 7 .如申請專利範圍第3 2項之系統,其中該啓動邏輯 處理器係用以在該第一處理器插座及該第二處理器插座上 建構一層級樹。 3 8 ·如申請專利範圍第3 2項之系統,其中該動態隨機 處理記憶體直接連接該第一處理器插座,並可由該第一處 理器插座及該第二處理器插座存取。 3 9 · —種包含若執行將使一系統進行下列作業之指令 之機器可存取儲存媒體的物件: 在該系統的複數個處理器上安全地啓動一安全核心, 其中該系統包含複數個相連的拓樸。 4 0 ·如申請專利範圍第3 9項之物件,進一步包含若執 行將使該系統使用一可靠代理程式以安全地啓動該安全核 心的指令。 4 1 .如申請專利範圍第4 0項之物件,進一步包含若執 行將使該系統測量該安全核心的特性,並將該特性記錄於 一傳遞可靠之鏈中的指令。 4 2.如申請專利範圍第40項之物件,進一步包含若執 行將使該系統使用該可靠代理程式以驗證該系統一記憶體 組態的指令。 -30-
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US10/859,897 US7698552B2 (en) | 2004-06-03 | 2004-06-03 | Launching a secure kernel in a multiprocessor system |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| TW200540640A true TW200540640A (en) | 2005-12-16 |
| TWI276967B TWI276967B (en) | 2007-03-21 |
Family
ID=33419035
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| TW093125590A TWI276967B (en) | 2004-06-03 | 2004-08-26 | A method, an apparatus and a system for initiating secure operations |
Country Status (6)
| Country | Link |
|---|---|
| US (12) | US7698552B2 (zh) |
| JP (1) | JP4065444B2 (zh) |
| CN (1) | CN1704922B (zh) |
| DE (1) | DE102005014462B4 (zh) |
| GB (2) | GB2429555B (zh) |
| TW (1) | TWI276967B (zh) |
Families Citing this family (43)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US8185602B2 (en) | 2002-11-05 | 2012-05-22 | Newisys, Inc. | Transaction processing using multiple protocol engines in systems having multiple multi-processor clusters |
| US8881270B2 (en) * | 2002-12-20 | 2014-11-04 | Creative Mines Llc | Method and apparatus for selectively enabling a microprocessor-based system |
| US7127567B2 (en) | 2003-12-18 | 2006-10-24 | Intel Corporation | Performing memory RAS operations over a point-to-point interconnect |
| US7127566B2 (en) * | 2003-12-18 | 2006-10-24 | Intel Corporation | Synchronizing memory copy operations with memory accesses |
| US7328368B2 (en) * | 2004-03-12 | 2008-02-05 | Intel Corporation | Dynamic interconnect width reduction to improve interconnect availability |
| US7698552B2 (en) | 2004-06-03 | 2010-04-13 | Intel Corporation | Launching a secure kernel in a multiprocessor system |
| US20060015732A1 (en) * | 2004-07-15 | 2006-01-19 | Sony Corporation | Processing system using internal digital signatures |
| US7552326B2 (en) | 2004-07-15 | 2009-06-23 | Sony Corporation | Use of kernel authorization data to maintain security in a digital processing system |
| US7568102B2 (en) | 2004-07-15 | 2009-07-28 | Sony Corporation | System and method for authorizing the use of stored information in an operating system |
| US7716494B2 (en) * | 2004-07-15 | 2010-05-11 | Sony Corporation | Establishing a trusted platform in a digital processing system |
| US7254694B2 (en) * | 2005-02-10 | 2007-08-07 | International Business Machines Corporation | Processors interconnect fabric with relay broadcasting and accumulation of partial responses |
| US8254411B2 (en) * | 2005-02-10 | 2012-08-28 | International Business Machines Corporation | Data processing system, method and interconnect fabric having a flow governor |
| US7779252B2 (en) * | 2006-03-21 | 2010-08-17 | Harris Corporation | Computer architecture for a handheld electronic device with a shared human-machine interface |
| US8041947B2 (en) * | 2006-03-23 | 2011-10-18 | Harris Corporation | Computer architecture for an electronic device providing SLS access to MLS file system with trusted loading and protection of program execution memory |
| US8127145B2 (en) * | 2006-03-23 | 2012-02-28 | Harris Corporation | Computer architecture for an electronic device providing a secure file system |
| US8060744B2 (en) * | 2006-03-23 | 2011-11-15 | Harris Corporation | Computer architecture for an electronic device providing single-level secure access to multi-level secure file system |
| US8973094B2 (en) | 2006-05-26 | 2015-03-03 | Intel Corporation | Execution of a secured environment initialization instruction on a point-to-point interconnect system |
| US7979714B2 (en) * | 2006-06-02 | 2011-07-12 | Harris Corporation | Authentication and access control device |
| US7650469B2 (en) * | 2006-09-06 | 2010-01-19 | International Business Machines Corporation | Determining whether a non-running processor has access to an address space |
| US8205024B2 (en) * | 2006-11-16 | 2012-06-19 | International Business Machines Corporation | Protecting ownership transfer with non-uniform protection windows |
| US8146150B2 (en) * | 2007-12-31 | 2012-03-27 | Intel Corporation | Security management in multi-node, multi-processor platforms |
| US8392985B2 (en) * | 2008-12-31 | 2013-03-05 | Intel Corporation | Security management in system with secure memory secrets |
| US9202015B2 (en) * | 2009-12-31 | 2015-12-01 | Intel Corporation | Entering a secured computing environment using multiple authenticated code modules |
| CN102812431A (zh) | 2010-03-22 | 2012-12-05 | Lrdc系统有限公司 | 用于识别与保护一组源数据的完整性的方法 |
| WO2012023050A2 (en) | 2010-08-20 | 2012-02-23 | Overtis Group Limited | Secure cloud computing system and method |
| WO2013103339A1 (en) * | 2012-01-04 | 2013-07-11 | Intel Corporation | Bimodal functionality between coherent link and memory expansion |
| US9075751B2 (en) | 2012-08-09 | 2015-07-07 | Intel Corporation | Secure data protection with improved read-only memory locking during system pre-boot |
| US9292569B2 (en) * | 2012-10-02 | 2016-03-22 | Oracle International Corporation | Semi-join acceleration |
| US9262177B2 (en) | 2012-12-19 | 2016-02-16 | International Business Machines Corporation | Selection of a primary microprocessor for initialization of a multiprocessor system |
| US8613090B1 (en) * | 2013-02-21 | 2013-12-17 | Atheer, Inc. | Method for processing a secure system manager |
| US8990921B2 (en) | 2013-02-21 | 2015-03-24 | Atheer, Inc. | Apparatus for processing with a secure system manager |
| US9250922B2 (en) | 2013-02-28 | 2016-02-02 | Qualcomm Incorporated | Method and apparatus for prefetching peripheral device drivers for smart phones and other connected devices prior to HLOS boot |
| US10289853B2 (en) * | 2016-03-31 | 2019-05-14 | Microsoft Technology Licensing, Llc | Secure driver platform |
| RU2641226C1 (ru) * | 2017-02-13 | 2018-01-16 | Самсунг Электроникс Ко., Лтд. | Способ функционирования secureos на многопроцессорных системах в мобильных устройствах |
| US10740496B2 (en) | 2017-02-13 | 2020-08-11 | Samsung Electronics Co., Ltd. | Method and apparatus for operating multi-processor system in electronic device |
| US10606764B1 (en) | 2017-10-02 | 2020-03-31 | Northrop Grumman Systems Corporation | Fault-tolerant embedded root of trust using lockstep processor cores on an FPGA |
| WO2020056015A1 (en) * | 2018-09-11 | 2020-03-19 | Amari.Ai Incorporated | Deployment and communications gateway for deployment, trusted execution, and secure communications |
| CN112307481B (zh) * | 2019-07-26 | 2023-10-10 | 杭州海康威视数字技术股份有限公司 | 一种系统可信启动方法、电子设备及计算机可读存储介质 |
| US11425123B2 (en) | 2020-04-16 | 2022-08-23 | Bank Of America Corporation | System for network isolation of affected computing systems using environment hash outputs |
| US11528276B2 (en) | 2020-04-16 | 2022-12-13 | Bank Of America Corporation | System for prevention of unauthorized access using authorized environment hash outputs |
| US11481484B2 (en) * | 2020-04-16 | 2022-10-25 | Bank Of America Corporation | Virtual environment system for secure execution of program code using cryptographic hashes |
| US11423160B2 (en) | 2020-04-16 | 2022-08-23 | Bank Of America Corporation | System for analysis and authorization for use of executable environment data in a computing system using hash outputs |
| US11693940B2 (en) * | 2021-06-23 | 2023-07-04 | Intel Corporation | Partitioned platform security mechanism |
Family Cites Families (31)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US4328542A (en) | 1979-11-07 | 1982-05-04 | The Boeing Company | Secure implementation of transition machine computer |
| US5418970A (en) * | 1986-12-17 | 1995-05-23 | Massachusetts Institute Of Technology | Parallel processing system with processor array with processing elements addressing associated memories using host supplied address value and base register content |
| EP0381645A3 (en) | 1989-01-18 | 1992-08-05 | International Business Machines Corporation | System and method for communicating between a plurality of processors |
| US5446856A (en) * | 1991-04-29 | 1995-08-29 | Intel Corporation | Circuitry and method for addressing global array elements in a distributed memory, multiple processor computer |
| US5822431A (en) | 1996-01-19 | 1998-10-13 | General Instrument Corporation Of Delaware | Virtual authentication network for secure processors |
| US5913921A (en) * | 1996-07-12 | 1999-06-22 | Glenayre Electronics, Inc. | System for communicating information about nodes configuration by generating advertisements having era values for identifying time reference for which the configuration is operative |
| US5841870A (en) * | 1996-11-12 | 1998-11-24 | Cheyenne Property Trust | Dynamic classes of service for an international cryptography framework |
| US5930500A (en) * | 1997-02-11 | 1999-07-27 | Lsi Logic Corporation | Parallel processor implementation of net routing |
| US6289447B1 (en) * | 1997-03-24 | 2001-09-11 | Intel Corporation | Topology dependent compensation to improve performance of self-compensated components including processors based on physical relationship with other system components |
| US6009488A (en) | 1997-11-07 | 1999-12-28 | Microlinc, Llc | Computer having packet-based interconnect channel |
| GB9818377D0 (en) * | 1998-08-21 | 1998-10-21 | Sgs Thomson Microelectronics | An integrated circuit with multiple processing cores |
| CN1173280C (zh) | 2000-10-26 | 2004-10-27 | 上海奇码数字信息有限公司 | 具有网络拓扑结构的自适应信息处理系统 |
| US7483398B1 (en) | 2001-05-18 | 2009-01-27 | Cisco Technology, Inc. | Method and system for detecting ring link provisioning mismatch |
| US7073059B2 (en) * | 2001-06-08 | 2006-07-04 | Hewlett-Packard Development Company, L.P. | Secure machine platform that interfaces to operating systems and customized control programs |
| US6957318B2 (en) * | 2001-08-17 | 2005-10-18 | Sun Microsystems, Inc. | Method and apparatus for controlling a massively parallel processing environment |
| US6857030B2 (en) | 2001-09-12 | 2005-02-15 | Sun Microsystems, Inc. | Methods, system and article of manufacture for pre-fetching descriptors |
| GB2381427A (en) * | 2001-10-27 | 2003-04-30 | Hewlett Packard Co | Spanning tree in peer to peer networks |
| US6745307B2 (en) * | 2001-10-31 | 2004-06-01 | Hewlett-Packard Development Company, L.P. | Method and system for privilege-level-access to memory within a computer |
| US7024555B2 (en) | 2001-11-01 | 2006-04-04 | Intel Corporation | Apparatus and method for unilaterally loading a secure operating system within a multiprocessor environment |
| US7398389B2 (en) * | 2001-12-20 | 2008-07-08 | Coretrace Corporation | Kernel-based network security infrastructure |
| US7631196B2 (en) | 2002-02-25 | 2009-12-08 | Intel Corporation | Method and apparatus for loading a trustable operating system |
| US7069442B2 (en) | 2002-03-29 | 2006-06-27 | Intel Corporation | System and method for execution of a secured environment initialization instruction |
| US6986006B2 (en) * | 2002-04-17 | 2006-01-10 | Microsoft Corporation | Page granular curtained memory via mapping control |
| US20030233540A1 (en) | 2002-06-13 | 2003-12-18 | International Business Machines Corporation | System and method for secured delivery of content stream across multiple channels |
| US20040003321A1 (en) | 2002-06-27 | 2004-01-01 | Glew Andrew F. | Initialization of protected system |
| US7121460B1 (en) * | 2002-07-16 | 2006-10-17 | Diebold Self-Service Systems Division Of Diebold, Incorporated | Automated banking machine component authentication system and method |
| CN1331318C (zh) | 2002-08-19 | 2007-08-08 | 上海贝尔有限公司 | 一种用于通信系统的基于自陷保护与调试装置 |
| US7454749B2 (en) * | 2002-11-12 | 2008-11-18 | Engineered Intelligence Corporation | Scalable parallel processing on shared memory computers |
| JP4062441B2 (ja) | 2003-07-18 | 2008-03-19 | 日本電気株式会社 | 並列処理システム及び並列処理プログラム |
| US20050028001A1 (en) | 2003-07-29 | 2005-02-03 | Jian Huang | Secured software patching and upgrade method for densely deployed networks having spanning-tree topology |
| US7698552B2 (en) * | 2004-06-03 | 2010-04-13 | Intel Corporation | Launching a secure kernel in a multiprocessor system |
-
2004
- 2004-06-03 US US10/859,897 patent/US7698552B2/en active Active
- 2004-08-26 TW TW093125590A patent/TWI276967B/zh not_active IP Right Cessation
- 2004-09-07 JP JP2004259781A patent/JP4065444B2/ja not_active Expired - Fee Related
- 2004-09-17 CN CN2004100787738A patent/CN1704922B/zh not_active Expired - Fee Related
- 2004-09-23 GB GB0620519A patent/GB2429555B/en not_active Expired - Fee Related
- 2004-09-23 GB GB0421213A patent/GB2414823B/en not_active Expired - Fee Related
-
2005
- 2005-03-30 DE DE102005014462A patent/DE102005014462B4/de not_active Expired - Fee Related
-
2007
- 2007-12-27 US US12/005,570 patent/US7774600B2/en not_active Expired - Lifetime
- 2007-12-27 US US12/005,569 patent/US7757081B2/en not_active Expired - Fee Related
- 2007-12-27 US US12/005,455 patent/US7770005B2/en not_active Expired - Lifetime
- 2007-12-27 US US12/005,450 patent/US7725713B2/en not_active Expired - Fee Related
-
2010
- 2010-06-28 US US12/824,694 patent/US8250364B2/en not_active Expired - Fee Related
- 2010-06-29 US US12/825,676 patent/US8161280B2/en not_active Expired - Fee Related
-
2012
- 2012-03-16 US US13/422,786 patent/US8464048B2/en not_active Expired - Fee Related
-
2013
- 2013-05-20 US US13/897,906 patent/US8874906B2/en not_active Expired - Lifetime
-
2014
- 2014-10-03 US US14/505,770 patent/US9213865B2/en not_active Expired - Fee Related
-
2015
- 2015-11-11 US US14/938,021 patent/US9507952B2/en not_active Expired - Fee Related
-
2016
- 2016-10-13 US US15/292,301 patent/US9779249B2/en not_active Expired - Fee Related
Also Published As
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| TW200540640A (en) | Launching a secure kernel in a multiprocessor system | |
| JP6301582B2 (ja) | 信頼されるネットワーク・ブートのシステムおよび方法 | |
| TWI582632B (zh) | 使用多重鑑別碼模組以進入安全計算環境之方法及系統、以及處理器 | |
| US11165766B2 (en) | Implementing authentication protocol for merging multiple server nodes with trusted platform modules utilizing provisioned node certificates to support concurrent node add and remove | |
| US11604881B2 (en) | Verification of a provisioned state of a platform | |
| WO2021139314A1 (zh) | 操作系统初始化方法、系统、计算机设备及存储介质 | |
| CN115329321A (zh) | 一种固件的启动方法、芯片及计算设备 | |
| WO2023051262A1 (zh) | 一种安全启动的方法、装置和系统 | |
| CN118468263A (zh) | 镜像验证方法、装置、片上系统、存储介质和程序产品 | |
| CN116208353A (zh) | 一种校验固件的方法、装置、网卡、芯片系统及服务器 | |
| CN115906046A (zh) | 可信计算系统及基于可信计算系统的度量方法 | |
| Papakotoulas et al. | Sustaining the Trust of an IoT Infrastructure | |
| CN120378385A (zh) | 一种交换机启动方法、装置、设备及存储介质 | |
| CN118798100A (zh) | 图形处理器芯片、电子设备及安全管理方法 |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| MM4A | Annulment or lapse of patent due to non-payment of fees |