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