嵌入式設(shè)計(jì)的安全性考慮事項(xiàng)-ARM_第1頁(yè)
嵌入式設(shè)計(jì)的安全性考慮事項(xiàng)-ARM_第2頁(yè)
嵌入式設(shè)計(jì)的安全性考慮事項(xiàng)-ARM_第3頁(yè)
嵌入式設(shè)計(jì)的安全性考慮事項(xiàng)-ARM_第4頁(yè)
嵌入式設(shè)計(jì)的安全性考慮事項(xiàng)-ARM_第5頁(yè)
已閱讀5頁(yè),還剩1頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

【W(wǎng)ord版本下載可任意編輯】嵌入式設(shè)計(jì)的安全性考慮事項(xiàng)-ARM隨著越來(lái)越多的嵌入式設(shè)備接入網(wǎng)絡(luò)并成為物聯(lián)網(wǎng)的一部分,網(wǎng)絡(luò)黑客們開(kāi)始利用這些連接,以到達(dá)自己不可告人的目的。因此,嵌入式設(shè)備必須提***全性,以防止黑客復(fù)制IP、盜竊數(shù)據(jù)或侵入系統(tǒng),可是對(duì)于嵌入式工程師來(lái)說(shuō),安全是又一個(gè)極其復(fù)雜的主題,在為嵌入式微控制器設(shè)計(jì)系統(tǒng)時(shí),很難把握到底需要怎樣的保護(hù)力度。

為了簡(jiǎn)化安全性這一討論話題,我們從三個(gè)方面開(kāi)展探討。在圖1中,嵌入式設(shè)備A需要與遠(yuǎn)程設(shè)備B通信。此時(shí),需要考慮的三個(gè)安全因素:(1)設(shè)備完整性–安全訪問(wèn)設(shè)備A;(2)通過(guò)身份驗(yàn)證建立與遠(yuǎn)程設(shè)備B的信任關(guān)系;(3)建立信任關(guān)系后,通過(guò)數(shù)據(jù)加密保障兩個(gè)設(shè)備之間的信息傳送安全。

設(shè)備完整性是指如何防止嵌入式設(shè)備上的代碼(或IP)和數(shù)據(jù)受到未授權(quán)的訪問(wèn)(如遠(yuǎn)程軟件攻擊、通過(guò)已建立的用戶接口獲得訪問(wèn)權(quán)限或?qū)ο到y(tǒng)硬件開(kāi)展物理/探測(cè)攻擊)??梢酝ㄟ^(guò)多種方式防范這些攻擊,但各個(gè)方法的成本和復(fù)雜性也各不相同。

在設(shè)備之間建立信任關(guān)系是指一個(gè)或兩個(gè)設(shè)備間相互驗(yàn)證真?zhèn)危源_保不會(huì)將數(shù)據(jù)發(fā)送至冒名頂替的設(shè)備,或從這樣的設(shè)備接收數(shù)據(jù)。建議信任關(guān)系的常用方法是非對(duì)稱密鑰加密。此方法使用一對(duì)密鑰(一個(gè)私人密鑰和一個(gè)公共密鑰)來(lái)建立信任關(guān)系。私人密鑰用于加密而公共密鑰用于解密。非對(duì)稱密鑰加密的常用算法為RSA和ECC。

建立信任關(guān)系之后,如果從設(shè)備A向設(shè)備B傳輸數(shù)據(jù),對(duì)稱加密算法將對(duì)其開(kāi)展保護(hù)。對(duì)稱加密使用相同密鑰開(kāi)展加密和解密。(此方法的速度比非對(duì)稱加密快,這也是并非所有通信都使用非對(duì)稱加密的原因)。該算法目前的加密標(biāo)準(zhǔn)為AES(加密標(biāo)準(zhǔn))。這是一種使用相同長(zhǎng)度的密鑰對(duì)128、192或256位數(shù)據(jù)塊開(kāi)展加密的對(duì)稱密鑰塊加密標(biāo)準(zhǔn)。

雖然任何加密算法在長(zhǎng)時(shí)間攻擊下都可能被破解,但即使使用現(xiàn)代超級(jí)計(jì)算機(jī)開(kāi)展蠻力攻擊(指嘗試每一種密鑰組合:2128或3.4x103種),破解AES-128密鑰塊加密可能需要花費(fèi)一百萬(wàn)年時(shí)間,而AES-256加密算法更有2256或1.1x1077個(gè)組合。由此,AES-128或AES-256都適用于防止蠻力攻擊。但是通常來(lái)說(shuō),AES-128更佳,因?yàn)槠溆?jì)算效率比AES-256要高40%。這么看來(lái),蠻力破解AES的可能性幾乎微乎其微。因此,黑客們將主要精力花在提取AES密鑰上。如果未能安全地保護(hù)AES密鑰,那么無(wú)論算法多么安全都沒(méi)有用。這就好似是用一個(gè)六英寸厚的鋼門(mén)保護(hù)您的家,卻將鑰匙留在門(mén)墊下面。

安全性并非是一個(gè)必須的剛性需求。嵌入式設(shè)計(jì)中到底需要什么程度的安全性取決于您所連接的設(shè)備、需要保護(hù)的內(nèi)容以及沖破安全防護(hù)時(shí)所造成的損失。圖2中列示了嵌入式設(shè)計(jì)中可用的不同安全性級(jí)別。

列表示典型的嵌入式應(yīng)用。如果嵌入式設(shè)備無(wú)需接入互聯(lián)網(wǎng),不是網(wǎng)絡(luò)的一部分,則不需要使用加密算法、建立信任關(guān)系或密鑰存儲(chǔ)。但是,仍需注意設(shè)備完整性,尤其是在知識(shí)產(chǎn)權(quán)(IP)保護(hù)非常重要的應(yīng)用中。防止競(jìng)爭(zhēng)對(duì)手讀取內(nèi)部Flash中的程序內(nèi)容可以保護(hù)公司產(chǎn)品的知識(shí)產(chǎn)權(quán)不受潛在抄襲者的侵害,為了實(shí)現(xiàn)此種保護(hù),需要尋找配備內(nèi)置代碼讀取保護(hù)功能的微控制器。

如果需要開(kāi)展IoT連接,則需要考慮附加的安全功能,以實(shí)現(xiàn)代碼和數(shù)據(jù)保護(hù)。在通用微控制器中實(shí)現(xiàn)軟件安全算法,即可滿足安全傳送信息所需的所有要求。軟件實(shí)現(xiàn)的RSA或ECC可以用于建立信任關(guān)系,而軟件實(shí)現(xiàn)的AES可以用于安全傳送信息。密鑰存儲(chǔ)在Flash或RAM中,并且通常使用軟件技術(shù)開(kāi)展保護(hù)。但是,與由硬件加速的AES實(shí)施相比,軟件實(shí)現(xiàn)的AES算法在安全性上還是略遜一籌。

圖2同時(shí)列出了將運(yùn)行軟件算法的通用微控制器替換為配備硬件安全功能(如硬件加速的AES加密、真隨機(jī)數(shù)生成器和改良版AES密鑰存儲(chǔ))的微控制器的優(yōu)點(diǎn)。

與軟件實(shí)現(xiàn)的AES實(shí)施相比,硬件加速AES模塊的優(yōu)勢(shì)就是其運(yùn)行速度要快八倍。同時(shí),硬件AES更加省電(需要的MCU計(jì)算更少,因此更省電),占用的程序代碼空間也更小。如果能夠充分利用微控制器內(nèi)置的硬件加速AES,就可以更加高效地運(yùn)行相同的軟AES加密算法。

真“隨機(jī)數(shù)發(fā)生器(RNG)”是用于創(chuàng)立真隨機(jī)密鑰的軟件實(shí)現(xiàn)的物理改良版。真RNG使用物理現(xiàn)象(如噪音)來(lái)創(chuàng)立隨機(jī)數(shù),而軟件實(shí)現(xiàn)則必須依賴算法才能創(chuàng)立隨機(jī)數(shù)。與軟件實(shí)施相比,真RNG更加不可預(yù)測(cè)。因此,其安全性更高。

某些微控制器中的附加安全功能可以將AES密鑰存儲(chǔ)于存儲(chǔ)器中僅可通過(guò)硬件IP塊讀取的位置。這樣一來(lái),密鑰就無(wú)法被軟件提取。

當(dāng)黑客無(wú)法以物理方式訪問(wèn)嵌入式設(shè)備時(shí),配備附加安全功能和軟件加密算法的微控制器可以提供出色的解決方案。例子為住宅中的恒溫器,您可能會(huì)擔(dān)心有人會(huì)通過(guò)遠(yuǎn)程訪問(wèn)它以侵入您的內(nèi)部網(wǎng)絡(luò)。但是,您可能不會(huì)擔(dān)心有人闖入您的房子并探測(cè)恒溫器中的微控制器,從而提取其中的AES密鑰。如果有人闖入您的住宅,那么,您所面臨的問(wèn)題比丟失AES密鑰要大得多。

另一方面,如果您在房子外面安裝了智能儀表,則可能會(huì)更加吸引那些想以物理方式攻擊和盜取密鑰的黑客的注意力。對(duì)于電力公司而言,電費(fèi)收益是其需要保護(hù)的重要資產(chǎn)。因此,他們可能將資金花費(fèi)更多地花費(fèi)在防篡改安全功能上。

將微控制器與安全元件相結(jié)合可以為您的嵌入式系統(tǒng)提供銀行級(jí)別的安全性(圖2)。安全元件是一個(gè)防篡改IC,它可以為密鑰和證書(shū)提供安全的存儲(chǔ)位置;同時(shí)通常配備硬件加速RSA和ECC,以實(shí)現(xiàn)更快的身份驗(yàn)證。雖然硬件加速AES加密仍由更快的微控制器控制,但是安全元件可以提高設(shè)備的完整性并帶頭建立信任關(guān)系和AES密鑰保護(hù)。

恩智浦半導(dǎo)體公司的LPC18Sxx和LPC43Sxx微控制器是現(xiàn)有LPC1800和LPC4300系列的擴(kuò)展。這兩款微控制器添加了用于代碼和數(shù)據(jù)保護(hù)的硬件功能(圖3)。LPC18Sxx和LPC43Sxx系列配備多種高端連接功能,包括以太網(wǎng)、兩個(gè)高速USB和SDIO(與WiFi模塊之間實(shí)現(xiàn)快速的數(shù)據(jù)連接)。此外,某些版本還支持圖形LCD連接。大部分恩智浦LPC微控制器提供代碼讀取保護(hù)(CRP)功能,該功能可用于保護(hù)開(kāi)發(fā)者代碼。增加的安全功能包括一個(gè)AES-128硬件加速器、一個(gè)真隨機(jī)數(shù)發(fā)生器和兩個(gè)位于可編程存儲(chǔ)器中用于存儲(chǔ)AES密鑰的128位OTPKey。

兩個(gè)128位可編程(OTP)密鑰位置有助于防止密鑰在受到軟件攻擊后被遠(yuǎn)程提取。將密鑰(以加密格式)寫(xiě)入OTP后,不可再通過(guò)軟件或JTAG邊界掃描對(duì)其開(kāi)展訪問(wèn)。這些密鑰僅可通過(guò)內(nèi)部AES硬件模塊訪問(wèn)。

和LPC43Sxx微控制器提供內(nèi)置Flash(內(nèi)部512kB至1MB)和無(wú)內(nèi)置Flash版本。無(wú)內(nèi)置Flash版本必須在復(fù)位時(shí)從外部存儲(chǔ)器位置(即外部QSPIFlash)引導(dǎo),并通過(guò)大型內(nèi)部RAM運(yùn)行。為了防止代碼在引導(dǎo)過(guò)程中被他人看到,可以在復(fù)位時(shí)在QSPI中存儲(chǔ)一個(gè)加密的圖像,LPC18Sxx或LPC43Sxx將會(huì)讀取此加密圖像、通過(guò)內(nèi)置CMAC消息身份驗(yàn)證對(duì)其開(kāi)展驗(yàn)證、使用存儲(chǔ)在OTP中的AES模塊和128位密鑰解密并從內(nèi)部RAM開(kāi)始執(zhí)行已解密的代碼。

和LPC43Sxx微控制器適合于任何需要廣泛連接和高處理器性能的IoT應(yīng)用,包括工業(yè)控制、工業(yè)自動(dòng)化或診斷應(yīng)用、智能家居產(chǎn)品(包括恒溫器和門(mén)禁控制)、汽車售后市場(chǎng)和消費(fèi)電子產(chǎn)品(如樂(lè)器、打印機(jī)和其他聯(lián)網(wǎng)配件)。另一個(gè)典型應(yīng)用為安全I(xiàn)oT網(wǎng)關(guān)(圖4)。

在本圖中,微控制器通過(guò)以太網(wǎng)或基于SPI接口擴(kuò)展的WiFi,提供配備硬件加速AES的高速加密連接。CypherbridgeSystems是恩智浦的軟件合作伙伴,提供適用于LPC18Sxx和LPC43Sxx的IoT和云互聯(lián)軟件開(kāi)發(fā)套件,從而充分利用AES硬件加速的優(yōu)勢(shì)。

只需通過(guò)I2C接口將恩智浦A7系列安全芯片連接到微控制器,即可添加銀行級(jí)別的安全性。A7安全芯片將控制硬件加速身份驗(yàn)證,并為云存儲(chǔ)所需的證書(shū)提供安全存儲(chǔ)。

已開(kāi)發(fā)了EMap,這是一款使用LPC

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論