使用軟解密來(lái)破解芯片UID加密
發(fā)表時(shí)間:2020-09-13 09:19:45 人氣:5932
目前常見(jiàn)的STM32及GD32系列的MCU芯片都具有唯一UID,目前成都子程電子提供芯片解密等服務(wù)。
UID是唯一標(biāo)識(shí)符(unique identifier),在STM32系列微控制器的每一顆芯片都具有全球唯一的標(biāo)識(shí)符,該標(biāo)識(shí)符為128位二進(jìn)制序列。因此我們可以利用芯片UID的唯一性對(duì)程序進(jìn)行加密,使每一個(gè)產(chǎn)品中的程序也具有唯一性,即使非法使用者獲取了MCU中的程序復(fù)制到其他芯片中也是不能正常運(yùn)行的,從而達(dá)到保護(hù)開(kāi)發(fā)者的知識(shí)產(chǎn)權(quán)不被侵犯和盜用的目的。
加密可利用的資源:STM32有一個(gè)ID號(hào),加密芯片有一個(gè)ID號(hào)。加密芯片有DES算法,HASH算法,可運(yùn)行程序。
1、比較密碼:STM32程序預(yù)存一個(gè)8字節(jié)密碼,加密芯片預(yù)存一個(gè)相同的密碼,STM32把這個(gè)密碼發(fā)給加密芯片,加密芯片與預(yù)存的密碼比較,相同返回一個(gè)正確值。好像這個(gè)功能只能做到?jīng)]有加密芯片確實(shí)不能跑,但好像很容易破解掉,數(shù)據(jù)傳輸明文,容易跟蹤。也很容易模擬出這個(gè)結(jié)果。
2、加密傳輸比較密碼:同樣在STM32和加密芯片都預(yù)存一個(gè)8字節(jié)密碼,STM32讀取一個(gè)加密芯片生成的隨機(jī)數(shù),然后與8位密碼做一個(gè)DES運(yùn)算,把這個(gè)結(jié)果發(fā)給加密芯片比較。加密芯片用同樣的隨機(jī)數(shù)和密碼做DES運(yùn)算,結(jié)果是和STM32算出來(lái)是一樣的,比較正確后返回正確。這個(gè)比第1個(gè)好一點(diǎn),密文傳輸。還是可以模擬出結(jié)果。
3、HASH運(yùn)算與第2是一樣的。
以上3種感覺(jué)加密強(qiáng)度一般。把STM32破解,讀出程序反匯編,可以找到相應(yīng)的密碼,比較跳轉(zhuǎn)的指令,改掉。真是有這樣的牛人的。
如果利用ID號(hào)捆綁,這樣不利于維護(hù)。保修長(zhǎng)的產(chǎn)品是麻煩事。
主要還是探討第4種方法,把部分程序的算法,函數(shù)放到加密芯片中去。
一、把數(shù)據(jù)分析的函數(shù)放進(jìn)加密芯片。網(wǎng)絡(luò)通訊數(shù)據(jù)格式按照一定的協(xié)議規(guī)約組包,收到后發(fā)給加密芯片解釋,STM32得到解析后的數(shù)據(jù)進(jìn)行操作。這樣做是不是感覺(jué)強(qiáng)多了,破解STM32是沒(méi)有用了,把PC發(fā)的網(wǎng)絡(luò)數(shù)據(jù)與加密芯片發(fā)出來(lái)的數(shù)據(jù)比較,推導(dǎo)組包規(guī)則,可能嗎?好像可能!但如果加密芯片多發(fā)一些隨機(jī)數(shù)參合進(jìn)來(lái),怎么樣?
這個(gè)難度大多了吧。
但隨著芯片解密技術(shù)的不斷升級(jí),目前針對(duì)所有擁有UID的單片機(jī)都可以提供單片機(jī)解密服務(wù),歡迎來(lái)電咨詢。
相關(guān)咨詢
工廠展示
聯(lián)系我們
成都子程新輝電子設(shè)備有限公司
聯(lián)系人:文先生
手機(jī):13183865499
QQ:1977780637
地址:成都市金牛區(qū)星輝西路2號(hào)附1號(hào)(臺(tái)誼民生大廈)407號(hào)
同類文章排行
最新咨詢文章
- 1 PCB板都有哪些優(yōu)點(diǎn)?
- 2 成都哪里可以做PCB抄板
- 3 開(kāi)發(fā)設(shè)計(jì)單片機(jī)時(shí)需要注意的幾個(gè)點(diǎn)
- 4 4種單片機(jī)高效開(kāi)發(fā)的技巧
- 5 DC-DC變換器:優(yōu)化設(shè)計(jì)與EMI控制的秘訣
- 6 單片機(jī)解密失敗的深度解析與風(fēng)險(xiǎn)
- 7 PCB設(shè)計(jì)中的開(kāi)窗技巧:功能與應(yīng)用
- 8 PCB抄板中的LAYOUT布線技巧詳解
- 9 子程電子2024春節(jié)后已于2月19日開(kāi)工
- 10 PCB抄板剖制技巧:技術(shù)與藝術(shù)的結(jié)合