開源 OpenTitan 晶片將取代英特爾和 ARM 專有的信任根

開源 OpenTitan 晶片將取代英特爾和 ARM 專有的信任根

非盈利機構 低RISC 與 Google 和其他贊助商合作,5 年 2019 月 XNUMX 日 呈現 項目 開放泰坦,它稱之為“第一個開源項目,旨在創建一個開放的、高品質的晶片架構,並在硬體層面具有信任根(RoT)。”

基於 RISC-V 架構的 OpenTitan 是一款專用晶片,用於安裝在資料中心的伺服器和任何其他需要確保啟動真實性、保護韌體免遭更改並消除 Rootkit 可能性的裝置上:這些是主機板、網路卡、路由器、物聯網設備、行動裝置等。

當然,現代處理器中也存在類似的模組。例如,英特爾硬體啟動保護模組是英特爾處理器的信任根源。它在載入作業系統之前透過信任鏈驗證 UEFI BIOS 的真實性。但問題是,鑑於我們無法保證設計中不會出現錯誤,並且無法檢查它,我們可以在多大程度上信任專有的信任根?看文章 「薛丁格值得信賴的下載。英特爾啟動保護” 描述了「多年來在多家供應商的生產中克隆的錯誤如何允許潛在的攻擊者使用這項技術在系統中創建一個無法刪除的隱藏rootkit(即使使用程式設計師)。

供應鏈中設備受損的威脅出奇地真實:顯然,任何業餘電子工程師 可以將錯誤焊接到伺服器主機板上使用成本不超過 200 美元的設備。一些專家懷疑「預算數億美元的組織可能會這樣做很多年」。雖然沒有證據,但理論上是有可能的。

“如果你不能信任硬體引導程序,那麼遊戲就結束了,” говорит Gavin Ferris,lowRISC 董事會成員。 “作業系統做什麼並不重要——如果作業系統啟動時你已經受到損害,那麼剩下的就是技術問題了。”你已經完成了。”

這個問題應該由同類第一個開放硬體平台 OpenTitan 來解決(GitHub 儲存庫, 文件, 硬體規格)。谷歌表示,擺脫專有解決方案將有助於改變「低迷且有缺陷的 RoT 產業」。

在發現英特爾管理引擎(ME)晶片中內建的 Minix 作業系統後,Google本身開始開發 Titan。這種複雜的作業系統以不可預測和不可控的方式擴大了攻擊面。 Google 試圖擺脫英特爾管理引擎(ME),但沒有成功。

信任的根源是什麼?

系統啟動過程的每個階段都會檢查下一個階段的真實性,從而生成 信任鏈.

信任根 (RoT) 是一種基於硬體的身份驗證,可確保信任鏈中第一個可執行指令的來源無法變更。 RoT 是 Rootkit 的基本保護。這是啟動過程中的關鍵階段,涉及系統後續的啟動——從BIOS到OS和應用程式。它必須驗證每個後續下載步驟的真實性。為此,每個階段都會使用一組數位簽章金鑰。 TPM(可信任平台模組)是最受歡迎的硬體金鑰保護標準之一。

開源 OpenTitan 晶片將取代英特爾和 ARM 專有的信任根
建立信任根。上面是一個五步驟啟動過程,它創建了一個信任鏈,從不可變記憶體中的引導程式開始。每個步驟都使用公鑰來驗證下一個要載入的元件的身份。佩里李的書中的插圖 《物聯網架構》

RoT 可以透過不同的方式啟動:

  • 從韌體或不可變記憶體載入映像和根密鑰;
  • 使用熔絲位將根密鑰儲存在一次性可編程記憶體中;
  • 將程式碼從受保護的記憶體區域載入到受保護的儲存體中。

不同的處理器以不同的方式實現信任根。英特爾和ARM
支援以下技術:

  • ARM信任區。 ARM 向晶片製造商出售專有的矽塊,提供信任根和其他安全機制。這將微處理器與不安全的核心分開;它運行受信任的作業系統,這是一個安全的作業系統,具有定義明確的接口,用於與不安全的元件進行互動。受保護的資源駐留在可信任核心中,並且應該盡可能輕量。不同類型的元件之間的切換是使用硬體上下文切換來完成的,從而無需安全監控軟體。
  • 英特爾啟動保護 是一種硬體機制,用於透過加密方式或透過測量過程來驗證初始引導區塊的真實性。為了驗證初始區塊,製造商必須產生一個 2048 位元金鑰,該金鑰由兩部分組成:公有和私有。公鑰是透過在製造過程中「引爆」熔絲位而印在電路板上的。這些位是一次性使用的,不能更改。金鑰的私有部分會產生數位簽名,用於後續下載階段的身份驗證。

OpenTitan 平台公開了此類硬體/軟體系統的關鍵部分,如下圖所示。

開源 OpenTitan 晶片將取代英特爾和 ARM 專有的信任根

開放泰坦平台

OpenTitan 平台的開發由非營利組織 lowRISC 管理。工程團隊位於英國劍橋,主要贊助商為Google。創始合作夥伴包括蘇黎世聯邦理工學院、捷德行動安全、新唐科技和西部數據。

谷歌 發佈公告 Google 開源公司部落格上的專案。該公司表示,OpenTitan 致力於「為資料中心伺服器、儲存、邊緣設備等的 RoT 設計和整合提供高品質的指導」。

信任根是可信任運算模組中最底層信任鏈的第一個環節,始終受到系統的完全信任。

RoT 對於包括公鑰基礎設施 (PKI) 在內的應用程式至關重要。它是物聯網應用程式或資料中心等複雜系統所依賴的安全系統的基礎。那麼谷歌支持這個計畫的原因就很清楚了。目前它在五大洲擁有19個資料中心。資料中心、儲存和關鍵任務應用程式存在巨大的攻擊面,為了保護這些基礎設施,Google最初在 Titan 晶片上開發了自己的信任根。

專有泰坦晶片 首次推出針對Google資料中心的 2017年XNUMX月 在 Google Cloud Next 會議上。 「我們的電腦對每個軟體包執行加密檢查,然後決定是否授予其存取網路資源的權限。 Titan 整合到這個過程中並提供額外的保護層,」谷歌代表在演講中說道。

開源 OpenTitan 晶片將取代英特爾和 ARM 專有的信任根
谷歌伺服器中的泰坦晶片

Titan 架構以前由 Google 擁有,但現在作為開源專案成為公共領域。

該專案的第一階段是在晶片級創建邏輯 RoT 設計,包括開源微處理器 低RISC ibex、加密處理器、硬體隨機數產生器、用於非揮發性和非揮發性儲存的金鑰和記憶體層次結構、安全機制、I/O 週邊和安全啟動過程。

谷歌表示 OpenTitan 基於三個關鍵原則:

  • 每個人都有機會查看平台並做出貢獻;
  • 透過開放不受專有供應商限制阻礙的邏輯安全設計來提高靈活性;
  • 品質不僅由設計本身保證,還由參考韌體和文件保證。

「目前具有信任根的晶片是非常專有的。他們聲稱是安全的,但現實是你認為這是理所當然的,並且無法親自驗證它,」Google Titan 計畫的首席安全科學家 Dominic Rizzo 說。 「現在,第一次可以在不盲目相信專有信任根設計的開發人員的情況下提供安全性。所以基礎不僅紮實,而且是可以驗證的。”

Rizzo 補充道,OpenTitan 可以被視為「與當前狀況相比,完全透明的設計」。

據開發人員稱,OpenTitan 絕不應該被視為成品,因為開發尚未完成。他們特意在開發過程中開放了規格和設計,以便每個人都可以在生產開始之前對其進行審查、提供輸入並改進系統。

要開始生產 OpenTitan 晶片,您需要申請並獲得認證。顯然,不需要版稅。

來源: www.habr.com

添加評論