汪鵬君,陳 佳,張躍軍,莊友誼,李樂(lè)薇,倪 力
(1.溫州大學(xué) 電氣與電子工程學(xué)院,浙江 溫州 325035;2.寧波大學(xué) 信息科學(xué)與工程學(xué)院,浙江 寧波 315211)
近年來(lái),硬件安全已經(jīng)成為集成電路設(shè)計(jì)的一個(gè)重要指標(biāo)。面對(duì)諸如版圖逆向工程、模型攻擊及測(cè)信道攻擊[1-4]等惡意攻擊方式的威脅,芯片設(shè)計(jì)者們?cè)陔娐吩O(shè)計(jì)時(shí)必須考慮硬件安全。物理不可克隆函數(shù)(Physical Unclonable Function,PUF)作為一種安全原語(yǔ),廣泛應(yīng)用于設(shè)備防偽、用戶認(rèn)證以及集成電路知識(shí)產(chǎn)權(quán)(Intellectual Property,IP)核保護(hù)等場(chǎng)合[5]。物理不可克隆函數(shù)將芯片制造過(guò)程中器件參數(shù)的固有隨機(jī)偏差轉(zhuǎn)化為電路級(jí)參數(shù)偏差,產(chǎn)生隨機(jī)數(shù)字特征。例如,仲裁器物理不可克隆函數(shù)(Arbiter PUF,APUF)[6]首先利用制造過(guò)程中器件閾值電壓變化來(lái)獲取電路延遲偏差,然后對(duì)延遲偏差進(jìn)行仲裁,最終產(chǎn)生具有高安全性的數(shù)字密鑰。
物理不可克隆函數(shù)通常被設(shè)計(jì)為特定的硬件結(jié)構(gòu)添加于目標(biāo)電路或者利用現(xiàn)場(chǎng)可編程門陣列(Field Programmable Gate Array,F(xiàn)PGA)等實(shí)現(xiàn)[7-10]。例如,APUF[7]和環(huán)形振蕩器物理不可克隆函數(shù)(Ring Oscillator PUF,RO PUF)[8]。雖然研究者們對(duì)此類物理不可克隆函數(shù)不斷進(jìn)行改進(jìn)[11-14],其性能更加優(yōu)越,但仍然不可避免地占用較大的硅片面積。而對(duì)于開(kāi)銷敏感的物聯(lián)網(wǎng)設(shè)備,此類物理不可克隆函數(shù)無(wú)法有效地應(yīng)用,低成本物理不可克隆函數(shù)需求日益增長(zhǎng)。靜態(tài)隨機(jī)存取存儲(chǔ)器(Static Random Access Memory,SRAM) 物理不可克隆函數(shù)[15]利用廣泛存在于電子設(shè)備的存儲(chǔ)器來(lái)實(shí)現(xiàn)物理不可克隆函數(shù)特征提取,無(wú)須消耗額外的硬件資源,成為近年來(lái)物理不可克隆函數(shù)的研究重點(diǎn)。該物理不可克隆函數(shù)通過(guò)提取SRAM單元內(nèi)隨機(jī)上電狀態(tài)產(chǎn)生響應(yīng),但重復(fù)獲取響應(yīng)依賴上電循環(huán)。在不允許頻繁斷電的場(chǎng)合,SRAM PUF的應(yīng)用需要存儲(chǔ)響應(yīng),導(dǎo)致其安全性降低。DScanPUF[16]利用可測(cè)性設(shè)計(jì)(Design For Testability,DFT)結(jié)構(gòu)中掃描鏈的延遲偏差特性產(chǎn)生物理不可克隆函數(shù)響應(yīng),并將該響應(yīng)轉(zhuǎn)化為具有魯棒性的二進(jìn)制簽名。該物理不可克隆函數(shù)面積開(kāi)銷較之RO PUF約減少18%,易于集成到電路設(shè)計(jì)且不影響設(shè)計(jì)的可測(cè)性。但該物理不可克隆函數(shù)僅利用掃描鏈進(jìn)行偏差數(shù)據(jù)提取,對(duì)時(shí)鐘頻率要求較高。Register PUF[17]利用建立時(shí)間違背時(shí)觸發(fā)器采樣數(shù)據(jù)的不確定性產(chǎn)生物理不可克隆函數(shù)數(shù)據(jù),解決存儲(chǔ)型物理不可克隆函數(shù)獲取響應(yīng)的問(wèn)題,但需要在原有掃描鏈結(jié)構(gòu)加入數(shù)據(jù)選擇器,產(chǎn)生額外的成本。處理器物理不可克隆函數(shù)[18]則根據(jù)不同芯片在超頻狀態(tài)多次執(zhí)行指令的錯(cuò)誤差異,設(shè)計(jì)編碼規(guī)則產(chǎn)生物理不可克隆函數(shù)響應(yīng)。該物理不可克隆函數(shù)無(wú)需專用的硬件開(kāi)銷,但要求精確的頻率變化和指令的多次重復(fù)運(yùn)行,并且輸出響應(yīng)位數(shù)較少。在此基礎(chǔ)上,同步物理不可克隆函數(shù)[19]利用固定頻率的反相器鏈延遲偏差引起的寄存器采樣數(shù)據(jù)差異來(lái)獲取物理不可克隆函數(shù)數(shù)據(jù),但需要額外配置反相器鏈及寄存器。
針對(duì)上述問(wèn)題,筆者提出一種基于路徑敏化的軟物理不可克隆函數(shù)(Software PUF,SPUF)設(shè)計(jì)方案。不同于依賴額外電路作為隨機(jī)源的硬物理不可克隆函數(shù)設(shè)計(jì),軟物理不可克隆函數(shù)[20]利用設(shè)備非正常工作的錯(cuò)誤信息,提取硬件隨機(jī)工藝偏差,建立錯(cuò)誤信息與硬件特征的響應(yīng)關(guān)系。所提軟物理不可克隆函數(shù)方案先將電路固有時(shí)序路徑的延遲偏差與寄存器的亞穩(wěn)態(tài)相結(jié)合,獲取軟物理不可克隆函數(shù)的偏差數(shù)據(jù),增強(qiáng)設(shè)備的安全性;然后利用掃描鏈輸出偏差數(shù)據(jù),進(jìn)一步避免專用面積開(kāi)銷升高;最后通過(guò)統(tǒng)計(jì)不同超頻時(shí)鐘信號(hào)觸發(fā)下錯(cuò)誤路徑條數(shù),得到二進(jìn)制物理不可克隆函數(shù)響應(yīng)并進(jìn)行相關(guān)性能評(píng)估。
靜態(tài)時(shí)序分析是同步電路綜合和物理實(shí)現(xiàn)的主要考慮因素之一。在時(shí)序分析中,數(shù)據(jù)路徑延遲Tpath需滿足下面的不等式關(guān)系:
Tpath≤tclk+tskew-tsetup,
(1)
其中,Tpath由觸發(fā)器傳輸延遲tcq和觸發(fā)器間組合邏輯延遲tcomb組成;tclk為時(shí)鐘周期;tskew為時(shí)鐘信號(hào)傳播到觸發(fā)器時(shí)鐘輸入端的延遲差,即時(shí)鐘偏斜;tsetup為觸發(fā)器建立時(shí)間。當(dāng)邊沿信號(hào)輸入時(shí),若Tpath滿足此條件,則該路徑的后一級(jí)觸發(fā)器采樣到跳變后信號(hào),數(shù)據(jù)傳輸成功。若Tpath不滿足式(1),而滿足式(2),則后一級(jí)觸發(fā)器采樣到跳變前信號(hào),數(shù)據(jù)傳輸失敗。
Tpath≥tclk+tskew+thold,
(2)
其中,thold為觸發(fā)器保持時(shí)間。
若Tpath不滿足式(1)和式(2),則后一級(jí)觸發(fā)器進(jìn)入亞穩(wěn)態(tài),受觸發(fā)器特性影響隨機(jī)輸出0或1。如圖1所示,根據(jù)路徑①(虛線路徑)的Tpath大小,采樣觸發(fā)器Q端輸出數(shù)據(jù)存在3種可能情況:低電平、高電平和亞穩(wěn)態(tài)。雖然Q端輸出可能出現(xiàn)亞穩(wěn)態(tài),但最終恢復(fù)到穩(wěn)定狀態(tài)。
圖1 路徑延遲與建立、保持時(shí)間關(guān)系
采用TSMC 65 nm工藝,分別對(duì)單個(gè)與非門和路徑①組合邏輯電路進(jìn)行1 000次蒙特卡羅仿真,統(tǒng)計(jì)的延遲分布如圖2所示。由圖2可知,與非門的延遲時(shí)間服從均值為27.29 ps、標(biāo)準(zhǔn)差為2.77 ps的正態(tài)分布,不同與非門之間存在明顯的延遲偏差。同時(shí),多個(gè)門電路的累計(jì)延遲也服從正態(tài)分布,導(dǎo)致相同芯片同一時(shí)序路徑間不可避免地存在延遲差異。若在一定程度上超頻,由于存在隨機(jī)延遲偏差,則路徑中傳播的邊沿信號(hào)可能位于不同的延遲區(qū)間,一部分路徑中信號(hào)傳輸失敗,而另一部分路徑傳輸成功,從而產(chǎn)生芯片間的隨機(jī)特征差異。
圖2 路徑延遲的蒙特卡羅仿真
若不添加額外電路開(kāi)銷,則芯片的隨機(jī)偏差體現(xiàn)在時(shí)序路徑的延遲方面。為選擇產(chǎn)生偏差數(shù)據(jù)的時(shí)序路徑,使給定的激勵(lì)產(chǎn)生對(duì)應(yīng)的響應(yīng),需要施加合適的輸入進(jìn)行路徑敏化。路徑敏化[21]是指通過(guò)改變電路輸入使信號(hào)跳變?cè)诼窂街袀鞑ィ绰窂奖惠斎胄盘?hào)敏化。如圖1所示,令組合邏輯輸入向量為Vi(A,B,C),當(dāng)電路輸入使V1(0,1,0)變化至V2(0,0,0)時(shí),下降沿脈沖信號(hào)經(jīng)過(guò)G2、G3和G4傳播至D端,輸出上升沿脈沖信號(hào),路徑①被敏化;當(dāng)電路輸入使V3(0,1,0)變化至V4(1,1,0)時(shí),上升沿脈沖信號(hào)經(jīng)過(guò)G1和G4傳播至D端,路徑②被敏化。因此,不同的電路輸入組合敏化不同的路徑。由路徑延遲關(guān)系可知,在一定周期的時(shí)鐘輸入和不同數(shù)據(jù)輸入信號(hào)組合下,數(shù)據(jù)傳輸失敗的路徑條數(shù)不同。本設(shè)計(jì)利用寄存器輸出亞穩(wěn)態(tài)與路徑延遲偏差兩種隨機(jī)源,將時(shí)鐘信號(hào)和數(shù)據(jù)信號(hào)作為物理不可克隆函數(shù)激勵(lì),錯(cuò)誤路徑條數(shù)的二進(jìn)制碼作為響應(yīng),建立物理不可克隆函數(shù)的激勵(lì)響應(yīng)關(guān)系。
仲裁器物理不可克隆函數(shù)利用路徑延遲偏差來(lái)獲取物理不可克隆函數(shù)響應(yīng),其結(jié)構(gòu)如圖3所示。該物理不可克隆函數(shù)主要包括多個(gè)開(kāi)關(guān)模塊級(jí)聯(lián)組成的延遲鏈以及一個(gè)仲裁器,其中每個(gè)開(kāi)關(guān)模塊由一位激勵(lì)控制,末端級(jí)聯(lián)一個(gè)D觸發(fā)器(D Flip-Flop,DFF)作為仲裁器。通過(guò)改變激勵(lì)選取不同的兩條路徑,使同時(shí)發(fā)起的邊沿信號(hào)到達(dá)仲裁器輸入端的時(shí)間不同,從而輸出一位物理不可克隆函數(shù)響應(yīng)。與APUF不同,路徑敏化通過(guò)對(duì)邏輯門施加非控制值,使邊沿信號(hào)在邏輯門中傳播,選取偏差數(shù)據(jù)產(chǎn)生路徑。如圖3所示,令Mn和Mn+1分別為1和0,使與門和或門的其中一個(gè)輸入變?yōu)榉强刂浦?,上邊沿信?hào)傳播至觸發(fā)器D端。通過(guò)路徑敏化復(fù)用電路固有結(jié)構(gòu),避免物理不可克隆函數(shù)偏差數(shù)據(jù)產(chǎn)生的面積開(kāi)銷上升。此外,APUF的延遲與輸出響應(yīng)存在線性關(guān)系,容易受機(jī)器學(xué)習(xí)攻擊。而路徑敏化方法選取路徑的復(fù)雜程度更高,可增強(qiáng)物理不可克隆函數(shù)響應(yīng)的安全性能。
圖3 路徑選取方式比較
路徑敏化可以將信號(hào)跳變?cè)跁r(shí)序路徑中傳播,而路徑延遲偏差可以產(chǎn)生物理不可克隆函數(shù)特征數(shù)據(jù)。為直觀地呈現(xiàn)這些特征數(shù)據(jù),采用掃描鏈結(jié)構(gòu)進(jìn)行偏差數(shù)據(jù)提取。該結(jié)構(gòu)作為電路設(shè)計(jì)引入的標(biāo)準(zhǔn)DFT組件,用于提高電路內(nèi)部節(jié)點(diǎn)的可控性和可觀察性。
偏差數(shù)據(jù)提取結(jié)構(gòu)如圖4所示,可分為組合邏輯電路和掃描鏈兩部分。其中,組合邏輯為電路固有資源,PI和PO為電路輸入和輸出端。掃描鏈由掃描觸發(fā)器(Scan Flip-Flop,SFF)構(gòu)成,SFF中包括一個(gè)DFF和一個(gè)二輸入選擇器。SI、SE分別為掃描數(shù)據(jù)端和測(cè)試控制端。SFF的輸出端直接連入下一個(gè)SFF的SI端,使該觸發(fā)器在實(shí)現(xiàn)原本的功能外,還可以構(gòu)成移位寄存器。電路正常工作時(shí)的數(shù)據(jù)流向如實(shí)線箭頭所示,通過(guò)特定輸入激勵(lì)敏化組合邏輯路徑。當(dāng)電路處于掃描模式時(shí),數(shù)據(jù)流向如虛線箭頭所示,通過(guò)掃描鏈將存儲(chǔ)值逐位移出。
圖4 偏差數(shù)據(jù)提取結(jié)構(gòu)
基于上述結(jié)構(gòu),偏差數(shù)據(jù)提取可分為兩個(gè)階段。如圖5所示,當(dāng)SE為低電平時(shí),DFF的D端與Q端分別連接組合邏輯電路,此時(shí)觸發(fā)器起到存儲(chǔ)電路內(nèi)部節(jié)點(diǎn)的作用,電路處于正常工作模式。在該階段內(nèi),PI端輸入信號(hào)先敏化所選路徑,使信號(hào)跳變?cè)诟髀窂街袀鞑ィ蝗缓笸ㄟ^(guò)時(shí)鐘邊沿觸發(fā),路徑的后一級(jí)DFF對(duì)數(shù)據(jù)進(jìn)行采樣;最終各條路徑傳播的信號(hào)都存儲(chǔ)到DFF中。當(dāng)時(shí)鐘信號(hào)的周期減小至電路出現(xiàn)時(shí)序違例時(shí),部分路徑數(shù)據(jù)傳輸失敗,導(dǎo)致DFF存儲(chǔ)錯(cuò)誤數(shù)據(jù)。當(dāng)SE切換為高電平時(shí),SI端與觸發(fā)器D端相連,使各DFF級(jí)聯(lián)構(gòu)成移位寄存器,將存儲(chǔ)的內(nèi)部信號(hào)串行輸出。通過(guò)上述兩個(gè)階段,電路輸出包含錯(cuò)誤信號(hào)的數(shù)據(jù),錯(cuò)誤路徑條數(shù)可以通過(guò)將該數(shù)據(jù)與正常頻率時(shí)鐘信號(hào)觸發(fā)的輸出數(shù)據(jù)進(jìn)行異或得到。
圖5 偏差數(shù)據(jù)提取過(guò)程
物理不可克隆函數(shù)響應(yīng)產(chǎn)生時(shí)序如圖6所示,采用多個(gè)測(cè)試激勵(lì)敏化多條路徑獲取響應(yīng)。
圖6 物理不可克隆函數(shù)響應(yīng)產(chǎn)生時(shí)序
響應(yīng)產(chǎn)生過(guò)程分為3個(gè)階段,按照先后順序分別為觸發(fā)器狀態(tài)初始化、偏差數(shù)據(jù)產(chǎn)生以及響應(yīng)輸出。以敏化單條路徑為例,響應(yīng)數(shù)據(jù)產(chǎn)生具體過(guò)程如下所述:首先在正常時(shí)鐘信號(hào)觸發(fā)下將SE置為高電平,SI端輸入信號(hào)經(jīng)過(guò)多個(gè)周期的移位置入到各個(gè)觸發(fā)器;然后將SE置為低電平并減小時(shí)鐘信號(hào)的周期長(zhǎng)度,同時(shí)在電路PI端輸入激勵(lì)信號(hào)敏化所選路徑,使前一級(jí)觸發(fā)器Q0端產(chǎn)生上邊沿信號(hào)并傳播至下一級(jí)觸發(fā)器D1端。在實(shí)際電路中,信號(hào)的傳播存在延遲。由于集成電路制造過(guò)程中的隨機(jī)工藝偏差導(dǎo)致路徑延遲在一定范圍內(nèi)變化,使路徑輸出結(jié)果產(chǎn)生差異。若忽略時(shí)鐘偏斜等因素,則路徑輸出結(jié)果如下:
(3)
分析圖6中“偏差產(chǎn)生”的原因,當(dāng)信號(hào)變化經(jīng)過(guò)Tpath傳播到D1端的時(shí)刻,位于建立時(shí)間和保持時(shí)間范圍外時(shí),Q1根據(jù)邊沿信號(hào)具體延遲情況輸出1或0,即路徑傳輸數(shù)據(jù)成功或失??;當(dāng)該時(shí)刻位于建立時(shí)間和保持時(shí)間范圍內(nèi)時(shí),Q1受觸發(fā)器內(nèi)部器件參數(shù)偏差影響隨機(jī)輸出0或1。最后,SE切換為高電平,若干個(gè)周期后Q1端信號(hào)通過(guò)移位寄存器輸出。
在偏差產(chǎn)生階段,時(shí)鐘信號(hào)的周期需要小于關(guān)鍵路徑延遲時(shí)間。在合適的時(shí)鐘信號(hào)觸發(fā)下,多組測(cè)試激勵(lì)被輸入到電路PI端以敏化多條路徑。該階段結(jié)束后各觸發(fā)器先儲(chǔ)存路徑輸出結(jié)果,然后在響應(yīng)輸出階段得到一串二進(jìn)制數(shù)據(jù),最后將該數(shù)據(jù)與正常工作時(shí)鐘信號(hào)觸發(fā)下的輸出進(jìn)行異或得到響應(yīng)數(shù)據(jù)。處理器物理不可克隆函數(shù)通過(guò)設(shè)置指令錯(cuò)誤閾值,并進(jìn)行特定編碼產(chǎn)生響應(yīng)。由于響應(yīng)中0和1的比例具有一定程度的偏向性以及測(cè)試芯片數(shù)過(guò)少,該物理不可克隆函數(shù)的惟一性較低。同步物理不可克隆函數(shù)根據(jù)固定時(shí)鐘觸發(fā)后延遲鏈中信號(hào)傳播成功或失敗,分別輸出1或0。同樣,由于工藝偏差影響的延遲波動(dòng)范圍有限以及不恰當(dāng)?shù)捻憫?yīng)編碼方式,導(dǎo)致同步物理不可克隆函數(shù)的響應(yīng)具有較強(qiáng)偏向性,因此該物理不可克隆函數(shù)惟一性也較低。本設(shè)計(jì)由于路徑延遲受工藝偏差影響有限且未參考文獻(xiàn)[16]設(shè)計(jì)專用測(cè)量時(shí)鐘產(chǎn)生電路,響應(yīng)輸出階段的錯(cuò)誤比特?cái)?shù)目無(wú)法在0至總比特?cái)?shù)范圍內(nèi)變化。二進(jìn)制輸出數(shù)據(jù)的異或結(jié)果同樣具有較強(qiáng)的0偏向性,不適合直接作為最終響應(yīng)。鑒于此,筆者在偏差產(chǎn)生階段先進(jìn)行了多次時(shí)鐘信號(hào)激勵(lì),然后采集各個(gè)時(shí)鐘信號(hào)觸發(fā)的路徑輸出并進(jìn)行錯(cuò)誤路徑統(tǒng)計(jì)。最終的物理不可克隆函數(shù)響應(yīng)由錯(cuò)誤路徑條數(shù)的二進(jìn)制碼組成,具體方式如下:首先敏化2n條路徑,在m個(gè)不同時(shí)鐘信號(hào)觸發(fā)下依次統(tǒng)計(jì)錯(cuò)誤路徑條數(shù)Ei,i=1,2,…,m;然后將錯(cuò)誤路徑數(shù)轉(zhuǎn)化為n位二進(jìn)制數(shù)Bi;最后將各個(gè)二進(jìn)制數(shù)拼接為物理不可克隆函數(shù)響應(yīng)B1B2…Bm。通過(guò)這種響應(yīng)提取方式,各個(gè)時(shí)鐘信號(hào)觸發(fā)下錯(cuò)誤路徑條數(shù)的二進(jìn)制碼隨機(jī)組合,物理不可克隆函數(shù)激勵(lì)響應(yīng)空間增大。采用錯(cuò)誤路徑條數(shù)的二進(jìn)制碼作為物理不可克隆函數(shù)響應(yīng),在錯(cuò)誤路徑條數(shù)變化受限的條件下提高了響應(yīng)翻轉(zhuǎn)比特?cái)?shù),可以在一定程度上減弱數(shù)據(jù)的偏向性。此外,筆者提出的響應(yīng)提取方式通過(guò)組合多個(gè)時(shí)鐘采樣頻率的錯(cuò)誤路徑條數(shù)擴(kuò)展響應(yīng)位數(shù),進(jìn)一步提高了響應(yīng)的隨機(jī)性。
采用TSMC 65 nm CMOS工藝來(lái)實(shí)現(xiàn)軟物理不可克隆函數(shù),并對(duì)其進(jìn)行性能評(píng)估。選擇ISCAS-89系列的s400電路作為軟物理不可克隆函數(shù)硬件載體,利用Design Compiler工具添加掃描鏈,其中SFF數(shù)量共計(jì)21個(gè)。路徑敏化的物理不可克隆函數(shù)激勵(lì)由自動(dòng)測(cè)試向量生成(Automatic Test Pattern Generation,ATPG)工具TetraMAX產(chǎn)生,路徑條數(shù)選擇為128,電路網(wǎng)表及路徑延遲分布如圖7所示。最后利用Hspice工具分別施加8個(gè)不同時(shí)鐘信號(hào)進(jìn)行仿真,并統(tǒng)計(jì)錯(cuò)誤路徑條數(shù)。
圖7 電路網(wǎng)表與路徑延遲分布
芯片特征的惟一性[22]由漢明距離(Hamming Distance,HD)來(lái)衡量,即通過(guò)統(tǒng)計(jì)任意兩個(gè)物理不可克隆函數(shù)響應(yīng)之間不同比特個(gè)數(shù)占總比特?cái)?shù)百分比的方式衡量,理想情況下占比為50%。k個(gè)物理不可克隆函數(shù)的唯一性計(jì)算方式如下:
(4)
其中,Ri和Rj表示第i和第j個(gè)物理不可克隆函數(shù)在相同激勵(lì)下的輸出響應(yīng),n代表響應(yīng)位數(shù),DH(Ri,Rj)為輸出響應(yīng)之間的漢明距離。
如圖8所示,統(tǒng)計(jì)50次蒙特卡羅仿真輸出響應(yīng)的漢明距離及其出現(xiàn)頻率,所得結(jié)果服從數(shù)學(xué)期望μ=0.475 8,標(biāo)準(zhǔn)差σ=0.080 4的正態(tài)分布。通過(guò)式(4)計(jì)算,可得惟一性為47.58%,表明該物理不可克隆函數(shù)可以提供惟一性較高的簽名來(lái)識(shí)別每個(gè)芯片。
圖8 物理不可克隆函數(shù)響應(yīng)漢明距離分布
隨機(jī)性按物理不可克隆函數(shù)輸出邏輯1的概率計(jì)算。在理想情況下,邏輯0和1概率均為50%,經(jīng)過(guò)統(tǒng)計(jì)得到輸出響應(yīng)中1的概率為49.68%。信息熵[23]是一個(gè)用來(lái)衡量比特流隨機(jī)性的指標(biāo),可按下式計(jì)算:
(5)
其中,p(r)為響應(yīng)中0或1的概率。依據(jù)式(5)計(jì)算出物理不可克隆函數(shù)響應(yīng)的熵值分布如圖9所示。由圖可知,各組響應(yīng)信息熵最低為0.977,表明所提基于路徑敏化的軟物理不可克隆函數(shù)輸出響應(yīng)具有較高的隨機(jī)性。
圖9 物理不可克隆函數(shù)的響應(yīng)熵值分布
表1 不同算法對(duì)不同類型 PUF的預(yù)測(cè)準(zhǔn)確率 %
機(jī)器學(xué)習(xí)攻擊是針對(duì)強(qiáng)物理不可克隆函數(shù)的有效攻擊方式之一。攻擊者首先收集一定數(shù)量的物理不可克隆函數(shù)激勵(lì)響應(yīng)對(duì)(Challenge Response Pair,CRP),然后得到激勵(lì)響應(yīng)集合訓(xùn)練預(yù)測(cè)模型,最后通過(guò)預(yù)測(cè)模型獲取完整的物理不可克隆函數(shù)激勵(lì)響應(yīng)對(duì)。筆者采用文獻(xiàn)[24-25]中的邏輯回歸(Logistic Regression,LR)和多層感知機(jī)(MultiLayer Perceptron,MLP)算法對(duì)物理不可克隆函數(shù)抗建模能力進(jìn)行測(cè)試與評(píng)估,訓(xùn)練集選擇為CRP集合的80%。因所采用的s400測(cè)試電路規(guī)模受限,選擇s9234電路進(jìn)行仿真,收集1 000組CRP,并將測(cè)試結(jié)果與APUF、XOR APUF進(jìn)行對(duì)比。如表1所示,兩種算法對(duì)文中軟物理不可克隆函數(shù)的預(yù)測(cè)準(zhǔn)確率均低于APUF和XOR APUF,表明結(jié)合延遲型和存儲(chǔ)型兩種隨機(jī)源產(chǎn)生響應(yīng),可在一定程度上增加機(jī)器學(xué)習(xí)建模的難度。通過(guò)文獻(xiàn)[16]可知,物理不可克隆函數(shù)可以通過(guò)增加信息熵和減少訓(xùn)練集大小的方式抵抗機(jī)器學(xué)習(xí)攻擊,因此最直接且簡(jiǎn)單的方法為增加物理不可克隆函數(shù)的CRP數(shù)目。但是,APUF或XOR APUF采用該方法將增大面積開(kāi)銷和制造成本。筆者所提軟物理不可克隆函數(shù)可通過(guò)敏化更多的路徑獲得大量的激勵(lì)響應(yīng)對(duì),由于路徑是電路的固有資源,不會(huì)增加制造成本。因此,該物理不可克隆函數(shù)具有抵抗機(jī)器學(xué)習(xí)攻擊的能力。
筆者所提軟物理不可克隆函數(shù)與不同類型的物理不可克隆函數(shù)性能比較如表2所示。
由表2可知,基于路徑敏化的軟物理不可克隆函數(shù)與文獻(xiàn)[12]相比,惟一性較低,因?yàn)锳PUF通過(guò)比較對(duì)稱路徑的延遲產(chǎn)生一位響應(yīng),不具備明顯的數(shù)據(jù)偏向性。與文獻(xiàn)[16]相比,所提的軟物理不可克隆函數(shù)的惟一性也較低,因?yàn)镈ScanPUF通過(guò)設(shè)計(jì)專用的測(cè)量時(shí)鐘產(chǎn)生電路,提高了響應(yīng)的惟一性。與文獻(xiàn)[17]相比,二者惟一性和隨機(jī)性水平相同,但APUF、DScanPUF和Register PUF需要額外的偏差產(chǎn)生電路,增加了硬件開(kāi)銷。與文獻(xiàn)[18-19]相比,由于本研究在前者的基礎(chǔ)上對(duì)響應(yīng)產(chǎn)生方案進(jìn)行了改進(jìn),所提軟物理不可克隆函數(shù)具有較高的惟一性。
表2 不同類型PUF性能對(duì)比
利用路徑延遲偏差引起的觸發(fā)器采樣異常,筆者提出一種多熵源軟物理不可克隆函數(shù)設(shè)計(jì)方案。該方案在超頻下通過(guò)輸入激勵(lì)敏化電路固有路徑,產(chǎn)生反映芯片特征的隨機(jī)序列。由于所提物理不可克隆函數(shù)設(shè)計(jì)采用普遍存在于大規(guī)模集成電路設(shè)計(jì)中的掃描鏈結(jié)構(gòu),因此無(wú)須額外電路設(shè)計(jì)便可獲取物理不可克隆函數(shù)數(shù)據(jù)。同時(shí),該物理不可克隆函數(shù)結(jié)合延遲型和存儲(chǔ)型兩種隨機(jī)熵源,大大增加了物理不可克隆函數(shù)電路的安全性,可為極端資源受限系統(tǒng)的高安全性問(wèn)題提供解決途徑,為物聯(lián)網(wǎng)的發(fā)展提供安全保障。