處理有限的系統(tǒng)資源曾經(jīng)是嵌入式工程師面臨的主要挑戰(zhàn)之一。通過使用內(nèi)存更少的更小微控制器,開發(fā)人員可以降低制造成本。然而,這意味著他們需要努力最大限度地減少內(nèi)存和處理器的使用,這需要艱難的軟件決策,通常以應(yīng)用程序的成本、效率和功能為中心。
游戲變了。具有大容量 RAM 和閃存陣列的強(qiáng)大處理器現(xiàn)在以商品價(jià)格提供。網(wǎng)絡(luò)無處不在,雖然應(yīng)用程序的功能很重要,但物聯(lián)網(wǎng) (IoT) 世界中更高的風(fēng)險(xiǎn)和價(jià)值正在迅速?gòu)膽?yīng)用程序本身轉(zhuǎn)移到“事物”存儲(chǔ)和通信的數(shù)據(jù)。雖然關(guān)于云計(jì)算和大數(shù)據(jù)的討論很多,但對(duì)于嵌入式工程師來說,制定一種安全可靠地管理這些小但非常有價(jià)值的數(shù)據(jù)的策略已經(jīng)變得至關(guān)重要。
當(dāng)然,物聯(lián)網(wǎng)數(shù)據(jù)被暴露或被黑客攻擊的安全風(fēng)險(xiǎn)是不可否認(rèn)的,嵌入式行業(yè)仍有工作要做,以滿足適當(dāng)?shù)能浖_發(fā)和測(cè)試標(biāo)準(zhǔn)來幫助解決這個(gè)問題。但是,如果閃存數(shù)據(jù)不能保證可靠存儲(chǔ)怎么辦?如果文件系統(tǒng)損壞或閃存在計(jì)劃壽命結(jié)束之前磨損怎么辦?該系統(tǒng)可能太不可靠且維護(hù)成本太高,在系統(tǒng)發(fā)生故障之前可能不知道這一點(diǎn),因?yàn)闊o法通過測(cè)試檢測(cè)到安全性和可靠性風(fēng)險(xiǎn)。僅通過仔細(xì)的開發(fā)或軟件測(cè)試并不能解決此類數(shù)據(jù)丟失和暴露的風(fēng)險(xiǎn)。
工程必須需要系統(tǒng)級(jí)的協(xié)作,這延伸到硬件。例如,在選擇閃存時(shí),眾所周知的風(fēng)險(xiǎn)包括有限的存儲(chǔ)壽命和電池最終會(huì)磨損的事實(shí)。然而,還有其他鮮為人知的風(fēng)險(xiǎn)——一些是由不準(zhǔn)確的索賠造成的。例如,一個(gè)文件系統(tǒng)可能被標(biāo)記為“安全”,但除非它明確定義應(yīng)用程序、驅(qū)動(dòng)程序和媒體所需的行為,否則這是一個(gè)毫無意義的聲明。
許多供應(yīng)商將閃存(SD 卡)指定為工業(yè)級(jí)或類似級(jí)別。但這通常僅指工作溫度,并不能保證任何額外的數(shù)據(jù)完整性,這意味著這些設(shè)備不應(yīng)用于存儲(chǔ)關(guān)鍵數(shù)據(jù)。開發(fā)人員還應(yīng)該針對(duì)具有更復(fù)雜問題的設(shè)備制定策略,例如磨損均衡、壞塊管理、糾錯(cuò)和類似的閃存復(fù)雜性。
對(duì)于嵌入式工程師來說,物聯(lián)網(wǎng)設(shè)備在概念上看起來與其他嵌入式應(yīng)用程序相似。它具有運(yùn)行 I/O 功能以收集信息和控制應(yīng)用程序的嵌入式處理器、用于存儲(chǔ)用戶和使用數(shù)據(jù)的閃存以及通信接口。
嵌入式數(shù)據(jù)安全帶來的核心工程挑戰(zhàn)與功能安全帶來的挑戰(zhàn)基本相同。這些問題可以通過適當(dāng)?shù)闹R(shí)、風(fēng)險(xiǎn)評(píng)估以及使用易于理解的系統(tǒng)級(jí)設(shè)計(jì)和過程實(shí)踐來克服。設(shè)備及其組件的風(fēng)險(xiǎn)評(píng)估必須確保其數(shù)據(jù)(具有實(shí)際價(jià)值)以故障安全方式存儲(chǔ)并防止未經(jīng)授權(quán)的訪問。
這可以在開發(fā)或行業(yè)層面解決,但未來幾年聯(lián)網(wǎng)物聯(lián)網(wǎng)設(shè)備的激增將產(chǎn)生大量以數(shù)據(jù)為中心的漏洞。開發(fā)人員在評(píng)估數(shù)據(jù)風(fēng)險(xiǎn)時(shí)必須提出的基本問題包括:
? 誰可以潛在地讀取或修改存儲(chǔ)的數(shù)據(jù)?
? 數(shù)據(jù)泄露、丟失或損壞的后果是什么?
? 任何人都可以控制應(yīng)用程序嗎?
? 誰可以與設(shè)備通信?
? 即使在斷電或重置的情況下,數(shù)據(jù)是否仍能可靠存儲(chǔ)?
? 數(shù)據(jù)存儲(chǔ)是否持久以及持續(xù)多長(zhǎng)時(shí)間?
? 可以修改代碼或應(yīng)用程序嗎?
此類評(píng)估的目的是將應(yīng)用程序質(zhì)量的目標(biāo)從“它會(huì)正確運(yùn)行嗎?”擴(kuò)展而來。到“數(shù)據(jù)的通信和存儲(chǔ)是否得到妥善管理?” 在這個(gè)新時(shí)代,小數(shù)據(jù)的可靠存儲(chǔ)和安全通信是嵌入式開發(fā)人員面臨的最關(guān)鍵問題之一。太重要了,不能留給最低的實(shí)施水平。
審核編輯:郭婷
-
處理器
+關(guān)注
關(guān)注
68文章
19404瀏覽量
230758 -
嵌入式
+關(guān)注
關(guān)注
5090文章
19176瀏覽量
306857 -
物聯(lián)網(wǎng)
+關(guān)注
關(guān)注
2912文章
44905瀏覽量
375853
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論