我們每個(gè)人都有一個(gè)指紋,每個(gè)人都指紋都不一樣。目前的指紋識(shí)別方法是采用特征點(diǎn),把指紋特殊的點(diǎn)采集出來,然后匹配識(shí)別。假設(shè)采用12個(gè)特征點(diǎn)的話,那重復(fù)的幾率就是1/1020,如果取更多特征點(diǎn),那重復(fù)的幾率就更低。
7月11日,在ASPENCORE旗下《電子工程專輯》、《EDN》和《國(guó)際電子商情》共同舉辦的“IoT技術(shù)與應(yīng)用論壇”上,力旺電子(eMemory)的柳星洲先生做了詳細(xì)的介紹。
在他主題為“NeoPUF指紋芯片技術(shù)于AIoT之安全應(yīng)用”的演講中,他指出,NeoPUF技術(shù)就是一種賦予芯片一個(gè)指紋的技術(shù)。而且這個(gè)指紋不是燒寫進(jìn)去的,是與生俱來,出廠后就擁有,而且每一顆芯片都不一樣。
圖1:力旺電子(eMemory)的柳星洲在IoT技術(shù)與應(yīng)用論壇上演講。
什么是NeoPUF?
柳星洲解釋說,PUF的英文全稱是Physical Unclonable Functions,即物理不可復(fù)制功能。而NeoPUF,就是創(chuàng)新式物理不可復(fù)制功能。
PUF有用很多種不同的實(shí)現(xiàn)方法。
可以人為將不同的代碼燒寫進(jìn)芯片,但認(rèn)為燒寫的代碼一般是由算法產(chǎn)生的,如果算法被人破解了,那所有的芯片就都被破解了。
力旺電子的NeoPUF采用的是模擬丟銅板的技術(shù)來實(shí)現(xiàn)的。柳星洲介紹說,“假設(shè)給你兩顆一模一樣的電阻,在兩邊同時(shí)加一個(gè)一樣的電壓,那到底是左邊先燒掉,還是右邊先燒掉。不知道,我也不知道。我們模擬的就是這樣的情況,我們?cè)趦蓚€(gè)相鄰的晶體管的柵極和基極兩端慢慢加電壓,總有一顆會(huì)被先燒掉,先燒左邊就是0,先燒右邊就是1。”
用這種方法實(shí)現(xiàn)的PUF就算是同一片晶圓上產(chǎn)生的Die,所產(chǎn)生的代碼也都是不一樣的。
因此,加入了NeoPUF IP的每一顆芯片都有一個(gè)與眾不同的代碼,也就是擁有了一個(gè)指紋。
圖2:力旺電子的NeoPUF實(shí)現(xiàn)原理。
如何應(yīng)用芯片指紋?
現(xiàn)在芯片已經(jīng)獲得了一個(gè)指紋,那如何去應(yīng)用這些芯片的指紋呢?柳星洲先生也給出了一些應(yīng)用的案例。
他表示,“NeoPUF提供高達(dá)64Kbit,芯片與生俱來的完美隨機(jī)數(shù)源。既然每顆芯片都擁有了指紋,其中最明顯的應(yīng)用就是用這個(gè)代碼作為芯片的ID,這樣就不會(huì)出現(xiàn)重名的情況了。或者用這個(gè)代碼產(chǎn)生信任根,然后產(chǎn)生通信密鑰,以加密通信數(shù)據(jù)?!?/p>
“當(dāng)然,還可以防止芯片不被破解。因?yàn)橛行┳瞿嫦蚬こ痰?a target="_blank">廠商會(huì)破解你的芯片,生產(chǎn)后還打你的logo,出問題了,可能還得你去服務(wù)。”他同時(shí)指出。
圖3:NeoPUF在IoT中的應(yīng)用。
柳星洲舉了一個(gè)NeoPUF在IoT中的應(yīng)用。“目前使用PUF的情況就是把它當(dāng)作信任根,它產(chǎn)生一個(gè)最根本的碼,通過一個(gè)密鑰管理算法,產(chǎn)生不同的公鑰,私鑰等,再給AES等加密算法去加密?!?/p>
圖4:NeoPUF配合OTP一起使用。
另外,因?yàn)榱ν娮邮侵饕鯫TP等存儲(chǔ)的,所以他還列舉了一個(gè)NeoPUF搭配Memory一起用案例。比如說,“我們可以用PUF產(chǎn)生一組亂碼,而且與生俱來,是一個(gè)完美亂數(shù),所以我們就可以用PUF加密我的OTP,而且可以做到天生加密,就是可以將OTP內(nèi)的擾碼基于PUF亂碼重新排列,也就是說,在不同的芯片中,同樣的OTP資料存儲(chǔ)后的信息都是不一樣的。”
圖5:NeoPUF在外掛Flash上的應(yīng)用。
“甚至是外掛的Flash,只要主控端有放NeoPUF,出去的數(shù)據(jù)已經(jīng)用NeoPUF重新排序,存儲(chǔ)在外掛的Flash內(nèi),那么Flash內(nèi)存儲(chǔ)的數(shù)據(jù)就是亂的,而且每一顆都不一樣,別人如果把Flash內(nèi)的內(nèi)容復(fù)制出來,再用不同的主控是讀取不出來數(shù)據(jù)的。因?yàn)檫@需要原來的主控來做還原解碼。這樣就可以防止你的代碼被偷走。從而實(shí)現(xiàn)保護(hù)代碼的功能?!绷侵夼e例說。
他同時(shí)還談到了NeoPUF在人工智能方面的應(yīng)用。當(dāng)然主要還是芯片的保護(hù)用法?!拔覀冎廊斯ぶ悄艿牧鞒檀蟾攀沁@樣,先要收集很多數(shù)據(jù),然后做訓(xùn)練,再提取出模型,最后開始做推理,或者預(yù)測(cè)?!?/p>
而推理有兩種做法,一個(gè)是云端,所有數(shù)據(jù)傳輸至云端,然后云端給出推理結(jié)果。另外一個(gè)是邊緣計(jì)算,也就是在設(shè)備端做預(yù)測(cè),現(xiàn)在大部分廠商都認(rèn)為最后會(huì)往邊緣端發(fā)展。
但柳星洲認(rèn)為,由于云端的運(yùn)算能力太強(qiáng)大了,云端仍將會(huì)長(zhǎng)期存在下去;而邊緣端,也有一些發(fā)展的趨勢(shì),主要是有隱私的需求,或者是傳輸可靠性和延遲要求。
他表示,“我今天主要關(guān)注邊緣端。邊緣端做預(yù)測(cè),目前有兩種情況,一種是用別人的運(yùn)算單元加上NVM存儲(chǔ),做成一個(gè)模組。只需要把云端訓(xùn)練好的模型簡(jiǎn)化之后放上去,就可以在邊緣端做推理預(yù)測(cè)了。如果你花了那么多時(shí)間做訓(xùn)練,結(jié)果你的東西被偷了。那前面的心血就白費(fèi)了。因此在模組端,我們可以幫助保護(hù)最關(guān)鍵的資料?!?/p>
圖6:NeoPUF在人工智能模組中的應(yīng)用。
第二個(gè)邊緣端的應(yīng)用是將模型轉(zhuǎn)成一個(gè)ASIC,這樣功耗是最好的。當(dāng)然這個(gè)模型需要精簡(jiǎn)很多。但是這很容易被人逆向工程。
針對(duì)第一種情況,如果主控加入了NeoPUF,那么寫入Flash中的數(shù)據(jù)就是亂的。因此,即使一個(gè)模組中的數(shù)據(jù)被破解或者被復(fù)制了,放到其他的模組中其實(shí)是沒有用的。
針對(duì)第二種情況。如果ASIC中帶有一個(gè)NeoPUF,這樣里面的數(shù)據(jù)都可以被亂掉,“除非我給你一個(gè)啟動(dòng)碼授權(quán)之后才可以使用。”柳星洲表示。
圖7:NeoPUF在ASIC中的應(yīng)用。
-
芯片
+關(guān)注
關(guān)注
453文章
50406瀏覽量
421817 -
人工智能
+關(guān)注
關(guān)注
1791文章
46858瀏覽量
237556 -
IOT
+關(guān)注
關(guān)注
186文章
4178瀏覽量
196226
原文標(biāo)題:在AIoT時(shí)代,如何用指紋芯片技術(shù)來保護(hù)我們的芯片和數(shù)據(jù)?
文章出處:【微信號(hào):gh_bee81f890fc1,微信公眾號(hào):面包板社區(qū)】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論