国产真实伦对白精彩脏话,一本大道无码人妻精品专区,17c嫩草51久久91嫩草,性大片1000免费看
當(dāng)前位置:首頁(yè)>新聞中心>技術(shù)分享>航芯技術(shù)分享 | ACM32 MCU安全特性概述

航芯技術(shù)分享 | ACM32 MCU安全特性概述

發(fā)布時(shí)間:2022-04-25

隨著物聯(lián)網(wǎng)的發(fā)展,智能化產(chǎn)品的不斷涌現(xiàn),信息安全問(wèn)題也日漸受到關(guān)注。因此,通用安全MCU產(chǎn)品也應(yīng)運(yùn)而生,能夠更好地幫助客戶(hù)在其產(chǎn)品設(shè)計(jì)中加強(qiáng)安全性,助力IoT的應(yīng)用創(chuàng)新。


本文將詳細(xì)介紹上海航芯ACM32 MCU的安全特性。


安全啟動(dòng)與安全更新


上海航芯MCU提供安全啟動(dòng)與安全更新參考實(shí)現(xiàn),具體可見(jiàn)對(duì)應(yīng)的軟件包。安全啟動(dòng)與安全更新利用芯片的硬件安全特性來(lái)保證啟動(dòng)代碼和更新固件不被篡改,啟動(dòng)入口唯一。


存儲(chǔ)保護(hù)


存儲(chǔ)保護(hù)主要就是保護(hù)存儲(chǔ)區(qū)的代碼和數(shù)據(jù)不被篡改以及非法獲取,主要需要抵抗三個(gè)方面的攻擊,軟件攻擊、非侵入式攻擊和侵入式攻擊。


? 軟件攻擊主要包括通過(guò)調(diào)試端口訪問(wèn)數(shù)據(jù),軟件漏洞和緩沖區(qū)溢出等;


? 非侵入攻擊主要包括通過(guò)故障注入導(dǎo)致程序和數(shù)據(jù)出錯(cuò),以及旁路攻擊獲取敏感信息;


? 侵入式攻擊主要是通過(guò)開(kāi)蓋或者直接通過(guò)測(cè)試儀器來(lái)探測(cè)內(nèi)部信號(hào);


針對(duì)這些攻擊,芯片主要從五個(gè)方面進(jìn)行應(yīng)對(duì),包括存儲(chǔ)區(qū)域訪問(wèn)控制、存儲(chǔ)地址加擾、數(shù)據(jù)加密和完整性校驗(yàn)以及環(huán)境檢測(cè)。


其中存儲(chǔ)區(qū)域訪問(wèn)控制包括讀保護(hù)(RDP),寫(xiě)保護(hù)(WRP),專(zhuān)有代碼讀保護(hù)(PCROP),存儲(chǔ)區(qū)域權(quán)限控制以及安全存儲(chǔ)區(qū)。


具體配置可見(jiàn)《ACM32-在線編程器》:http://m.shqinye39.com/index.php/product/detail/id/44.html


? 讀取保護(hù)(RDP)是全局Flash讀保護(hù),可保護(hù)嵌入式固件代碼,避免復(fù)制、逆向工程、使用調(diào)試工具讀出或其他方式的入侵攻擊。該保護(hù)功能在用戶(hù)下載Flash代碼后,由用戶(hù)在下載固件時(shí)自行設(shè)置。




eflash啟動(dòng):勾選表示從eflash啟動(dòng),未選表示從Boot模式;


SWD使能:勾選表示使能SWD功能,未選表示禁止SWD功能;


讀保護(hù)配置鎖定:勾選后,將鎖定“eflash啟動(dòng)”和“SWD使能”的設(shè)置,生效后不可再更改;反之未選則不會(huì)鎖定。


勾選或取消選擇所要配置的項(xiàng)目,點(diǎn)擊“配置”進(jìn)行操作,操作完成,將在“發(fā)送顯示區(qū)”顯示操作結(jié)果,復(fù)位或重新上電生效。


注:此配置可能會(huì)影響SWD或者BOOT功能,請(qǐng)謹(jǐn)慎操作。


? 寫(xiě)保護(hù)(WRP)用于保護(hù)指定區(qū)域Flash數(shù)據(jù),避免數(shù)據(jù)被惡意更新或擦除。寫(xiě)保護(hù)可應(yīng)用于Flash內(nèi)指定的內(nèi)存空間。




寫(xiě)保護(hù)(WRP)后,相應(yīng)的區(qū)域?qū)⒔共翆?xiě),片擦指令將不能使用。


在所要配置的區(qū)域,輸入“起始地址”和“操作長(zhǎng)度”,勾選“配置”按鈕,點(diǎn)擊“使能/禁止”進(jìn)行操作,操作完成,將在“發(fā)送顯示區(qū)”顯示操作結(jié)果,復(fù)位或重新上電生效。


若操作范圍超過(guò)eflash最大長(zhǎng)度,或要使能的兩個(gè)區(qū)域地址重疊,將報(bào)錯(cuò)。


注:使能/禁止后,立即寫(xiě)入相應(yīng)NVR,讀取配置為操作后的設(shè)置,但需復(fù)位或重新上電方能生效。


? 專(zhuān)有代碼讀保護(hù)(PCROP)用于保護(hù)指定區(qū)域Flash代碼,保護(hù)專(zhuān)有代碼不被最終用戶(hù)代碼、調(diào)試器工具或惡意代碼所修改或讀取。




PCROP使能后,所選區(qū)域只能執(zhí)行,不能讀取和擦寫(xiě),片擦指令將不能使用。


在所要配置的區(qū)域,輸入“起始地址”和“操作長(zhǎng)度”,勾選“配置”按鈕,點(diǎn)擊“使能/禁止”進(jìn)行操作,操作完成,將在“發(fā)送顯示區(qū)”顯示操作結(jié)果,復(fù)位或重新上電生效。


若操作范圍超過(guò)eflash最大長(zhǎng)度,或要使能的兩個(gè)區(qū)域地址重疊,將報(bào)錯(cuò)。


注:禁止PCROP區(qū)域后,此時(shí)讀取配置依然是禁止前的設(shè)置,需要將SWD使能關(guān)閉,復(fù)位或重新上電方能生效。


? 存儲(chǔ)區(qū)域權(quán)限控制利用內(nèi)核本身自帶的MPU單元,這個(gè)單元可以劃分出幾個(gè)region,每個(gè)region可以設(shè)置不同的訪問(wèn)屬性,配合內(nèi)核的User和Privilege模式,能夠?qū)崿F(xiàn)對(duì)敏感數(shù)據(jù)的訪問(wèn)控制,使得敏感數(shù)據(jù)不能夠被惡意代碼獲取。這樣隔離能夠有效地降低軟件漏洞帶來(lái)的風(fēng)險(xiǎn)。


? 安全存儲(chǔ)區(qū)可以用于保護(hù)特有的一些程序,安全存儲(chǔ)區(qū)的大小可以進(jìn)行配置,程序運(yùn)行期間可以通過(guò)寄存器打開(kāi)對(duì)這段安全存儲(chǔ)區(qū)的保護(hù),保護(hù)使能后則無(wú)法再次訪問(wèn)其中的任何內(nèi)容。




在所要配置的區(qū)域,輸入“操作長(zhǎng)度”,點(diǎn)擊“使能/禁止”進(jìn)行操作,操作完成,將在“發(fā)送顯示區(qū)”顯示操作結(jié)果,復(fù)位或重新上電生效。若操作范圍超過(guò)eflash最大長(zhǎng)度,將報(bào)錯(cuò)。


注:使能/禁止后,立即寫(xiě)入相應(yīng)NVR,讀取配置為操作后的設(shè)置,但需復(fù)位或重新上電方能生效。


存儲(chǔ)數(shù)據(jù)加密,地址加擾主要就是對(duì)片內(nèi)FLASH和SRAM上的數(shù)據(jù)進(jìn)行加密存儲(chǔ),并且存儲(chǔ)的地址也被串?dāng)_。針對(duì)于部分代碼和數(shù)據(jù)需要放在片外存儲(chǔ)器的情況,公司也有部分系列帶有OTFDEC(On The Fly DECryption)硬件,OTFDEC模塊在總線與OSPI之間,可以實(shí)時(shí)地解密外部Flash上的密文代碼和數(shù)據(jù),只需要設(shè)置好相應(yīng)的區(qū)域、密鑰等,OTFDEC就可以自動(dòng)解密被訪問(wèn)的密文數(shù)據(jù),無(wú)需額外的軟件參與解密,不需要將解密數(shù)據(jù)加載到內(nèi)部RAM,可以直接運(yùn)行片外Flash上的加密代碼。OTFDEC模塊也支持加密,但不是實(shí)時(shí)加密,數(shù)據(jù)首先被加密到RAM中,需要另外將RAM中的密文寫(xiě)回外部FLASH。


存儲(chǔ)數(shù)據(jù)完整性校驗(yàn)主要就是對(duì)存儲(chǔ)區(qū)的數(shù)據(jù)進(jìn)行奇偶校驗(yàn),可以有效抵抗故障注入攻擊。


環(huán)境檢測(cè)主要是檢測(cè)芯片工作電壓是否在正常范圍,如果不在正常工作范圍則進(jìn)行報(bào)警,以抵抗電壓故障注入攻擊。


密碼學(xué)算法引擎


上海航芯MCU系列都帶有HASH,AES,TRNG和CRC硬件模塊。直接調(diào)用對(duì)應(yīng)的API函數(shù)即可使用相應(yīng)的算法功能,有效滿(mǎn)足數(shù)據(jù)傳輸及其完整性校驗(yàn)中的密碼需求。


入侵保護(hù)


入侵保護(hù)主要是芯片可以檢測(cè)遭受的物理入侵從而刪除備份寄存器中的敏感數(shù)據(jù),從而保護(hù)芯片敏感數(shù)據(jù)不會(huì)竊取。該功能主要由RTC和備份寄存器完成。


備份寄存器處于備份域中。待機(jī)模式喚醒或系統(tǒng)復(fù)位操作都不會(huì)影響這些寄存器。只有當(dāng)被檢測(cè)到有侵入事件和備份域復(fù)位時(shí),這些寄存器才會(huì)復(fù)位。


RTC支持兩個(gè)外部IO侵入事件檢測(cè),并可以記錄侵入時(shí)間。并且需要輸入私鑰才允許對(duì)RTC寄存器進(jìn)行寫(xiě)操作,避免攻擊者篡改RTC寄存器。


生命周期管理


生命周期管理主要針對(duì)芯片測(cè)試開(kāi)發(fā)到芯片使用階段中可能存在的一些安全風(fēng)險(xiǎn),例如調(diào)用測(cè)試或者調(diào)試接口非法獲取數(shù)據(jù)。具體對(duì)應(yīng)的功能包括測(cè)試模式禁止,JTAG禁止和128位唯一序列號(hào)。


? 測(cè)試模式禁止:芯片測(cè)試完成之后將測(cè)試模式禁止,交給客戶(hù)的芯片不能再返回到測(cè)試模式,這樣攻擊者就不能通過(guò)測(cè)試接口獲取敏感數(shù)據(jù);


? JTAG禁止:當(dāng)讀保護(hù)(RDP)設(shè)置Level 1以上時(shí),則會(huì)將JTAG功能禁止,使得攻擊者不能通過(guò)調(diào)試接口獲取敏感數(shù)據(jù);


? 128位唯一序列號(hào):128位唯一序列號(hào)綁定了芯片出廠的LOT/WAFER ID和坐標(biāo)等。該序列號(hào)唯一且不可復(fù)制,開(kāi)發(fā)者可將應(yīng)用程序與該芯片的序列號(hào)綁定,這樣可以使每個(gè)下載應(yīng)用程序的芯片不可被復(fù)制。管理員需要管控好每顆芯片的序列號(hào),這樣便于產(chǎn)品的定位和追蹤,防止安全產(chǎn)品的復(fù)制。


安全生產(chǎn)


安全生產(chǎn)主要是保證交由第三方工廠進(jìn)行燒寫(xiě)的代碼或者數(shù)據(jù)不被盜取和篡改以及過(guò)量生產(chǎn)。


針對(duì)安全生產(chǎn),上海航芯提供了一套安全的解決方案,全程代碼加密燒錄,并帶動(dòng)態(tài)校驗(yàn)碼(動(dòng)態(tài)校驗(yàn)碼與芯片唯一序列號(hào)綁定),而且可以進(jìn)行燒錄計(jì)數(shù),進(jìn)行產(chǎn)量控制,避免過(guò)量生產(chǎn)。并且支持在線/離線燒錄,遠(yuǎn)程交付和更新固件,在保證固件安全性的前提下極大方便客戶(hù)進(jìn)行燒錄固件。


如需銷(xiāo)售咨詢(xún),請(qǐng)郵件至sales@aisinochip.com

国产真实伦对白精彩脏话,一本大道无码人妻精品专区,17c嫩草51久久91嫩草,性大片1000免费看