我年輕時(shí)最喜歡的一款游戲是捉迷藏。我會(huì)和我的朋友一起玩,嘗試找一個(gè)好的藏身之處總是很有趣。作為一個(gè)哥哥,我和我的弟弟一起玩了同樣的游戲,但是有一點(diǎn)扭曲。我不得不隱藏自己,而是隱藏自己的東西。如果我選擇了好的藏身之處,我的東西是安全的。然而,如果我缺乏自信并且選擇了不好的藏身之處,他們肯定會(huì)找到我的玩具或衣服,有時(shí)會(huì)損壞或丟失它們。
對(duì)于我們這些設(shè)計(jì)和開發(fā)PCB的人來說,保護(hù)你的固件不受黑客的影響喜歡捉迷藏的游戲。固件或微控制器代碼保護(hù)對(duì)于保持產(chǎn)品的保真度以及保護(hù)產(chǎn)品設(shè)計(jì)開發(fā)中的時(shí)間和資本支出投資至關(guān)重要。有幾種很好的微控制器代碼保護(hù)方法可以保護(hù)您的固件免受大多數(shù)黑客的攻擊。但是,就像我頑固的兄弟杰夫一樣,一些黑客決心通過以更便宜的價(jià)格淹沒市場并以低價(jià)出售劣質(zhì)產(chǎn)品來假裝它們是由你制造的,從而偷走你的辛勤工作和利潤。對(duì)于這些黑客來說,鍵控序列號(hào)芯片是微控制器代碼保護(hù)的有效隱藏和尋找策略。
數(shù)到萬:PIC單片機(jī)代碼保護(hù)
< p>通常,通過將機(jī)器代碼下載到本地存儲(chǔ)器來編程處理器。這可以通過閃存來實(shí)現(xiàn),其中代碼是可擦除的,并且處理器可以被重新編程或硬連線(燒錄)到存儲(chǔ)器中,其中不能進(jìn)行未來的改變。在這些情況下,程序代碼的位置即使是沒有經(jīng)驗(yàn)的黑客也是眾所周知的,這使得它非常不安全。
PIC單片機(jī)是目前最流行的控制器之一,它們具有廣泛的架構(gòu)和不同的功能。無論方差如何,這些處理器的控制器代碼結(jié)構(gòu)都是類似的。大多數(shù)固件開發(fā)都是通過使用開發(fā)板完成的,這對(duì)于調(diào)試代碼非常有用。然而,這些板通過串行電纜提供對(duì)控制器存儲(chǔ)器的簡單訪問。
沒有足夠的微控制器代碼保護(hù)訪問代碼很容易
隱藏和查找代碼安全性
使用序列號(hào)密鑰是一種加密形式,類似于用于密碼保護(hù)的內(nèi)容。每個(gè)制造的微控制器都分配有唯一的代碼,其范圍可以從8位到80位或更長。這個(gè)想法是防止訪問控制器代碼,除非訪問設(shè)備或程序匹配代碼。這可以防止窺探程序代碼被窺探。與密碼保護(hù)一樣,黑客已經(jīng)開發(fā)了密鑰生成器,試圖創(chuàng)建適當(dāng)?shù)脑L問代碼。如果有足夠的時(shí)間,這些在獲得正確的代碼時(shí)非常有效。為了阻止這種情況,我建議您將密鑰存儲(chǔ)在黑客無法訪問或可能無法查看的位置。
唯一密鑰必須位于可在執(zhí)行程序之前讀取的位置。雖然這可能聽起來有限,但有很多選擇。例如:
閃存:這是存儲(chǔ)可刪除和重寫的程序代碼和密鑰的最佳位置。這在調(diào)試過程中用于測試和開發(fā)。
程序存儲(chǔ)器:這通常是為程序保留的專用存儲(chǔ)器塊。這也是隱藏鑰匙的好地方。除非知道密鑰的加密方法,否則很難將實(shí)際程序代碼與密鑰代碼分開。
微處理器內(nèi)存(EEPROM):密鑰是硬連線的或刻錄到ROM設(shè)備中,無法更改。這取決于系統(tǒng)阻止入侵者讀取訪問的能力。通常在制造過程中或發(fā)貨前完成。
Mikroe PIC微控制器框圖
如上所示,有幾個(gè)存儲(chǔ)器位置,密鑰可以存儲(chǔ)在微控制器內(nèi),并且外部讀取設(shè)備無法直接訪問。此外,可以在PCB上添加外部安全存儲(chǔ)組件,微控制器可以通過專用端口位置直接訪問該組件。
您可以通過實(shí)施專用安全存儲(chǔ)設(shè)備來創(chuàng)建外部存儲(chǔ)器單元。除了微控制器之外,PCB是無法訪問的。由于大多數(shù)PCB包含許多連接到微控制器的設(shè)備,因此潛在的黑客無法檢測到這種模糊設(shè)備。相反,它被假定為系統(tǒng)關(guān)鍵組件。
-
芯片
+關(guān)注
關(guān)注
460文章
52520瀏覽量
441089 -
集成電路
+關(guān)注
關(guān)注
5425文章
12070瀏覽量
368524 -
單片機(jī)
+關(guān)注
關(guān)注
6067文章
44992瀏覽量
650605 -
華強(qiáng)pcb線路板打樣
+關(guān)注
關(guān)注
5文章
14629瀏覽量
43933
發(fā)布評(píng)論請(qǐng)先 登錄
評(píng)論