對稱加密使用最廣泛的算法是AES,自2001年取代DES以來,它一直是NIST標準。但是,AES 是一種通用加密算法,有時難以滿足資源受限應用程序的功耗和延遲要求。對于芯片設計人員來說,這個問題表現為需要保護與外部閃存的通信通道。
由于我們的目標是小于 28nm 的工藝節點,設計人員不得不應對由較小幾何形狀引起的復雜問題,從接近度、多邊形間距和其他布局相關效應到確定合適的 FinFET 寬度。一個與安全相關的限制是難以構建浮動門以支持較小幾何形狀的嵌入式閃存。對于28nm以下的片上多次可編程(MTP)非易失性存儲器(NVM),沒有任何可行的選擇,設計正在過渡到外部閃存:
不幸的是,這允許對手觀察和修改存儲在外部閃存中的數據,并且還使發起更高級的側信道和故障注入攻擊變得更加容易。這不是一個微不足道的問題,因為我們需要一個同時的解決方案:
保護存儲在外部閃存中的數據的機密性和完整性,
提供針對高級側信道和故障注入攻擊的保護,
能夠支持 QSPI 閃存 100MB/s 的讀/寫速度,最后
不會給產品帶來巨大的功率和面積開銷。
自然的首選方法是利用現有的AES引擎來保護數據。但是,僅加密并不能阻止對手修改數據。為此,我們需要在經過身份驗證的加密模式下使用密碼,例如 GCM 操作模式。不幸的是,AES-GCM難以滿足抗攻擊性的最終要求。AES最初設計為抵抗側信道或故障攻擊,對算法的修改將提供該級別的保護會導致相當大的面積和功耗損失。
為了滿足我們所有期望特征的解決方案,我們需要關注新興的輕量級密碼學領域。
輕量級加密
需要資源受限設備的應用在物聯網 (IoT)、汽車和醫療傳感器等領域一直在迅速擴展。為了在功耗和面積非常寶貴的情況下提供安全性,重點已從AES等通用加密算法轉移到明確的輕量級設計。
重要的是,輕量級加密算法不會犧牲安全性:密鑰長度仍然要求至少為 128 位,與 AES-128 匹配。相反,輕量級加密算法旨在在嵌入式設備中常見的資源限制內工作,例如,與通用對應算法相比,需要更少的寄存器和RAM。重要的是,所有標準化的輕量級候選產品都旨在抵抗側信道和故障攻擊。
但是,與外部閃存通信的高吞吐量要求呢?盡管針對資源受限的設備,但輕量級算法通常可以勝過 AES 等通用算法。作為NIST標準化一組輕量級算法的努力的一部分,它們對AES的性能在Cortex-M4F處理器上進行了評估。許多候選的輕量級算法能夠勝過AES。
通過改變消息和相關數據長度,針對AES評估每個候選的標準化輕量級算法。藍色方塊表示輕量級算法通過更快地處理數據而優于 AES,而紅色方塊表示 AES 更快。
從下面的圖中,我們可以看到,許多考慮標準化的輕量級加密算法盡管是為資源受限的環境設計的,但能夠勝過 AES。
NIST輕量級密碼學標準化工作的決賽入圍者于2021年初公布,最終標準將于2022年某個時候發布。
對于資源受限的產品,與更傳統的通用算法(如 AES)相比,新型輕量級加密算法可顯著節省功耗和面積。盡管是為資源受限的環境而設計的,但許多輕量級加密算法比 AES 更快。由于我們的產品針對28nm以下的工藝節點,缺乏嵌入式多次可編程非易失性存儲器在芯片和外部閃存之間引入了攻擊面。輕量級加密算法是保護芯片和外部閃存之間數據的一種候選解決方案。
審核編輯:郭婷
-
芯片
+關注
關注
455文章
50816瀏覽量
423626 -
存儲器
+關注
關注
38文章
7492瀏覽量
163836 -
MTP
+關注
關注
2文章
52瀏覽量
16647
發布評論請先 登錄
相關推薦
評論