《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 嵌入式技術(shù) > 業(yè)界動態(tài) > 拒絕破解:從共享單車談如何防止代碼失竊

拒絕破解:從共享單車談如何防止代碼失竊

2017-04-06
來源:ZLG致遠(yuǎn)電子
關(guān)鍵詞: 共享單車 加密 ARM芯片 芯片

  如今共享大戰(zhàn)愈演愈烈,,摩拜之后,小黃,、小藍(lán)更是層出不窮,。“共享”給大家?guī)矸奖愕耐瑫r,也在經(jīng)歷著嚴(yán)峻的考驗,。為了防止單車被破解,,必須采取嚴(yán)格可靠的保密措施,為產(chǎn)品保駕護(hù)航,。

  看到那些被刮去號碼牌,,據(jù)為己有的共享單車,作為工程師的我,,不禁想到自己加班開發(fā)的代碼可能會被別人分分鐘讀出來破解,,頗有些擔(dān)心,眼前這些就是實實在在的前“車”之鑒,。

1.jpg

  面對日益重要知識產(chǎn)權(quán)保護(hù),,大部分芯片廠商為芯片設(shè)計完善了安全的代碼保護(hù)方案——芯片加密。各個廠商的加密手段不同,,主要分為幾類:

  一級加密(可擦除),;

  二級加密(密碼加密);

  三級加密(加“死密”),。

  不同的芯片可能提供了一種或多種級別的加密方式,,根據(jù)不同的需求靈活使用加密方案才可以做到游刃有余。

  一級加密

  如果你的產(chǎn)品可能需要升級固件,,建議使用這種加密方式,。

  一級加密又分為多種形式,最常見的一種形式經(jīng)常在芯片手冊中叫做“Protect”,。加密后如果試圖讀出芯片中的代碼,則會讀出全0x00,,或者是全0xFF,,甚至是隨機數(shù)據(jù),但是通過某些特殊的方法,,比如擦除或是解保護(hù),,就可以將芯片重置為默認(rèn)狀態(tài)。

  另外一種常見于ARM芯片,,我們知道ARM芯片采用統(tǒng)一的編程接口SWD接口,,某些ARM芯片會提供兩個AP(Access Port),通過關(guān)閉訪問內(nèi)部空間的AP可以達(dá)到加密的目的,。而如果想解鎖,,就要訪問另一條AP,這條AP只可以訪問一個寄存器,,通過寫入該寄存器特定的數(shù)據(jù)就可以將芯片重置為默認(rèn)狀態(tài),。

  還有一種加密方式和上面類似,只不過采用了兩個編程接口,而不是同一編程接口的兩條AP,。

  總之,,一級加密就是讓你無法讀取芯片數(shù)據(jù),而又可以通過擦除再次升級固件,。

2.jpg

  二級加密

  如果你的產(chǎn)品需要升級固件,,但是你又不想別人也隨意升級你的固件,可以使用這種加密方式,。

  二級加密與一級加密的不同之處在于,,二級加密在加密時需要提供一段密碼,該密碼會保存到芯片內(nèi)部,,而如果你想重置芯片,,則需要提供這段密碼。這就防止了沒有權(quán)限(不知道密碼)的一方升級代碼,。

  二級加密為密碼保護(hù)的加密,,不過部分廠商的芯片可能并沒有提供這種加密方案。

3.jpg

  三級加密

  如果你的產(chǎn)品要批量生產(chǎn)了,,也不用考慮升級固件,,可以使用這種加密方式。

  三級加密通過向芯片特定位置寫入特定數(shù)據(jù),,或者是直接熔斷熔絲達(dá)到加密目的,,這是個不可逆的過程,一旦加密之后,,芯片就無法再擦除,,讀取或者燒錄,甚至仿真器也無法再連接芯片,。

  三級加密是一條不歸路,,一旦加密,芯片的固件就再也無法更改,,因此需要慎重再慎重,。

4.jpg

  這三種加密方式對產(chǎn)品的保護(hù)一級比一級嚴(yán)密,在不同的產(chǎn)品上靈活的使用不同加密方式才可以保護(hù)好自己的勞動成果而又不被這種保護(hù)所束縛,。

  加密方式盡管多種多樣,,但最終都是對芯片進(jìn)行一些特定的操作,以達(dá)到保護(hù)代碼的目的,。


本站內(nèi)容除特別聲明的原創(chuàng)文章之外,,轉(zhuǎn)載內(nèi)容只為傳遞更多信息,并不代表本網(wǎng)站贊同其觀點,。轉(zhuǎn)載的所有的文章,、圖片,、音/視頻文件等資料的版權(quán)歸版權(quán)所有權(quán)人所有。本站采用的非本站原創(chuàng)文章及圖片等內(nèi)容無法一一聯(lián)系確認(rèn)版權(quán)者,。如涉及作品內(nèi)容,、版權(quán)和其它問題,請及時通過電子郵件或電話通知我們,,以便迅速采取適當(dāng)措施,,避免給雙方造成不必要的經(jīng)濟損失。聯(lián)系電話:010-82306118,;郵箱:[email protected],。