|
嵌入式開發(fā)課程培訓(xùn)_嵌入式系統(tǒng)的安全性問題探討,
我們經(jīng)常擔(dān)心自已的個人信息被放進(jìn)或存儲在沒有安全防護(hù)措施的系統(tǒng)中。網(wǎng)絡(luò)間的通信所需要的安全保護(hù)級別取決于信息的重要程度。
常見的安全措施
對嵌入式系統(tǒng)來說,安全防護(hù)措施涉及到一個最基本的概念——物理安全性。也就是說,如果像對待珍貴物品那樣將系統(tǒng)“鎖”起來,那么丟失信息的風(fēng)險將大大減少。這意味著需要將嵌入式控制器及其它關(guān)鍵任務(wù)系統(tǒng)放在上鎖的房間內(nèi)或安全的箱子中。這種方法適用于那些可以將系統(tǒng)“包裝”起來的應(yīng)用,但也往往會導(dǎo)致通信掉線、阻塞或攔截。這種方法適用于不少有線和無線系統(tǒng)。有線系統(tǒng)在一些安全級別較高的應(yīng)用中具有不可替代的優(yōu)勢。舉個簡單的例子:如果發(fā)生黑客入侵,只要掐斷電線就能使關(guān)鍵數(shù)據(jù)不外泄。
應(yīng)用公共密鑰加密和橢圓曲線加密能獲得非常好的保護(hù)效果。這些方法廣泛用于電子商務(wù)及其它需要高級加密的應(yīng)用領(lǐng)域。然而,這類方法并不適用于那些對安全級別要求較高的嵌入式系統(tǒng)。有多種軟件和硬件技術(shù)可以用來使數(shù)據(jù)“散列”,從而使信息在存儲和傳輸期間難以被攔截。
一種保護(hù)嵌入式系統(tǒng)存儲與傳遞數(shù)據(jù)的簡單方法是使用滾動碼。滾動碼已出現(xiàn)了很長的時間,例如二戰(zhàn)期間的恩尼格碼密碼機(jī),F(xiàn)代滾動碼加密原理是采用串行移位寄存器以及異或函數(shù),使偽隨機(jī)碼確定性增強(qiáng),但逆向工程更加復(fù)雜,如圖1所示。
嵌入式芯片的內(nèi)核組成, 嵌入式內(nèi)膽佳能, 嵌入式代碼設(shè)計, 嵌入式網(wǎng)游小說, 嵌入式計算機(jī)單片機(jī), 嵌入式cpu設(shè)計, 嵌入式osx10, 嵌入式圖像如何組合, 嵌入式臺上盆價格, 屬于嵌入式系統(tǒng)的, ios能轉(zhuǎn)到嵌入式, 嵌入式監(jiān)控主機(jī), 嵌入式完全學(xué)不懂, 嵌入式開發(fā)大學(xué), 嵌入式中斷面試題, 嵌入式錄播軟件代碼, 多個嵌入式板并聯(lián), 嵌入式算法復(fù)雜度, 卡認(rèn)證嵌入式開發(fā), 嵌入式設(shè)備創(chuàng)新特點(diǎn), 嵌入式比賽的橫幅, 嵌入式以太網(wǎng)抓包,
圖1 流動碼加密
該原理下異或函數(shù)的一個輸入是正傳輸(或加密)的當(dāng)前位。只要知道最初鎖存到寄存器中的起始的種子值,該函數(shù)是完全可逆的。在其它加密方案中使用時,這種技術(shù)需要填充信息,以確保有足夠的數(shù)據(jù)來防止泄漏密鑰。此外,過長的消息可能暴露偽隨機(jī)碼發(fā)生器的模式。網(wǎng)絡(luò)中大多數(shù)數(shù)據(jù)包流量都屬于這類加密的范疇。
時變加密
數(shù)據(jù)安全性的一個重要方面是確保密鑰不泄密。即使采用公共密鑰加密,如果私人密鑰泄密,系統(tǒng)也會崩潰。一個確保密鑰永不泄密的簡單方法是不斷發(fā)布新密鑰。一種較好的做法是使用當(dāng)前時間。如果每個設(shè)備知道在某個時間廢棄密鑰并開始使用新密鑰,將很難對密鑰進(jìn)行逆向工程,因為它已過期。這種思想的一種簡單應(yīng)用是酒店磁卡鑰匙。酒店的電子鎖已編程為接受編碼的磁卡,但只在您住宿期間有效。如果沒有其他人使用房間或者對電子鎖重新編程,電子鎖內(nèi)的時鐘會控制鑰匙的有效性。也就是說,電子鎖會在一段時間后使磁卡鑰匙無法打開房門。
現(xiàn)在的問題是確保每個人都知道電子鎖會在何時令磁卡鑰匙失效。有多種方法可以解決這個問題。一種方法是與主時鐘同步,這需要使用協(xié)議來維護(hù)當(dāng)前時間。所需協(xié)議取決于更新密鑰的時間間隔,可以使用帶有時間信息的周期性數(shù)據(jù)包(如NTP或網(wǎng)絡(luò)時間協(xié)議),也可以使用更加準(zhǔn)確的協(xié)議,如IEEE1588精確時間協(xié)議(PTP))。PTP提供非常高的準(zhǔn)確性,無需每個節(jié)點(diǎn)具有GPS接收器或銫原子鐘。以太網(wǎng)物理層器件,如美國國家半導(dǎo)體的DP83640,內(nèi)置了這項功能,且可以與任何媒體訪問控制器(MAC)一起工作。
|
|