摘要
隨著信息技術在汽車行業的迅速發展,對車輛架構中安全功能的需求不斷增加。通常通過在電子中央單元(ECU)中添加硬件安全模塊(HSM)來實現這一目標。因此,可以通過在HSM中使用嵌入式硬件加速器進行秘密密碼計算來加強安全通信。然而,目前還沒有通用的標準來設計汽車HSM的架構。汽車行業期望未來能夠設計出一種通用的汽車HSM,不僅能夠滿足不斷增長的性能需求,還能夠進一步抵御攻擊者利用大規模量子計算機進行的攻擊。未來量子計算機的到來促使人們研究后量子密碼學(PQC),以確保未來的HSM的安全性。我們對NIST的PQC標準化過程中的候選方案進行了分析,并提出了用于下一代汽車HSM的新硬件加速器集。我們的評估結果表明,構建一個后量子安全的汽車HSM是可行的,并且能夠滿足現代車輛ECU所施加的嚴格要求。
引言
汽車工業中信息技術的發展推動了車輛的日益互聯,無論是不同車輛之間的通信,還是車輛內不同嵌入式子系統之間的通信。在車輛中,基于電子控制單元(ECU)部署了一個大型的交互式嵌入式系統網絡,每個系統都維護著一組特定的功能。然而,車載架構中連接服務的集成不僅增加了用戶的便利性,也為汽車世界中的惡意攻擊者提供了越來越多的攻擊面。如今,集成硬件安全模塊(HSM),即在ECU內封裝安全導向功能的可信執行環境,是幫助保護車輛免受惡意攻擊者侵害的基本組件。
幾家領先的芯片制造商已經提供了一些具有汽車級架構的HSM解決方案,這些方案通常包括微控制器處理器、不同用途的內存塊(如RAM、ROM、閃存)、用于哈希函數、對稱和不對稱密碼操作的硬件加速器,以及HSM與ECU內的主機處理器之間的安全接口。在ECU內,通常使用HSM中的硬件加速器進行依賴于密鑰的密碼操作。HSM不僅將秘密信息(如密鑰)保存在一個可信的硬件環境中,而且還通過專用硬件加速為密碼操作提供良好的加速效果。? ?
然而,汽車行業中還沒有關于HSM架構或功能的官方標準。因此,為了構建未來的HSM,需要更多了解現代汽車行業的當前趨勢以及對未來挑戰的探索。一方面,隨著現代車輛性能要求的提高,需要更強大的HSM。另一方面,考慮到“量子時代”的到來,可能需要對HSM的設計架構進行更激進的改變。常用的非對稱密碼算法,如RSA和ECC,容易受到使用量子計算機的攻擊:Shor的算法能夠在多項式時間內解決RSA和ECC的基本問題。Grover的算法可以為暴力搜索提供二次速度提升,因此現代HSM中的對稱密碼加速器和哈希函數(即AES核心)在未來仍然可以使用,只需將密鑰大小加倍;然而,HSM內的非對稱密碼加速器將被完全破解。鑒于量子計算機建設的快速進展,過去十年已經發展了后量子密碼學(PQC)這一新領域,提出了被認為能夠抵御使用量子計算機攻擊的密碼算法。
汽車HSM將需要使用后量子安全的算法來確保其在“量子時代”的安全性。這些PQC算法通常比今天的密碼算法具有更大的密鑰大小,并且進行密鑰操作需要更多的時間。此外,PQC算法所需的算術與當今使用的底層密碼算法不同。因此,需要為未來的HSM設計新的硬件架構。
雖然存在幾種通用的軟件-硬件協同設計用于PQC方案,但這些設計都專注于一種特定的PQC方案家族,沒有一個針對汽車HSM的使用案例和需求。本文分析了最近進入美國國家標準與技術研究院(NIST)PQC標準化過程第三輪的不同PQC候選方案在汽車ECU架構中的適用性。基于分析結果,提出用于加速推薦PQC算法的硬件加速器的后量子安全汽車HSM架構。? ?
預備知識
A. 后量子密碼學
PQC算法有五種流行的類別:基于哈希的、基于代碼的、基于格的、多元的和基于同構的密碼學。每一種類別都基于不同的數學問題,這些問題對于現代計算機和量子計算機來說都是難以解決的。這些方案在密鑰和消息的大小、效率以及對其安全性分析的信任等方面存在差異。? ?
1、基于代碼的密碼學:大多數基于代碼的加密方案都基于McEliece密碼系統,該系統最早于1978年提出,其使用二進制Goppa碼的實例至今仍保持安全。然而,McEliece密碼系統的一個主要問題是公鑰的大小過大。即使是其雙變量版本,Niederreiter密碼系統引入了一種壓縮公鑰的技巧,但在針對128位后量子安全級別時,公鑰的大小仍然超過1MB。一些研究工作已經集中在通過將結構納入代碼來減小密鑰的大小,例如使用準循環碼。兩種基于結構化代碼的方案,即BIKE 和HQC ,已經進入了NIST PQC標準化過程的第3輪。
2、基于哈希的密碼學:基于哈希的簽名方案被認為是非常成熟的,因為它的安全性完全依賴于底層哈希函數的性質,而哈希函數的性質是眾所周知的。XMSS 和LMS 是兩種流行的有狀態的基于哈希的簽名方案,它們正在被NIST考慮作為后量子密碼學發展早期的一部分進行標準化。因此,基于哈希的簽名方案是有希望成為后量子安全的簽名方案。
3、基于格的密碼學:基于格的密碼學可以說是PQC家族中最流行的一種。它的安全基于高維格上定義的不同類型難題,例如“帶錯誤的學習(LWE)”、“最短向量問題(SVP)”等。與基于代碼的方案類似,基于通用格的方案通常更令人信服,而基于理想(結構化)格的方案具有更小的密鑰和更好的性能。然而,選擇基于格的方案的安全參數一直是一個挑戰,因為目前還不完全了解它們對抗量子計算機攻擊的安全性。
4、多元密碼學:多元密碼學是基于解決有限域上的多元二次方程組的難題,這是一個NP難問題。盡管多元密碼系統的安全性得到了很好的分析,但要構建這樣一個既安全又高效的方案并不容易。在過去的十年里,許多方案已被證明是不安全的。其中少數專注于簽名方案的方案至今仍保持安全。? ?
5、基于同構的密碼學:在所有PQC候選者中,基于同構的密碼學是最年輕的一種,最初是在2006年提出的加密方案。基于同構的方案的構造是基于找到兩個橢圓曲線之間的高階超奇異同構的難度。這使得基于同構的方案可以部分繼承經典ECC方案的算術。然而,特別是與結構化格基方案相比,基于同構的候選者的有效性并不十分具有競爭力。此外,由于同構性問題的新特性,對這些方案的信心還不夠充分。
B. 關于SOTA的案例研究
Software-over-the-air(SOTA)更新是一種讓汽車制造商通過下載遠程軟件更新來維護和改進車輛的技術。它也是ECU級別各種基本安全用例交互的絕佳示例。可以使用SOTA來確定HSM所需的安全功能。
一個完整的SOTA更新包括了HSM的大部分用例,即安全引導、安全軟件更新和安全診斷。唯一未直接包含在此SOTA更新中的用例是通常依賴于對稱加密(例如AES)以保持低延遲的安全車載通信(SecOC)。因此,SOTA是分析汽車HSM所需功能的良好案例研究。
SOTA更新場景對運行時和內存存儲有一定的要求:真實性驗證和完整性驗證過程預計在1秒內完成,公共驗證密鑰、用于檢查真實性的簽名和用于檢查完整性的令牌都應小于4kB。此外,考慮到SecOC和SOTA可以同時發生。由于AUTOSAR標準,SecOC利用AESCMAC進行消息認證。? ?
SOTA更新和SecOC都是依賴于安全性的服務,它們在HSM內部執行。因此,HSM需要使用以下原語:數字簽名、哈希函數和對稱加密。現代HSM通常沒有針對ECU級別的公鑰加密或密鑰封裝(KEM)的專用用例。然而,未來一代的HSM可能需要支持KEM方案,例如在車輛級別運行時支持可能的ECU之間密鑰交換。因此,在設計未來的HSM時也考慮了KEM方案。
汽車高安全級別消息認證碼(HSMS)的PQC選擇
A. 推薦的PQC方案
自2020年7月起,15個候選方案已進入美國國家標準與技術研究院(NIST)PQC標準化過程的第三輪。在這15個候選方案中,選擇了三個針對NIST安全級別3(中等)和5(高等)的PQC方案,以在汽車應用中實現性能和安全性之間的平衡。除了這三個候選方案,還選擇了NIST PQC競賽之外的一個被廣泛理解的數字簽名方案。所有四個選定的方案都符合第二節-B中對運行時和內存存儲的嚴格要求。除了密鑰(消息)大小和性能指標外,指導我們選擇這四個PQC方案的另一個重要標準是確保這些方案背后的數學難題的多樣性。
本文為汽車HSMs提出的建議中包括了一個基于代碼的方案,兩個基于格的方案,以及一個基于哈希的方案。此外,軟件和硬件實現的簡單性也是選擇的重要指標。
1、中等安全級別的方案:對于需要中等安全級別的應用,本文選擇基于理想格的簽名方案CRYSTALS-Dilithium和基于代碼的密鑰交換(KEM)方案BIKE,因為它們的效率和密鑰尺寸較小。 Dilithium 基于一個經過充分研究的MLWE問題的一個變體。除了良好的性能外,在軟件和硬件中實現Dilithium的操作都相當容易。BIKE 是一個基于QC-MDPC(準循環中等密度奇偶校驗)代碼的基于代碼的KEM。由于其平衡的性能,它是通用使用的有希望的候選者。
BIKE被NIST視為“最有希望的基于代碼的候選者”。與其他在第3輪中的結構化基于代碼的候選者HQC 相比,BIKE的公鑰和密文尺寸要小得多,而BIKE的帶寬指標要好得多。這些指標使BIKE在密鑰尺寸和效率方面更適合汽車用例。因此,Dilithium和BIKE可以結合使用,適用于對性能和密鑰尺寸都有嚴格要求,但不需要非常高的安全要求的應用場景。? ?
2、高安全級別的方案:具有高安全級別的狀態哈希簽名方案XMSS和基于理想格的KEM方案CRYSTALS-Kyber都被選中,因為它們背后有經過充分研究的數學問題。XMSS已被IETF 標準化,目前是NIST正在考慮作為早期標準化的兩個狀態哈希簽名方案之一。
XMSS的安全性完全依賴于底層哈希函數,即使在存在大型量子計算機的情況下也可以有效地構建。Kyber的安全性依賴于與Dilithium相同的問題,因此它的安全也得到了充分的研究。此外,XMSS和Kyber都具有相對較小的密鑰,它們的密鑰操作可以通過使用專用硬件加速器得到很好的加速。因此,考慮到它們令人信服的安全性分析,XMSS和Kyber可以結合使用,用于針對高安全級別的應用場景。
B.軟件性能分析結果
為了設計一種后量子安全的HSM,首先需要識別一套新的硬件加速器,因為基于為了設計一種后量子安全的HSM,我們需要首先識別一套新的硬件加速器,因為基于PQC方案的數學問題通常與現代密碼學有著根本性的不同。作為軟件硬件協同設計的一部分,HSM中的硬件加速器旨在加速最密集計算操作。為了了解推薦方案中最密集的計算操作是什么,本文使用性能分析工具Gprof對提交到NIST PQC競賽第三輪的參考軟件實現進行了性能分析。? ?
對于XMSS和Dilithium簽名方案,性能分析結果僅包括簽名驗證操作,而對于KEM方案BIKE和Kyber,所有操作(例如密鑰生成、密鑰封裝和密鑰解封裝)都包含在內。以下是結果:
1、XMSS:在XMSS中,驗證操作大部分時間消耗在底層哈希函數上。根據XMSS IETF規范,對于高安全性級別,可以使用SHA2-512或SHAKE-256作為哈希函數。
2、BIKE:BIKE中使用的準循環碼允許將所有矩陣操作視為多項式運算。根據性能分析結果,多項式乘法是BIKE中最昂貴的計算操作之一。此外,BIKE的構建涉及AES-256實例化和哈希函數SHA-384的實例化,這兩個函數在軟件實現中經常被使用。
3、Dilithium和Kyber:對于Dilithium和Kyber,性能分析結果非常相似,因為這兩種協議的構建都是基于相同的構建塊。兩者都有兩個實現變體:一個使用SHAKE來抽樣隨機數并擴展隨機性,另一個則使用AES-256代替。對于這兩個實現,SHAKE/AES計算占用了大部分時間,其次是基于NTT的多項式乘法。
PQC HSM的硬件架構
圖1描繪了一個典型的EVITA類HSM的架構。由于EVITA中等和EVITA輕量級是EVITA全功能HSM的子集,因此可以類似地對這些較小的HSM進行分析。可以將把EVITA全功能HSM稱為現代HSM。? ?
圖1 EVITA HSM架構 - 面向EVITA級別的全面架構?
A. 現代HSM
一個典型的現代全功能HSM通常包括以下密碼學構建模塊,如表1所示。
表1 對比現代HSMs和后量子安全HSMs所需的密碼塊(分別對應中高安全級別);SL=安全級別
●?SHA2-256,用作通用哈希函數,作為最初提出的WHIRLPOOL的替代品。 ●?(AES-128, all),用于對稱密碼操作,包括密鑰生成、加密和解密,如第二節B所述,此模塊對于SecOC是必需的。 ●?TRNG,用作真隨機數生成器(TRNG)。數字熵從硬件的方差中收集,例如在基于環形振蕩器的TRNG中,數字環形振蕩器之間的抖動被收集。 ●?(AES-128, enc),用作偽隨機數生成器(PRNG)。此PRNG通常由TRNG進行種子填充,并通過使用僅支持加密操作的AES引擎來擴展隨機性。
●? ECC-256,用于非對稱密碼系統中的256位橢圓曲線算法。
一旦大型量子計算機可用,這樣的HSM就不再安全:由于Shor算法,ECC-256的安全性完全受到威脅,而SHA2-256、(AES-128, all)和(AES-128, enc)的安全性則因Grover算法而減半。為確保汽車HSM即使面對量子計算機也能保持安全,應使用后量子安全的非對稱原語來替換ECC-256,同時使用安全性加倍的對稱原語和哈希函數。? ??
B. PQC HSMs
在后量子安全的HSM(PQC HSM)中,哈希函數和對稱密碼原語的選擇都旨在保持128位的安全性,以抵御量子計算機對中高安全級別的攻擊,從而更加保守。對于非對稱密碼原語,需要更激進的變化:與現代HSM相比,構建PQC HSM需要完全不同的加密塊。表1和圖2分別總結了針對中高安全級別提出的HSM解決方案。
圖2 PQC HSM架構 - 安全特定的加速器:藍色代表中等安全級別,紅色代表高安全級別。
以下是推薦用于PQC HSM的密碼塊:
●?SHA3-512,用作通用哈希函數。SHA3-512是NIST于2015年發布的SHA-3標準的一部分,其內部結構與SHA-2標準不同。SHA-3是更廣泛的密碼原語家族Keccak的子集,在其內部結構中使用了海綿構造,而SHA-2則基于類似MD5的結構。 ●?(AES-256, all),用于對稱密碼通信。它與(AES-128, all)具有相同的目的,但安全性提高了一倍。
●?(AES-256, enc),用于構建偽隨機數生成器(PRNG)。
1、中等安全級別的PQC HSM:對于中等安全級別的PQC HSM,建議使用Dilithium作為簽名方案替代ECC-256,此外,還建議使用BIKE來支持可能需要在未來汽車HSM中使用的密鑰交換操作(KEM)。隨機性擴展和多項式乘法是Dilithium中最計算密集的操作之一。因此,建議使用以下密碼塊來加速Dilithium: ●?Dilithium-Poly-Mul,一個基于數論變換(NTT)的多項式乘法器,支持Dilithium的安全參數,用于支持Dilithium中的多項式乘法操作。
●?(AES-256, enc),需要一個支持加密功能的AES-256模塊,用于在基于AES的Dilithium實現中擴展隨機性。在這種情況下,Dilithium和PRNG可以共享相同的(AES-256, enc)核心。
對于BIKE,由于多項式乘法是最昂貴的操作,設計了以下模塊:
●?BIKE-Poly-Mul,一個可用于加速BIKE中密集和稀疏多項式操作的多項式乘法器。
2、高安全級別的PQC HSM:高安全級別的PQC HSM,建議使用XMSS作為替換ECC-256的簽名方案,并推薦使用Kyber作為KEM方案。此外,還需要以下密碼核心: ●?Kyber-Poly-Mul,類似于Dilithium,需要一個專用的基于NTT的多項式乘法器來加速Kyber。需要注意的是,由于Kyber的安全參數與為Dilithium定義的安全參數不同,因此這兩種方案需要分別使用兩組不同的多項式乘法器。
●?SHAKE-256,選擇SHAKE-256作為構建具有高安全級別的XMSS和Kyber的目標。這也能夠在HSM中實現簽名和KEM方案之間的資源共享。??
評估和比較
下面詳細討論兩種推薦的具有中等和高安全級別的PQC HSM的性能和綜合結果。這些設計是針對Artix-7 FPGA平臺(型號XC7A200TFFG1156-3)進行綜合的。另外還將提供PQC HSM的綜合結果與典型的現代HSM設計之間的比較。
A. 評估
在所有硬件加速器中,對標準塊的分析,即AES-128/256、ECC-256、SHA2-256、SHA3-512和TRNG,都是基于開源設計的,并且選擇的目標是資源受限的嵌入式系統,同時保持相對良好的性能。例如,AES-128/256、SHA2-256都是基于分塊迭代計算的。所選的TRNG根據多個數字環形振蕩器之間的抖動收集其數字熵源。這種真隨機性可以進一步輸入到PRNG中以擴展隨機性。Murus SoC被用作HSM內部CPU的代表。它是一種基于RISC-V的開源處理器,資源使用非常小,但保持與ARM Coretex-M3處理器相當的性能。所有這些核心的選擇目標是實現良好的時間-面積效率。
SHAKE-256是一種參數化設計,被提出作為基于格的方案的基礎構建塊。該設計基于在中提出的面積高效的SHAKE模塊。在SHAKE核心中,可以在綜合時靈活選擇并行切片的數量,以實現面積和性能之間的權衡。在我們的工作中,總共使用了16個并行切片。
BIKE-Poly-Mul是一個參數化和常數時間的多項式乘法器,作為BIKE最先進的硬件實現中的一個構建塊呈現。根據用戶的應用需求,計算數據塊的大小可以通過在綜合時使用性能參數來調整,以實現時間和面積之間的權衡。在我們的分析中,如表2所示,我們選擇數據塊大小為32。? ?
表2使用Vivado 2018.3為Arix-7 FPGA合成的硬件加速器的性能結果
Dilithium-Poly-Mul和Kyber-Poly-Mul都是基于參數化和流水線化的NTT(Number Theoretic Transform)多項式乘法器設計進行分析的,該設計包含在文獻中,用于加速基于格的方案。在我們的工作中,我們分別使用Dilithium(中等)和Kyber(高)的安全參數對設計進行了綜合。
B. 合成結果比較:現代HSM vs PQC HSMs
如表2所示,三種HSM配置的總區域使用情況:現代HSM、中等安全級別的PQC HSM和高安全級別的PQC HSM。與現代HSM相比,中等安全級別的PQC HSM實現了類似的區域利用率,而對于針對高安全級別的PQC HSM,在區域使用方面引入了較小的開銷,例如在LUT使用方面,有大約13%的開銷。從表中可以看出,在內存和DSP利用率方面,兩種PQC HSM配置實際上都更輕量級,因為ECC-256非對稱加密核心這種對內存和DSP密集型的組件被從HSM架構中移除了。
需要注意的是,分析沒有考慮通常存在于典型嵌入式系統中的額外區域開銷,例如接口通信邏輯、內存控制器邏輯、頂級控制器邏輯等。此外,值得一提的是,由于這些密碼核心的區域度量是具體實現相關的,因此可以應用不同的優化方法來調整實際HSM實現的性能結果。
研究旨在探索設計一種適用于典型汽車用例的時間-區域高效HSM以抵御大規模量子計算機攻擊的可行性。基于以上分析,可以得出結論,設計具有中等和高安全級別的PQC HSM的硬件架構是可行的,而不會承受較大的區域開銷。? ?? ? ?? ?
結論
本文首次對設計用于汽車應用場景的后量子安全HSM進行了分析。首先分析了汽車HSM的典型應用場景,然后根據這些應用場景的內存約束和性能要求,推薦了簽名和密鑰交換方案。進一步對這些方案的參考軟件實現進行了性能分析,并根據分析結果,分別針對中高安全級別推薦了新的硬件加速器集成到PQC HSM中。PQC HSM與現代HSM的評估結果顯示,通過使用后量子算法來確保安全性,而不需要過多的面積開銷來設計密碼硬件加速器,汽車HSM可以保持未來的可擴展性。后量子安全HSM作為軟硬件協同設計的可行性,特別是在面積開銷方面。為了更好地理解后量子安全HSM的實際硬件實現,性能指標的分析也非常重要。因此,有必要在真實硬件上構建一個后量子安全HSM的原型,并進一步分析這些HSM的性能和面積指標。? ?
? ?編輯:黃飛
?
評論
查看更多