撰文:Oliver Jaros,CMT Digital 分析師、Shlok Khemani,decentralised.co

編譯:Yangz,Techub News

Uber 的舊金山總部與大多數科技公司類似,有着開放式的樓層設計,員工們可以自由活動,分享自己的想法。然而,在主樓層的中心,有那麼一間鮮有員工涉足的房間。金屬和玻璃的外牆、一個可以讓透明玻璃變得不透明的開關,以及頻繁出現的安保人員,都讓這個房間顯得十分神祕。

這就是 Uber 的「作戰室」,一個全天候運作的空間,主要供高管們集思廣益,以解決公司面臨的最大問題。爲了保密,這個房間嚴格按照「need to know」原則開放。而這種保密措施是極其必要的,畢竟爲佔據網約車市場的主導地位,Uber 需要在全球範圍內與競爭對手展開激烈的競爭,而對手們不會放過任何可能泄露其戰略的機會。在作戰室裏發生的一切只會留在這個房間裏。

Uber 的作戰室內部 ;來源:Andrew Chen,a16z

這種在原本可進入空間內設置私人隔間的做法很常見。蘋果公司在開展祕密項目時,會將指定團隊安置在與總部分開的其他建築中。國會大廈和其他美國政府大樓都設有敏感信息設施(SCIF),爲敏感討論提供隔音牆和電磁屏蔽。我們自己家裏或入駐的酒店房間也會設有保險箱。

安全飛地(Secure Enclaves)已經延展到了物理世界之外。如今,我們主要通過計算機來存儲數據和處理信息。隨着我們對硅基機器的依賴性的不斷增長,攻擊和泄露的風險也在增加。就像 Uber 的作戰室一樣,計算機需要一個獨立的空間來存儲最敏感的數據並執行關鍵計算。這個空間被稱爲可信執行環境(TEE)。

雖然 TEE 已成爲加密貨幣行業的熱門詞彙,但其目的和功能卻經常被誤解。我們希望通過本文來改變這一現狀。在此,我們將向您解釋關於 TEE 的一切必要知識,包括它們是什麼、爲什麼重要、我們每天使用它們的方式,以及它們如何幫助構建更好的 Web3 應用。

TEE 已無處不在

首先,我們先來了解一下 TEE 的定義。

TEE 是設備主處理器內的專用安全區域,可確保正在處理的數據和代碼的機密性。TEE 提供了一個獨立於主操作系統的隔離執行環境,對於維護處理敏感信息的應用的數據安全至關重要。

TEE 主要提供兩種保證。

  1. 隔離執行:TEE 在隔離環境中運行代碼。這意味着,即使主操作系統受到破壞,TEE 中的代碼和數據仍然是安全的。

  2. 內存加密:在 TEE 內處理的數據都經過加密。這可確保即使攻擊者訪問了物理內存,也無法破譯 TEE 中存儲的敏感信息。

而要了解 TEE 的重要性,你們手中可能正在用於閱讀本文的設備 iPhone,就是很好的說明。FaceID 已成爲 iPhone 驗證用戶訪問設備的主要方式。在幾百毫秒的時間裏,設備內部進行了如下流程:

  1. 首先,點陣投影儀會將 3 萬多個不可見的紅外線(IR)點陣投射到用戶臉上。紅外攝像頭捕捉這一圖案和麪部的紅外圖像。在弱光條件下,泛光照明器可提高可見度。

  2. 其次,處理器接收這些原始數據,並創建面部的數學模型,包括深度數據、輪廓和獨特特徵。

  3. 最後,數學模型與 FaceID 初始設置時存儲的模型進行比對。如果模型足夠精確,就會向 iOS 系統發送「成功」信號,設備就會解鎖。如果比對失敗,設備將保持鎖定狀態。

解鎖手機時,投射在臉部的 3 萬個紅外點;來源:YouTube

FaceID 不僅用於解鎖設備,還用於驗證其他操作,如登錄應用以及進行支付。因此,任何安全漏洞都會造成嚴重後果。如果模型創建和比對過程遭到破壞,非設備所有者就可以解鎖設備、訪問所有者的個人數據並進行欺詐性金融交易。如果攻擊者設法提取存儲的用戶面部數學模型,就會導致生物識別數據被盜,並嚴重侵犯隱私。

當然,蘋果公司在實施 FaceID 時很講究方法。所有的處理和存儲都是通過The Secure Enclave進行的,這是一個內置在 iPhone 和其他蘋果設備中的獨立處理器,其功能與其他內存和進程隔離。它的設計目的是,即使設備的其他部分受到攻擊,攻擊者也無法訪問它。除了生物識別技術,它還能存儲和保護用戶的支付信息、密碼、鑰匙鏈和健康數據。

蘋果的 The Secure Enclave 只是 TEE 的一個例子。由於大多數計算機都要處理敏感數據和計算,幾乎所有的處理器製造商現在都提供了某種形式的 TEE。英特爾提供軟件防護擴展(SGX),AMD 有AMD 安全處理器,ARM 有TrustZone,高通提供Secure Foundation,而 Nvidia 的最新 GPU 則帶有保密計算功能。

TEE 也有軟件變體。例如,AWS Nitro Enclaves允許用戶創建隔離的計算環境,以保護和處理亞馬遜常規 EC2 實例中的高度敏感數據。同樣,谷歌雲和微軟 Azure 也提供保密計算。

蘋果公司最近還宣佈推出私有云計算(Private Cloud Compute),這是一個雲智能系統,旨在私下處理設備無法在本地提供服務的人工智能請求。類似的,OpenAI也在爲人工智能雲計算開發安全基礎設施。

TEE 之所以令人興奮,部分原因是它們在個人電腦和雲服務提供商中無處不在。它使開發人員能夠創建受益於用戶敏感數據的應用,而不必擔心數據泄露和安全漏洞。它還能通過生物識別身份驗證和密碼等創新技術直接改善用戶體驗。

那麼,這些與加密貨幣有什麼關係呢?

遠程證明

TEE 爲外部無法篡改的計算提供了可能,而區塊鏈技術也能提供類似的計算保證。智能合約本質上是計算機代碼,一旦部署,就會自動執行,外部參與者無法更改。

不過,在區塊鏈上運行計算有一些限制:

  1. 與普通計算機相比,區塊鏈的處理能力有限。例如,以太坊上的一個區塊每 12 秒生成一次,最多隻能容納 2 MB 的數據。這比軟盤的容量還小,而軟盤已是一種過時的技術。雖然區塊鏈的速度越來越快,功能也越來越強大,但它們仍然無法執行復雜的算法,比如 FaceID 背後的算法。

  2. 區塊鏈缺乏原生隱私。所有分類賬數據對所有人都是可見的,因此不適合依賴個人身份、銀行餘額、信用評分和病史等隱私信息的應用。

TEE 並無這些限制。雖然 TEE 的速度比普通處理器慢,但它們仍然比區塊鏈快上幾個數量級。此外,TEE 本身具有隱私保護功能,默認情況下會對所有處理過的數據進行加密。

當然,需要隱私和更強計算能力的鏈上應用可以從 TEE 的互補功能中獲益。但是,區塊鏈是高度可信的計算環境,賬本上的每個數據點都應可追溯到其來源,並在衆多獨立計算機上覆制。相比之下,TEE 流程發生在本地物理或雲環境中。

所以,我們需要一種方法來結合這兩種技術,這就需要用到遠程驗證。那麼,何爲遠程證明,讓我們繞道中世紀,先了解一下背景。

在電話、電報和互聯網等技術發明之前,由人類信使傳遞手寫信件是遠距離發送信息的唯一方式。但是,收信人如何才能確保信息真正來自原定的發信人,並且沒有被篡改呢?數百年來,蠟封成爲了這一問題的解決方案。

裝有信件的信封會用熱蠟蓋上獨特而複雜的圖案,通常是國王、貴族或宗教人物的紋章或標誌。由於每個圖案對發信人來說都是獨一無二的,沒有原始印章幾乎無法複製,因此收信人可以確信信件的真實性。此外,只要印章完好無損,收件人也可以確信信息未被篡改。

英國國璽(Great Seal of the Realm):用來象徵君主批准國家文件的印章

遠程證明相當於現代的印章,即由 TEE 生成的加密證明,允許持有者驗證其中運行的代碼的完整性和真實性,並確認 TEE 未被篡改。其工作原理如下:

  1. TEE 生成一份報告,其中包含有關其狀態和內部運行代碼的信息。

  2. 該報告使用只有真正的 TEE 硬件才能使用的密鑰進行加密簽名。

  3. 簽名後的報告將發送給遠程驗證器。

  4. 驗證器會檢查簽名,確保報告來自真正的 TEE 硬件。然後檢查報告內容,確認預期代碼正在運行且未被修改。

  5. 如果驗證成功,遠程方就可以信任 TEE 及其內部運行的代碼。

爲了將區塊鏈與 TEE 進行結合,這些報告可以發佈在鏈上,並由指定的智能合約驗證證明。

那麼,TEE 如何幫助我們構建更好的加密貨幣應用呢?

TEE 在區塊鏈中的實際用例

作爲以太坊 MEV 基礎設施中的「領導者」,Flashbot 的解決方案MEV-boost將區塊提議者與區塊構建者分開,並在兩者之間引入了一個名爲「中繼器」的可信實體中介。中繼器驗證區塊的有效性,進行拍賣以選出獲勝的區塊,並防止驗證者利用構建者發現的 MEV 機會。

MEV-Boost 架構

然而,如果中繼器是中心化的,比如三個中繼器處理超過80%的區塊,仍會出現問題。正如這篇博文所概述的,這種中心化存在着中繼器審查交易、與構建者串通給予某些交易優先於其他交易的風險,以及中繼器本身可能竊取 MEV 的風險。

那麼,爲什麼智能合約不直接實施中繼功能呢?首先,中繼軟件非常複雜,無法直接在鏈上運行。此外,使用中繼器是爲了保持輸入(由構建者創建的區塊)的私密性,以免 MEV 被盜。

TEE 就能很好解決這一問題。通過在 TEE 中運行中繼軟件,中繼器不僅可以保持輸入區塊的私密性,同時還能證明獲勝區塊是在沒有串通的情況下公平選出的。目前,Flashbots 正在開發的SUAVE(正在測試中)就是一種由 TEE 驅動的基礎設施。

最近,本刊和CMT Digital探討了有關解決者(Solver)網絡和意圖(Intent)如何幫助鏈抽象並解決加密貨幣應用的用戶體驗問題,我們都提到了這麼一個解決方案,即訂單流拍賣,它是在 MEV boost 中進行的拍賣的通用版本,而 TEE 可以提高這些訂單流拍賣的公平性和效率。

此外,TEE 對 DePIN 應用也有很大幫助。DePIN 是貢獻資源(如帶寬、計算、能源、移動數據或 GPU)以換取代幣獎勵的設備網絡,因此供應方完全有動機通過改變 DePIN 軟件來欺騙系統,例如,顯示同一設備的重複貢獻,以賺取更多獎勵。

不過,正如我們所見,大多數現代設備都有某種形式的內置 TEE。DePIN 項目可以要求生成通過 TEE 創建的設備唯一標識符的證明,確保設備是真實的,並運行預期的安全軟件,進而遠程驗證貢獻是否合法且安全。Bagel就是一個正在探索使用 TEE 的數據 DePIN 項目。

另外,TEE 在 Joel 近日探討的 Passkey 技術中也發揮了重要作用。Passkey 是一種將私鑰存儲在本地設備或雲解決方案 TEE 中的身份驗證機制,用戶無需管理助記詞,且支持跨平臺錢包,允許社交和生物認證,並簡化了密鑰的恢復流程。

Clave和Capsule將該技術運用於嵌入式消費錢包,而硬件錢包公司Ledger則使用 TEE 生成和存儲私鑰。CMT Digital 投資的 Lit Protocol 爲應用、錢包、協議和人工智能代理的開發者提供去中心化簽名、加密和計算的基礎設施。該協議使用TEE 作爲其密鑰管理和計算網絡的一部分。

TEE 也有其他變體。隨着生成式 AI 的發展,要區分 AI 生成的圖像和真實圖像變得越來越困難。爲此,索尼、尼康和佳能等大型相機制造商正在集成爲捕獲的圖像實時分配數字簽名的技術。它們還爲第三方提供基礎設施,通過驗證證明來檢查圖像的出處。雖然這種基礎設施目前是中心化的,但我們希望這些證明將來能在鏈上得到驗證。

上週,我寫了一篇關於 zkTLS 如何以可驗證的方式將 Web2 信息引入 Web3 的文章。我們討論了使用 zkTLS 的兩種方法,包括多方計算(MPC)與代理。而 TEE 提供了第三種方法,即在設備的安全飛地中處理服務器連接,並在鏈上發佈計算證明。Clique就是一個正在實施基於 TEE 的 zkTLS 的項目。

此外,以太坊 L2 解決方案Scroll和Taiko正在嘗試多證明方法,旨在將 TEE 與 ZK 證明集成在一起。TEE 可以更快、更經濟高效地生成證明,且不會增加最終時間。它們通過增加證明機制的多樣性以及減少錯誤和漏洞補充了 ZK 證明。

在基礎設施層面,也出現了一些支持越來越多的應用使用 TEE 遠程證明的項目。Automata正在推出一個模塊化驗證鏈,作爲 Eigenlayer AVS,充當遠程驗證的註冊中心,使其可公開驗證並易於訪問。Automata 與各種 EVM 鏈兼容,可在整個 EVM 生態中實現可組合的 TEE 證明。

另外,Flashbots 正在開發一種 TEE 協處理器Sirrah,用於在 TEE 節點和區塊鏈之間建立安全通道。Flashbots 還爲開發人員提供代碼,以創建可輕鬆驗證 TEE 證明的 Solidity 應用。他們正在使用上文提到的 Automata 驗證鏈。

「玫瑰是帶刺的」

雖然 TEE 用途廣泛,且已應用於加密貨幣的各個領域,但採用該技術並非沒有挑戰。希望採用 TEE 的構建者們能夠牢記其中一些要點。

首先,最主要的考慮因素是 TEE 需要一個可信設置。這意味着,開發人員和用戶必須相信設備製造商或雲提供商會堅持安全保證,不會擁有(或向政府等外部行爲者提供)進入系統的後門。

另一個潛在問題是邊信道攻擊(SCA)。想象一下在教室裏進行的選擇題測試,雖然你看不到任何人的試卷,但你完全可以觀察到邊上同學在選擇不同答案時花費時間的長短。

邊信道攻擊的原理類似。攻擊者利用功耗或時序變化等間接信息來推斷 TEE 內處理的敏感數據。要減少這些漏洞,需要仔細實施加密操作和恆定時間算法,以儘量減少 TEE 代碼執行過程中的可觀測變化。

英特爾 SGX 等 TEE 已被證實存在漏洞。2020 年的SGAxe 攻擊利用英特爾 SGX 中的漏洞從安全飛地中提取了加密密鑰,可能會泄露雲環境中的敏感數據。 2021 年,研究人員展示了「SmashEx」攻擊,該攻擊可導致 SGX 飛地崩潰,並可能泄露機密信息。「Prime+Probe」技術也是一種邊信道攻擊,可通過觀察緩存訪問模式從 SGX 外圍設備中提取加密密鑰。所有這些例子都凸顯了安全研究人員與潛在攻擊者之間的 「貓鼠遊戲」。

世界上大多數服務器都使用 Linux 的一個原因就是它強大的安全性。這得益於它的開放源代碼特性,以及成千上萬的程序員不斷測試軟件並解決出現的漏洞。同樣的方法也適用於硬件。OpenTitan是一個開源項目,旨在使硅信任根(RoT,TEE 的另一個術語)更加透明、可信且安全。

未來展望

除了 TEE 之外,還有其他幾種隱私保護技術可供構建者使用,比如零知識證明、多方計算和全同態加密。對這些技術進行全面比較超出了本文的討論範圍,但 TEE 有兩個比較突出的優勢。

首先是其普遍性。其他技術的基礎架構仍處於萌芽階段,而 TEE 已成爲主流,並集成到了大多數現代計算機中,爲希望利用隱私技術的創始人們降低了技術風險。其次,與其他技術相比,TEE 的處理開銷要低得多。雖然這一特性涉及到安全權衡,但對於許多使用案例來說,它不失爲一種實用的解決方案。

最後,如果您正在考慮 TEE 是否適合您的產品,請自問以下問題:

  1. 產品是否需要在鏈上證明覆雜的鏈外計算?

  2. 應用輸入或主要數據點是否需要隱私化?

如果答案都是肯定的,那麼 TEE 就值得一試。

不過,考慮到 TEE 仍容易受到攻擊的事實,請時刻保持警惕。如果應用的安全價值低於攻擊成本(攻擊成本可能高達數百萬美元),您可以考慮單獨使用 TEE。但是,如果你正在構建「安全至上」的應用,如錢包和 Rollup,則應考慮使用去中心化 TEE 網絡(如 Lit Protocol),或將 TEE 與其他技術(如 ZK 證明)結合使用。

與構建者不同,投資者可能更關心 TEE 的價值體現,以及是否會有價值數十億美元的公司因這項技術崛起。

從短期來看,在許多團隊不斷嘗試使用 TEE 的過程中,我們認爲價值將在基礎設施層面產生,包括特定於 TEE 的 Rollup(如 Automata 和 Sirrah),以及爲使用 TEE 的其他應用提供關鍵構件的協議(如 Lit)。隨着更多 TEE 協處理器的推出,鏈外隱私計算的成本將會降低。

而從長遠來看,我們預計利用 TEE 的應用和產品的價值將超過基礎設施層。不過,需要注意的是,用戶採用這些應用並不是因爲它們使用了 TEE,而是因爲它們是解決真正問題的優秀產品。我們已在 Capsule 等錢包中看到了這一趨勢,與瀏覽器錢包相比,Capsule 的用戶體驗得到了極大改善。許多 DePIN 項目可能僅使用 TEE 進行身份驗證,而不是將其作爲核心產品的一部分,但它們也將積累巨大的價值。

每過一週,我們對「我們正處於從胖協議論向胖應用論轉變的階段」這一論斷的信心就會增強一分。我們希望 TEE 等技術也能順應這一趨勢。X 上的 timeline 不會告訴你這一點,但隨着 TEE 等技術的成熟,加密貨幣領域將迎來前所未有的激動人心的時刻。