嵌入式系統越來越普遍地采用云技術來進行數據采集、事件檢測和軟件更新。這些遠程物聯網設備普遍通過固件完成設置,這些固件有可能存儲在主機MCU中,也有可能存儲在外置非易失性存儲器的用戶空間中。而這些非易失性存儲器中的內容則是惡意攻擊的主要對象。對于所有全新開發的物聯網設備來說,采取應對措施防止非易失性存儲器的非授權修改,已成為一項基本的設計要求。
圖 1 - 作為節點的互聯嵌入式系統
本文將對分立閃存存儲器領域開始涌現的加密和安全基礎設施進行介紹,并探討如何將這些新特性用于物聯網互聯設備的安全保障。
新一代安全NOR閃存產品
NOR閃存制造商已經開發出了一些NOR閃存產品,這些產品通過集成加密基礎設施,能夠提供高水準安全性。設備配對(主機MCU和NOR閃存)與認證寫入(編程與擦除)操作已通過使用對稱加密來實現。這些設備通常都是基于HMAC引擎和非易失性累加計數器。在配置過程中,需要先將對稱密鑰同時加載到主機MCU和安全NOR閃存器件中,以便在正常操作時執行經認證的讀寫操作。
圖 2 - 采用集成加密的新一代NOR閃存器件(使用串行外設接口)
最近,內部NOR閃存基礎設施的發展已經超出了內部狀態機實際管理的范疇。較新型設備集成了CPU子系統(CPUSS),能夠執行透明負載均衡和壞塊替換等高級功能。一旦CPU子系統成為閃存器件基礎設施的組成部分,那么增添加密硬件塊和數據包緩存的想法就能很快成為現實。通過使用這種全新的基礎存儲器件,就能夠開發出一系列安全功能,從而為加密安全提供支持。在NOR閃存領域,用戶存儲陣列的訪問控制和執行前的分層代碼驗證是得到大量關注的兩個特性。
將用戶存儲空間劃分為安全區域
較新型NOR器件的用戶存儲空間能夠劃分成多個區域,每個區域可以單獨配置,用于傳統(非安全)訪問或安全訪問。配置為安全訪問的區域能夠設定為受控讀/寫訪問或認證訪問。
配置為受控訪問的安全區域能夠獨立啟用或禁用讀/寫操作。啟用/禁用設置由認證序列(需要主機MCU證明其知曉共享密鑰)進行管理。在制造過程中,共享密鑰將被同時加載到主機MCU和存儲器。試圖訪問禁用區域的讀或寫將在讀取期間返回未定義數據,并且寫入嘗試將會被阻斷。配置為受控訪問狀態的區域可以選擇配置成加電讀/寫訪問狀態。例如,可以將啟動區域配置為加電時可讀不可寫,而將其余區域配置為禁用所有讀/寫訪問。
此外,安全區域也可以配置為只支持經認證的讀寫訪問。認證區域不支持傳統讀寫。認證讀寫操作是通過數據包傳輸來執行的,其中包含HMAC,表示知曉共享密鑰和非易失性命令累加計數器值。在訪問請求中使用命令累加計數器能防范重放攻擊。
圖3 - 用戶陣列的安全分區
軟件層之間的安全性
此外,分層驗證軟件也成為安全環境中的常見做法??尚庞嬎憬M織的設備身份合成引擎(DICE)工作組已發布一項策略,即每層代碼在釋放控制前都需要向下一層代碼進行證實。當主機MCU無法集成可編程存儲器時,系統級場景會變得更加復雜。從NOR閃存CPUSS ROM開始(推定為可信),分立閃存器件開始支持DICE策略的變化。
NOR閃存CPUSS ROM在加電重置(PoR)時執行,在將代碼執行移交給CPUSS閃存前,先驗證其捕獲的閃存器件啟動代碼(在CPUSS閃存內,未暴露給用戶陣列)是否完整。完成這種DICE 0層復合器件識別符(CDI)計算需要結合使用唯一的器件密鑰(對每個閃存器件有唯一性),以及對駐留在0層中的閃存器件啟動代碼的測量值。
國際標準文檔NIST SP800-56C介紹了在CDI計算中使用的可接受的加密單向函數。唯一器件密鑰用于0層CDI計算。0層CDI驗證將計算值與NOR制造商提供的存儲在片上的預期值進行比較。
在確認CPUSS閃存有效后,代碼執行就從ROM啟動代碼傳遞到(0層)CPUSS閃存器件啟動代碼。接下來,NOR器件將驗證由系統制造商編程到用戶陣列中的系統級啟動代碼。測得的系統級啟動代碼值將被用于與器件配置過程中存儲在片上的預期值進行比較。這兩步驗證發生在閃存器件運行其PoR序列的過程中,在可供主機MCU訪問之前。請注意,在整個啟動過程中,務必確保CDI值不被暴露給更高層的代碼,當然還有惡意行為者。
圖4 - 安全軟件分層
在完成閃存器件PoR序列的執行后,系統級啟動代碼將會暴露給主機MCU供其執行。在確認系統級啟動代碼的真實性后,系統啟動流程能夠繼續運行。分層驗證策略還能繼續執行,方便主機CPU對每個新軟件層的驗證工作進行管理。
圖4描繪了從閃存啟動代碼到用戶應用的線性推進過程。實際情況很可能復雜得多,尤其是在程序控制權被移交給操作系統后。請注意,一旦系統級啟動代碼取得程序控制權,每個后續層的證實值都能夠與本地值(存儲在閃存器件中)進行比較,或更理想的話,還能夠與遠程駐留(可能是云服務器)值進行比較。如果使用DICE規范中規定的數字證書,遠程驗證的安全性還能進一步提高。
結論
片上加密基礎模塊顯著緩解了傳統非易失性存儲器的受到的安全威脅。反克隆問題能夠通過主機MCU與閃存存儲器之間的設備配對得到解決。使用陣列分區和可配置訪問權限能夠處理非授權訪問。通過可信計算組織制定的DICE策略,解決了惡意篡改代碼的檢測和恢復問題。集成在新型閃存存儲器中的加密功能模塊成功地解決了傳統系統中存在的大量安全漏洞,說明外置Flash架構能夠解決未來可能出現的安全問題。
上一篇:美光科技Q2營收47.97億美元 凈利潤下滑75%
下一篇:兆易創新優化供應鏈結構,NOR Flash產能依舊供應緊張
推薦閱讀
史海拾趣
Exar公司一直注重全球布局和客戶支持。公司在全球設立了多個研發基地和客戶服務中心,以確保能夠為客戶提供及時、高效的技術支持和服務。此外,Exar還積極與全球各地的合作伙伴建立合作關系,共同推動電子行業的發展和進步。這種全球化的戰略布局不僅為Exar贏得了更多的市場份額和客戶信任,也為其未來的發展奠定了堅實的基礎。
以上五個故事簡要概述了Exar在電子行業中的重要發展歷程。通過這些故事,我們可以看到Exar如何通過不斷的技術創新、市場拓展和全球化戰略來保持其在行業中的領先地位。
TDK,一個歷史悠久的電子工業品牌,其創始人加藤與五郎和武井武兩位博士于1935年在東京創辦了東京電氣化學工業株式會社(Tokyo Denkikagaku Kogyo K.K.),后更名為TDK株式會社。公司自創立之初就致力于磁性材料的研發,并成功地將鐵氧體磁芯商業化,為收音機等產品提供了優質的音頻解決方案。TDK不斷推動技術創新,逐步擴展至數據存儲、電子元器件等領域,并以其卓越的品質和技術贏得了全球客戶的信賴。
作為一家有社會責任感的企業,EBG RESISTORS LLC公司積極履行環保責任。他們采用環保材料和生產工藝,減少生產過程中的廢棄物排放。同時,公司還積極參與公益活動,回饋社會。這種負責任的態度贏得了客戶和社會的廣泛贊譽。
Elektron公司一直注重技術研發和創新投入,致力于在行業中保持領先地位。公司不斷推出具有創新性和領先性的產品,如高性能的電池充電器、先進的焊接和切割設備等。這些產品的推出不僅提高了公司的市場競爭力,也推動了整個行業的發展和進步。同時,Elektron還積極參與行業標準的制定和推廣工作,為行業的健康發展做出了重要貢獻。
當你買一顆模擬IC,你可以從datasheet看到比較完整的框圖,原理上基本上就一目了然了,如果你懂得電子電路設計,你肯定以為模擬設計just so so了... 然而要作出一顆IC絕非你所想象的那樣,這與設計電子電路有本質的區別: 1)IC必須 ...… 查看全部問答∨ |
dsp可以兼容c和匯編編程,c的簡單,匯編的高效執行速率,完美的結合,先說說c與dsp的吧! [ 本帖最后由 gaoxiao 于 2009-5-31 22:09 編輯 ]… 查看全部問答∨ |
我通過SD卡在PDA上裝一個程序,程序文件里面的目錄\\\\Storage Card\\。但是裝完重啟,這個程序運行卻 提示找不到SD卡,如果我重新建立一個\\\\SD Card 文件夾,把2577文件夾拷貝進去,重啟后就不報錯。修改 注冊表將SD卡名改為\\\\SD Card,重啟 ...… 查看全部問答∨ |
|
我在WINCE6.0下使用DialogBox()下出錯,其消息函數中,在一條消息函數中,只執行了一條語句就轉到其他消息去了,請問這是什么原因.謝謝!… 查看全部問答∨ |
|
當初“買”了5個清華大學生,但一個都沒留住任志強:不招清華畢業生了華遠地產董事長任志強經常語出驚人,被大家稱為“任大炮”。前兩天,“任大炮”又放炮了,他參加清華大學經濟管理學院舉辦的一個論壇時表示,他掌管的企業今 ...… 查看全部問答∨ |
我在使用運放過程中,發現有很多種工藝比如說CMOS運放,JFET輸入運放等等。 我希望有強人能夠分享下:運放都有哪些工藝,這些工藝對運放的性能有什么影響?以及哪些影響? 希望大家多多指教… 查看全部問答∨ |
交流特性 雖然我們在討論直流電源,但是這些電源的輸出并不是純直流。輸出會有一些交流成分。對于某些應用而言,輸出中較大的交流成分會對電路產生意想不到的影響,所以有助于了解殘余交流成分的幅度。除了交流噪聲以外,了解電源對負載和設置改 ...… 查看全部問答∨ |
我買的TMS320LF2403APAPGA芯片,連接仿真器能行,可是燒寫不了程序提示:**** Begin Sector Clear Operation **** OK: Flash Algorithm loaded into DSP memory OK: Write sector value 0x000f to symbol PRG_options OK: Set Breakpoint at PRG ...… 查看全部問答∨ |