新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設計應用 > 現(xiàn)實世界中的嵌入式安全

現(xiàn)實世界中的嵌入式安全

作者: 時間:2011-05-02 來源:網(wǎng)絡 收藏


您也必須保護系統(tǒng)的完整性,防止系統(tǒng)運行中受到流氓固件的攻擊,這些流氓固件可繞過加密,篡改數(shù)據(jù)或向未經(jīng)授權的接收端發(fā)送數(shù)據(jù)。系統(tǒng)完整性的最好保護是,利用哈希算法檢測固件內未經(jīng)授權的改變,并采取相應措施。


哈希算法生成一種被稱為給定信息摘要的壓縮指紋。就像人類的指紋一樣,這個摘要是唯一的。被廣泛采用的著名的哈希算法(SHA)就是一個哈希算法的范例。為檢測固件篡改,在使用中,您需要定期地產(chǎn)生它的現(xiàn)場摘要,并與出廠時生成的參考進行比較。您也許已經(jīng)在問,是什么能保證任何人都無法偽造摘要或參考。


我們的做法是,我們需要保證摘要和它的參考不被偽造。在輸入哈希算法生成出廠參考之前,我們通過向固件中追加一條任意長度的附加信息的辦法實現(xiàn)這一點。如果您保證附加信息是保密的,那么,只有您才能夠重新生成相同的摘要,這就是您能保證摘要不被偽造的方法。


在使用中,保證參考不被現(xiàn)場偽造的方法是:將它存儲在存儲器中。若要知道摘要沒有被偽造這一事實,必須進行身份驗證,本例中,要實現(xiàn)這一點,需要知道嵌入在集成電路中的密鑰。


所以,加密僅僅是對數(shù)據(jù)加擾而已,與此相比,身份認證是安全系統(tǒng)的真正基礎。明白了這一點,值得注意的是:哈希密碼算法本身很適合身份認證,這是由于好的哈希算法必須具有3個基本特征。


首先,它們的運算是不可逆的。這意味著,不可能從摘要中恢復出原始信息,所以,私密信息是安全的。第二點是非沖突性,即各種不同的輸入必須生成獨一無二的摘要。在驗證時,唯一的摘要可提升對固件完整性的信任。第三個同時也是最終的性質被稱為雪崩,是指哈希算法輸入的任何改變,無論多么小,都會產(chǎn)生摘要的顯著變化。


存在一些經(jīng)過仔細分析的公開方法,這些方法可允許使用加密算法,以實現(xiàn)傳統(tǒng)上由哈希算法實現(xiàn)的功能。這類系統(tǒng)可同時實現(xiàn)身份驗證和加密。同樣,加密算法本身很適合數(shù)據(jù)加擾,由它們所帶來的安全性與密鑰一樣強大。哈希算法的身份認證特點具有互補性,可實現(xiàn)安全系統(tǒng)中密鑰的安全管理。


不同的密碼算法可保護系統(tǒng)的不同層面的安全,在對它們的微妙作用、強度、差異和相互影響有了清晰的了解之后,就可以使用更少的算法組合來實現(xiàn)牢靠的安全性能。對于像我們所面臨的這樣的挑戰(zhàn)而言,這尤其重要,因為我們的代碼空間十分有限。

配套的安全集成電路
對于您的任務而言,您需要固件空間以及來自防篡改和侵入的安全集成電路的資源??梢酝ㄟ^配套的安全集成電路來解決這一問題。這些安全集成電路與安全MCU一樣,具有硬件防篡改和侵入的功能,但做了一些簡化,可為各種具體應用提供相應的功能,因而成本更低。

圖2 作為配套的安全裝置的集成電路很小,成本較低,需要非常少的系統(tǒng)資源,但卻可提供與安全MCU相同的物理保護


在我們的例子中,配套的安全集成電路將保護和管理密鑰,以對由加密所帶來的安全性進行互補。它們也可進行各種類型的身份認證,能夠實現(xiàn)系統(tǒng)完整性驗證。它們還可實現(xiàn)許多其他功能,包括安全存儲以及可信固件的現(xiàn)場升級。通過提供智能和易用的API,它們可實現(xiàn)這一點,因此,使用配套的安全集成電路不需要深入掌握密碼學,也無須較多代碼空間。


這與那些提供處理和存儲功能的安全MCU不同,因此,您可將所有需要的函數(shù)寫入固件里,而配套的安全集成電路中的函數(shù)是硬連線的,使得它們很緊湊,因而成本更低。Atmel系列“加密認證”產(chǎn)品就是一個例子。通過采用這些低成本(大量購買時的單價為0.5美元)的集成電路芯片,可以在已有平臺上編寫代碼并追加在這個小小的額外固件上。

linux操作系統(tǒng)文章專題:linux操作系統(tǒng)詳解(linux不再難懂)

上一頁 1 2 下一頁

評論


相關推薦

技術專區(qū)

關閉