芯來科技的RISC-V TEE實踐:開放架構下的嵌入式安全創(chuàng)新
隨著物聯(lián)網和嵌入式設備的普及,數據泄露、惡意軟件和未經授權訪問等安全威脅日益嚴峻,嵌入式系統(tǒng)對安全隔離的需求愈發(fā)迫切??尚艌?zhí)行環(huán)境(TEE)應運而生,通過硬件和軟件協(xié)同設計,為敏感數據和關鍵操作提供隔離的執(zhí)行環(huán)境。ARM的TrustZone和x86的SGX等技術已在TEE實現(xiàn)中占據主導,但均存在局限。ARM TrustZone依賴專有硬件擴展,增加了設計復雜性和成本,且靈活性有限;x86 SGX則因指令集封閉和高功耗,難以適應資源受限的嵌入式場景。相比之下,RISC-V作為開源指令集架構,憑借其模塊化設計和高可定制性,為TEE提供了更靈活、低成本的實現(xiàn)路徑,支持多樣化的安全需求。
在第五屆RISC-V中國峰會嵌入式系統(tǒng)分論壇上,芯來科技高級軟件工程師桂兵發(fā)表了題為“Nuclei TEE:RISC-V安全系統(tǒng)實踐”的演講,詳細介紹了芯來科技在RISC-V架構上實現(xiàn)可信執(zhí)行環(huán)境(TEE)的最新進展。
TEE(可信執(zhí)行環(huán)境)最早由2006年的開放移動終端平臺(OMTP)提出,是一種支持安全與非安全環(huán)境并存的雙系統(tǒng)安全解決方案。2010年,GlobalPlatform(GP)進一步制定了TEE規(guī)范標準。TEE架構支持多種處理器架構,包括ARM的TrustZone以及RISC-V的物理內存保護(PMP)、WorldGuard和輸入輸出PMP(IOPMP)等機制。這些技術通過硬件隔離確保敏感操作與非敏感操作的安全分離,是現(xiàn)代嵌入式系統(tǒng)安全設計的核心。
為便于理解,桂兵簡要對比了ARM的TrustZone架構。在ARM A系列處理器中,TrustZone通過增加專用的安全模式以及安全相關的硬件擴展(如TrustZone地址空間控制器TZASC、保護控制器TZPC和通用中斷控制器GIC)實現(xiàn)安全隔離。而ARM M系列則通過地址空間劃分區(qū)分安全與非安全區(qū)域,依賴SG(安全網關)、BXNS(跳轉到非安全)和BLXNS(帶鏈接跳轉到非安全)三條指令實現(xiàn)安全函數調用。非安全代碼需通過特定的非安全可調用(NSC)區(qū)域執(zhí)行SG指令,才能訪問安全函數,確保安全域與非安全域的受控交互。
芯來科技根據其產品線的特點,針對AP級和MCU級處理器開發(fā)了差異化的TEE解決方案。對于AP級處理器,芯來采用機器模式(M)、管理模式(S)和用戶模式(U),結合PMP和增強型中斷控制器,構建了基于開源OP-TEE框架的安全架構。桂兵提到,去年公司曾展示過一個服務流程,驗證了該架構的實際應用。內存隔離通過PMP實現(xiàn),例如將M模式分配到PMP0區(qū)域以運行安全代碼。此外,芯來在硬件層面通過總線、緩存和轉換旁路緩沖區(qū)(TLB)實現(xiàn)了進一步的隔離,確保安全與非安全環(huán)境的物理分離。
在AP級方案的中斷處理機制中,芯來設計了以S模式為主的處理流程,M模式僅作為中轉,負責轉發(fā)非關鍵中斷。為防止篡改,公司對平臺級中斷控制器(PLIC)進行了優(yōu)化,確保M模式啟用中斷后,S模式無法修改相關配置。在安全世界運行時,非安全中斷被暫時擱置,以避免干擾;而非安全世界運行時,安全中斷仍可被響應。這種動態(tài)中斷管理機制在保障安全的同時,兼顧了系統(tǒng)效率。
對于MCU級處理器,芯來基于ARM的開源Trusted Firmware-M(TF-M)框架開發(fā)了TEE解決方案,適合資源受限的設備。該方案將安全執(zhí)行環(huán)境(SPE)置于M模式,非安全執(zhí)行環(huán)境(NSPE)則運行于S和U模式,通過PMP實現(xiàn)硬件級隔離。然而,桂兵指出,目前的實現(xiàn)僅限于SPE與NSPE之間的隔離,SPE內部的進一步隔離尚待開發(fā)。在中斷響應方面,芯來通過配置機器定時器(mtimer)區(qū)分安全與非安全中斷,嚴重中斷可直接路由至M模式處理,次要中斷則交由S模式響應。函數調用采用類似ARM的跳板機制,在M模式維護一個函數ID列表,驗證NSPE的調用請求,非法調用將觸發(fā)錯誤,確保系統(tǒng)安全性。
在比較AP級與MCU級方案時,桂兵強調了兩者的核心差異。在AP級方案中,S模式支持安全與非安全狀態(tài),適用于復雜應用場景;而在MCU級方案中,S模式全部為非安全狀態(tài),簡化了資源受限設備的設計。此外,MCU方案采用的增強型核心本地中斷控制器(ECLIC)支持中斷嵌套,而AP方案使用的PLIC天然不支持嵌套。芯來的測試流程首先驗證M模式運行情況,隨后測試NSPE對SPE服務的調用,確保整個TEE系統(tǒng)的完整性。
演講最后,桂兵通過一個演示展示了芯來TEE方案的實際運行效果,驗證了內存隔離、中斷處理和安全函數調用的可靠性。演示基于OP-TEE和TF-M框架,展現(xiàn)了安全與非安全環(huán)境的無縫交互,凸顯了芯來解決方案的實用性與穩(wěn)定性。
芯來科技的TEE實踐充分體現(xiàn)了RISC-V開放架構在安全嵌入式系統(tǒng)中的潛力。通過針對AP和MCU場景的定制化方案,展示了RISC-V在滿足現(xiàn)代安全需求方面的靈活性。PMP的內存隔離、優(yōu)化的中斷處理和硬件級保護機制共同構成了健壯且可擴展的解決方案。
據悉,芯來科技成立于2018年,其RISC-V CPU IP完全自主研發(fā),累計出貨量已達數億顆,穩(wěn)居國內RISC-V IP市場領先地位。目前,公司產品線涵蓋六個系列,包括通用型和專用型處理器IP,廣泛滿足不同應用需求,奠定了其在行業(yè)第一梯隊的地位。
芯來科技的在RISC-V上實現(xiàn)的TEE創(chuàng)新,為全球RISC-V社區(qū)在安全嵌入式系統(tǒng)領域的創(chuàng)新提供了借鑒。隨著RISC-V生態(tài)的持續(xù)發(fā)展,芯來科技的TEE解決方案無疑將在推動開源硬件安全應用方面發(fā)揮重要作用。