一、簡介
很多的工程師,在開發(fā)杰理藍牙芯片的第一步就會有一個很深的疑惑,關(guān)于key的
1、什么是key文件?
2、Key文件是如何產(chǎn)生的?
3、為什么需要他key文件?
4、如何添加key文件?
5、以及實際開發(fā)中的一些報錯該如何處理?
二、詳細描述
關(guān)于杰理芯片的key文件,實際上 杰理芯片特有的一種機制,而這種機制就是存在于杰理芯片特有的架構(gòu),也是杰理公司延續(xù)將近10年的特點,估計以后也會是這種機制。具體為什么,請聽我娓娓道來,這里是我個人的理解和總結(jié),不代表杰理的觀點
2.1 什么是key文件?
簡單理解,key文件就是密碼文件,用來加密芯片的。僅此而已,無其他作用
2.2 key文件是如何產(chǎn)生的?誰來分配?
首先,key文件是杰理公司給每家代理商分配的,只有杰理才有權(quán)限分配key,一旦分配之后就是固定存在的,不可修改 。
其次key文件一旦燒錄到芯片里面之后,就不可修改,不可刪除
最后,key文件要寫入到芯片里面去,只有兩個途徑
1、批量生產(chǎn)用的一拖二燒寫器
2、批量生產(chǎn)用的一拖八燒寫器
2.3 為什么需要key文件?
要明白key的作用,就要先從杰理芯片的整體架構(gòu)講起:
1、杰理的芯片架構(gòu)是SOC 。他是由控制器+存儲器的合封產(chǎn)物,也就是你看到的是一顆芯片,但是內(nèi)部其實是2顆,甚至可能是三顆【比如早期的WIFI芯片】
==》其中“控制器”這個是杰理公司所設(shè)計,大概是才有OTP的機制,就是控制器生產(chǎn)出來就會燒錄固定的代碼,引導(dǎo)芯片直接去讀取外掛的spiflash的內(nèi)容到ram去執(zhí)行
==》其中“存儲器”是外購的,用來存放用戶的程序
2、理解這個之后,我們再來探討,杰理為什么要這么去做?
==》其實答案,呼之欲出,就是為了降成本
==》因為要在單顆芯片上面實現(xiàn)大容量的rom程序空間,成本是比較高昂的
==》但是如果選擇把這些存儲空間外擴,用成熟的工藝、低廉的價格的spiflash去代理,這樣就是完美的解決了這個問題
==》這里還要引入一個技術(shù),就是虛擬存儲映射。早期杰理芯片開發(fā)的時候,會有一個切換bank的概念,就是程序執(zhí)行到一個新的地方,就load對應(yīng)位置的flash代碼到ram里面運行,此時全局變量的定義就要特殊的處理 。但是目前杰理的芯片有了虛擬存儲映射之后,就沒有切換bank的概念了。
總結(jié):正因為這種特殊的機制,就需要密碼了,也稱之為key文件,其實就是密碼。先來說說,不加key有什么隱患
==》假如別人要破解你的程序,只需要拿到你的芯片,開蓋,然后把里面的spiflash的bin文件全部讀出來,再進行簡單的分析,就可以直接破解了 。因為你所有的程序都是在內(nèi)置的spiflash里面放著的
==》引入key之后的好處:
(1)、通過批量燒寫器寫入“key”到芯片內(nèi)部的控制器里面 。再將經(jīng)過key加密的bin文件燒入到內(nèi)置的spiflash里面 。那么請問這種情況你該如何破解呢
(2)、這個加密bin文件的操作,是杰理開發(fā)環(huán)境最終生成程序的時候,產(chǎn)生的
(3)、因為你讀出來flash的bin文件是經(jīng)過加密的,沒有用
(4)、假如你知道了key文件,也就是密碼,你也沒法復(fù)制。因為你獲取的bin文件沒辦法反推出來實際的bin文件
所以,整個的機制這里就講明白了,key存在的必要性
2.4 如何在程序中添加key文件
這里拿AC695N系列的芯片舉例說明
至于key文件獲取,需要聯(lián)系您的供應(yīng)商直接獲取即可
2.5 實際開發(fā)中關(guān)于key文件報錯的處理
錯誤:KEY不匹配!!
芯片沒有被燒寫過KEY,請刪除“-key參數(shù)”
ERROR: Failed to parse device info, error info:ERR KEY
已復(fù)制 個文件。
錯誤:fw文件中已經(jīng)存在要添加的文件。
1個文件。
錯誤:fw文件中已經(jīng)存在要添加的文件。
==》這個問題,log信息寫的很詳細了,就是目標(biāo)芯片沒有燒錄key 。而你的程序里面加入了key文件,導(dǎo)致不能下載,僅此而已,詳見2.4章節(jié),刪除加key這個操作即可解決
三、總結(jié)
很多工程師質(zhì)疑key存在的意義,覺得很麻煩。有這個疑惑只是自己沒有深入去理解而已
所以通過這篇文章詳細的講解他的來歷,以及存在的必要性,希望能幫助到大家
審核編輯 黃昊宇
-
藍牙芯片
+關(guān)注
關(guān)注
17文章
377瀏覽量
46112
發(fā)布評論請先 登錄
相關(guān)推薦
評論