離開集成電路談信息安全便是追求無源之水無根之木。為了保障應用于國計民生各個領域的電子信息系統的安全,我們必須從集成電路的硬件安全著手。
個人電腦的普及給半導體產業帶來了早期的增長動力,之后移動通信設備的發展讓人們將電子芯片攜帶在身邊。伴隨著近年來物聯網技術的大潮,一片片以普通硅砂為原材料的芯片,很快就會像粒粒細沙一般遍布世界的每一個角落。
硬件安全芯片便是眾多芯片中至關重要的一類。它們如同便衣保鏢,默默保護著現代人生活的各個方面。硬件安全芯片在我們的生活中無處不在,從提供互聯網購物和金融服務的運算中心到目前正在逐步取代現金的移動支付;從遍布在城市各個角落的移動通信基站到公共交通使用的一卡通;從基于芯片的銀行卡和信用卡到醫療電子和個人健康器械,不勝枚舉??梢哉f,硬件安全保障著國計民生的各個領域。
要保證一款芯片的安全,首先要確保整個產業鏈是可信和安全的。但是芯片是社會大分工的產物,需要遍布全球的成百上千家企業的參與和協作才能完成;所以需要通過技術手段并輔以行政手段來確保從最初的設計及驗證,到之后的制造測試和封裝,以及最后的物流和運輸均是安全可控的。從這個角度來說,自主研制并不意味著安全。
現代信息安全系統為使用者提供了保密性、完整性驗證和認證等密碼功能和服務。提供這些服務的系統的穩定性、安全性和可靠性便成為了重中之重。對于設計者和工程師來說,設計和實現這樣一個硬件安全系統是一項非常大的挑戰。因為硬件安全系統往往需要同時滿足傳統的性能指標和額外的安全指標,而兩類指標所指向的設計實現方向往往是相互矛盾的。
一般來說,安全計算設備的體系結構是分層的。每一層的安全都建立在對下面一層的信任上。系統的最底層通常由一種叫做信任根(root of trust)的模塊組成。信任根是受到系統其他模塊信賴的一組功能。純粹的軟件層面的安全解決方案并不存在,因為這一層面的安全解決方案一般都會被低于其的底層攻擊所繞過。所以信任根的功能模塊往往都是基于底層硬件實現的。由此可見,只追求系統安全而不考慮硬件安全無異于緣木求魚。
設計硬件安全芯片需要參與到集成電路設計的每一個環節,包括從晶體管的設計到標準單元庫的選用,從系統架構設計到密碼算法實現再到最終協議的設計。一個系統的安全性取決于它最薄弱的一環。設計者需要考慮系統各個方面的安全, 而攻擊者只需要攻擊一點就好了。
所謂“道高一尺,魔高一丈”,集成電路的硬件安全研究是與攻擊方法互相競爭發展的。早期針對安全系統的攻擊主要集中在對相關密碼算法的數學分析和破解上。近些年來涌現出眾多新型的物理攻擊方法,其中非常流行的兩種物理攻擊類別是旁路信息攻擊和故障注入攻擊。旁路信息攻擊利用安全密碼系統運行時的旁路信息來破解硬件系統安全,例如指令操作運行時間、系統瞬時功耗、電磁輻射和集成電路的光子釋放信息。學術界和工業界也在持續研究各種抵抗旁路攻擊的方法。故障注入攻擊則是一種通過在電路運行過程中引入特定類型的錯誤,并分析故障傳播而最終攻破密鑰的攻擊方法。相比于一般需要大量曲線采樣的功耗攻擊,故障攻擊僅需少量錯誤密文即可實現。
為了滿足應用場景下的安全性、靈活性、高性能和低功耗應用需求,清華大學密碼芯片與硬件安全研究團隊提出了新型動態可重構密碼芯片關鍵技術。其中抵御故障攻擊的時域空域隨機重構技術和抵御功耗攻擊的冗余噪聲隨機重構技術服務于密碼芯片安全性的要求。針對不同應用場景,研究團隊研發了基于熵擴散混淆組件參數可配的可重構運算單元架構技術,激進、分支流水和令牌控制的密碼任務并行化技術,以及密碼數據流圖引導的可重構配置信息管理技術,進而服務于密碼芯片的高性能、高能效和靈活性需求;利用這3種技術,分別從計算、控制和配置3個方面給出了適合密碼芯片應用的可重構芯片設計技術。此外,為了滿足物聯網設備的低功耗要求,研究團隊還提出了密碼計算強度感知的可重構陣列電壓自適應技術。
除了物理攻擊之外,硬件系統的安全還飽受各種漏洞的威脅。
2018年初,媒體披露主流高性能CPU普遍存在“熔斷”和“幽靈”等多個嚴重影響信息安全的安全漏洞。本次漏洞事件除了影響范圍廣泛之外,和以往一個顯著的區別是:它們都是硬件漏洞。目前的主要解決方案大部分都著眼于通過軟件補丁減輕危害,即使通過硬件固件更新也僅僅能夠修補部分漏洞。
在此次事件中,大部分的軟件安全方案都束手無策,甚至無法提出有效的方案檢測漏洞是否被利用。原因在于漏洞所依賴的硬件預測執行行為在軟件層面完全不可見。
到目前為止,漏洞事件仍然持續發酵,隨著研究的深入,不斷有新的漏洞被發現;與此同時,如何兼顧性能和安全這一話題也開始在處理器架構、芯片設計領域的學術和工業界引發廣泛的討論和反思,可謂影響深遠。
CPU芯片的硬件安全是計算系統的安全根基。無法確保CPU的硬件安全,就無法保證運行其上的軟件的安全,與之緊密關聯的系統安全和網絡安全則更無從談起。
針對該難題,研究團隊提出了基于高安全、高靈活可重構架構的“CPU硬件安全動態檢測管控技術”。這一技術克服了在CPU芯片商業部署前進行安全檢測這種傳統做法的先天不足,在CPU芯片部署后上電運行的過程中,用前文提到的新型動態可重構密碼芯片關鍵技術對CPU的所有重要行為(包括指令執行、內部狀態變化、與外部存儲及網絡設備的數據交互,以及預測執行、緩存控制在內的微架構行為等)進行快速采樣和實時分析。無論硬件木馬、漏洞、后門,還是惡意利用前門的行為,都能被及時發現并實施按需管控。
2018年7月,清華大學密碼芯片與硬件安全研究團隊和瀾起科技采用上述技術研制了津逮高性能CPU芯片。這是全球首款采用第三方的硅模塊來動態監控處理器內核硬件安全狀況的CPU。聯想、長城電腦、新華三集團等已完成了基于津逮CPU的高性能商用服務器的研制,并將于近日上市銷售(型號分別為聯想SR651、長城JW920、新華三R4900)。
該技術已成功入選第五屆世界互聯網大會(2018年11月)15項全球領先科技成果。這是國內高校原創技術成果第二次入選該會議全球領先科技成果(中國科學技術大學的光量子計算機曾于2017年入選)。
一勞永逸的硬件安全解決方案并不存在,新的攻擊方法和安全威脅不斷地涌現。立足當今,展望不久的未來,可以預見實用量子計算機的研制成功會摧毀現有公鑰密碼算法的數學根基;快速發展的人工智能技術被廣泛用于包括旁路分析和故障注入等在內的攻擊手段中;物聯網設備的無處不在以及大數據時代的到來為保護個人隱私的技術提出了新的挑戰。保障集成電路硬件安全任重而道遠。