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