PC軟件的盜版一直是困擾軟件行業(yè)發(fā)展的主要問題,同樣,在嵌入式應(yīng)用領(lǐng)域,隨著近些年黑客技術(shù)和芯片解剖技術(shù)的發(fā)展,嵌入式系統(tǒng)所面臨的攻擊也越來越多,隨之而生的防抄板技術(shù)也引起了產(chǎn)品設(shè)計(jì)者的重視。產(chǎn)品設(shè)計(jì)者目前所面臨的問題主要是黑客對(duì)產(chǎn)品的仿制,其目的是獲得產(chǎn)品設(shè)計(jì)技術(shù)或者降低產(chǎn)品設(shè)計(jì)成本,攻擊手段主要是抄襲產(chǎn)品設(shè)計(jì)者的線路板布線圖和拷貝獲得產(chǎn)品運(yùn)行程序。目前市場(chǎng)通用的ARM,DSP、單片機(jī)通常的安全防護(hù)手段很少,更多的程序暴露在透明的Flash或EEPROM中,面對(duì)不斷發(fā)展的攻擊技術(shù)以及黑客之間的競(jìng)爭(zhēng),產(chǎn)品的破解時(shí)間和成本越來越低,相對(duì)于產(chǎn)品仿制者獲得的巨大利益,有時(shí)其破解成本甚至可以忽略不計(jì)。
尤其在一些非行業(yè)用戶的產(chǎn)業(yè),如游戲機(jī)業(yè),消費(fèi)電子業(yè),甚至出現(xiàn)了仿制產(chǎn)品大大多于自有產(chǎn)權(quán)產(chǎn)品的現(xiàn)象。因此,如何保護(hù)自身的利益,是產(chǎn)品設(shè)計(jì)者目前經(jīng)常面對(duì)的問題,魔道相爭(zhēng),也促進(jìn)了嵌入式系統(tǒng)防抄板技術(shù)的發(fā)展。
嵌入式系統(tǒng)更高的防護(hù)技術(shù)意味著更高的成本,但對(duì)于受到攻擊的產(chǎn)品而言,往往是產(chǎn)銷量大的消費(fèi)電子產(chǎn)品,為增加防護(hù)技術(shù)所增加的產(chǎn)品成本會(huì)削弱產(chǎn)品的價(jià)格競(jìng)爭(zhēng)能力,因此,市場(chǎng)上流行的防抄板安全技術(shù)及產(chǎn)品多屬于低成本的解決方案。下文將對(duì)這些主流方案做一些技術(shù)解析。
1、 早期的口令認(rèn)證防護(hù)技術(shù)
幾年以前,產(chǎn)品設(shè)計(jì)者通常使用一個(gè)邏輯加密卡芯片來給產(chǎn)品定義唯一序列號(hào)或者存儲(chǔ)序列號(hào),這種邏輯加密存儲(chǔ)器必須通過口令認(rèn)證后才能進(jìn)行讀寫,這種防護(hù)技術(shù)面對(duì)黑客的示波器,口令和明文傳輸?shù)臄?shù)據(jù)可輕易被獲得,防護(hù)技術(shù)已經(jīng)完全失效和過時(shí)。
2、 動(dòng)態(tài)口令認(rèn)證防護(hù)技術(shù)
為了避免線路監(jiān)控固定口令的缺陷,一些防護(hù)芯片采用動(dòng)態(tài)口令技術(shù),基本原理是防護(hù)芯片和MCU內(nèi)置相同的密鑰和相同的對(duì)稱算法,利用隨機(jī)數(shù)作為通訊數(shù)據(jù),MCU判斷防護(hù)芯片的計(jì)算結(jié)果正確與否,來決定程序是否繼續(xù)運(yùn)行。這種產(chǎn)品和技術(shù)解決了認(rèn)證過程線路監(jiān)控的問題,但實(shí)際防護(hù)作用微乎其微。因?yàn)镸CU本身沒有硬件防護(hù)功能才選用防護(hù)芯片,而這種防護(hù)芯片的硬件安全性甚至不如MCU,其內(nèi)部存儲(chǔ)的密鑰可以很容易的被獲取。更重要的一點(diǎn),MCU在安全防護(hù)上僅僅做了一個(gè)認(rèn)證流程,可以很容易地被能夠修改程序的黑客輕松跳過。目前市場(chǎng)上這種芯片的銷量雖然很大,但缺乏真正防護(hù)效果,實(shí)際上無償增加了產(chǎn)品設(shè)計(jì)者的成本。
3、 動(dòng)態(tài)口令認(rèn)證+數(shù)據(jù)存儲(chǔ)技術(shù)
為了解決僅僅簡(jiǎn)單認(rèn)證的問題,有些公司繼續(xù)使用安全存儲(chǔ)技術(shù),防護(hù)芯片內(nèi)置動(dòng)態(tài)口令和認(rèn)證算法,并具有數(shù)據(jù)存儲(chǔ)功能,首先使用復(fù)雜的動(dòng)態(tài)雙向認(rèn)證技術(shù),獲得存儲(chǔ)器的讀寫權(quán)限,然后讀寫敏感的數(shù)據(jù)信息。這種防護(hù)芯片,硬件具有一定的安全性,因此具有一定的防護(hù)作用。但是MCU端的安全性并沒有解決,黑客可以通過攻擊MCU端的程序獲取算法和密鑰,通過認(rèn)證后監(jiān)控讀寫通道獲取敏感數(shù)據(jù),因此其安全性也受到了一定的局限。
4、 CPU卡通用COS保護(hù)技術(shù)
但是,CPU卡盡管比較安全,但依然還沒有解決MCU一端的安全問題,對(duì)稱算法的使用使得在MCU端依然要暴露算法和密鑰,另外,對(duì)于CPU卡的使用者而言,COS功能已經(jīng)設(shè)計(jì)好,只能被動(dòng)使用固定指令,功能擴(kuò)展困難,而且第三方COS的權(quán)威性也會(huì)受到人們的擔(dān)心和質(zhì)疑。
5、開放的CPU卡加密協(xié)處理器技術(shù)
CPU卡實(shí)際上依然是一個(gè)單片機(jī),盡管其加載了各種安全技術(shù),但其等同于一個(gè)迷你接口的安全單片機(jī),針對(duì)COS廠商的軟件開發(fā)人員而言,COS編程等同于單片機(jī)開發(fā),所使用的開發(fā)工具和編程語言與單片機(jī)甚至是相同的。因此,如果采用CPU卡做為主MCU的一個(gè)安全協(xié)處理器,輔助MCU工作,使得一些重要程序或者數(shù)據(jù)處理過程在CPU卡內(nèi)部完成,將解決MCU一端的安全問題,同時(shí)CPU卡內(nèi)部通常也具備很大的數(shù)據(jù)存儲(chǔ)空間(20K-120K字節(jié)),安全計(jì)算加大容量安全存儲(chǔ),也大大提高了CPU卡應(yīng)用的性能價(jià)格比。
但是對(duì)于單片機(jī)工程師而言,編寫COS或者與CPU卡進(jìn)行通訊的過程中,面臨的最大困擾是復(fù)雜的ISO7816協(xié)議,為了解決這個(gè)問題,有些技術(shù)使用先在CPU卡內(nèi)部放置通訊固件,將ISO7816協(xié)議變成普通的串口協(xié)議,這樣工程師就能夠象針對(duì)單片機(jī)編程一樣輕松自如地對(duì)安全單片機(jī)進(jìn)行編程了。
CPU卡在SIM領(lǐng)域和金融領(lǐng)域的廣泛應(yīng)用,使得其安全性得到了很大的認(rèn)知。金融應(yīng)用以及SIM卡巨大的發(fā)卡量所帶來的潛在安全風(fēng)險(xiǎn),使CPU卡面臨的安全挑戰(zhàn)是最大的,因此CPU卡的硬件安全防護(hù)技術(shù)是比較全面的,而且在不斷的升級(jí),國(guó)際權(quán)威機(jī)構(gòu)也有針對(duì)CPU卡的安全認(rèn)證,其認(rèn)證費(fèi)用非常昂貴,使得CPU卡的設(shè)計(jì)和生產(chǎn)商往往是國(guó)際性的大公司,這也增加了人們對(duì)CPU卡的信任。
目前常用CPU卡的安全性往往體現(xiàn)在硬件和軟件兩個(gè)方面:
CPU卡的硬件設(shè)計(jì)通常增加了很多的傳感器,如高壓和低壓傳感器,頻率傳感器、濾波器、光傳感器、脈沖傳感器、溫度傳感器等,這些傳感器可以清晰地感覺到外部環(huán)境的變化,可以有效防止黑客利用改變硅片外部環(huán)境而誘導(dǎo)芯片誤感應(yīng)的半入侵攻擊。為了對(duì)付物理攻擊,CPU卡在芯片內(nèi)部對(duì)存儲(chǔ)器和總線系統(tǒng)進(jìn)行加密,存在芯片上的數(shù)據(jù)本身用強(qiáng)大的密碼算法進(jìn)行加密,即便是攻擊者能夠得到這些數(shù)據(jù),也只能獲得無用的信息。另一方面,采用有效的屏蔽網(wǎng)對(duì)攻擊者構(gòu)成有效的屏障。采用微米級(jí)的超細(xì)保護(hù)線來覆蓋安全控制器。這些保護(hù)線被連續(xù)地監(jiān)控,如果某些線與其它短路、切斷或損壞,就會(huì)啟動(dòng)報(bào)警。采用這么多層次的保護(hù)措施,就可以對(duì)控制器起到相當(dāng)?shù)谋Wo(hù)作用,以免于遭受物理攻擊。另外,CPU卡往往內(nèi)部還具有真隨機(jī)數(shù)發(fā)生器和硬件加密協(xié)處理器,以增加計(jì)算的安全性和速度。
除了CPU卡硬件安全性,CPU卡還使用內(nèi)部操作系統(tǒng)COS來實(shí)現(xiàn)數(shù)據(jù)的安全管理,如使用安全狀態(tài)機(jī)來實(shí)現(xiàn)數(shù)據(jù)讀寫的權(quán)限管理,通過隨機(jī)數(shù)認(rèn)證機(jī)制獲取存儲(chǔ)器的權(quán)限,卡內(nèi)存儲(chǔ)的數(shù)據(jù)也可以使用密文或者動(dòng)態(tài)密文的方式進(jìn)行線路通訊,這些技術(shù)基本能夠解決在防護(hù)芯片一端的數(shù)據(jù)安全性。
目前,采用CPU卡進(jìn)行防護(hù)已經(jīng)成為一種領(lǐng)先技術(shù),CPU卡在SIM領(lǐng)域的巨量應(yīng)用使得其成本也能夠逐漸下降到被設(shè)計(jì)者接受的程度。
上一篇:PCB抄板軟件如何選擇
下一篇PCB抄板軟件Protel在PCB走線中的注意事項(xiàng)分析
溫馨提示:
凡在本公司進(jìn)行電路板克隆業(yè)務(wù)的客戶,必須有合法的PCB設(shè)計(jì)版權(quán)來源聲明,以保護(hù)原創(chuàng)PCB設(shè)計(jì)版權(quán)所有者的合法權(quán)益;