陳 潔,鐘 杰2,鄭 力**2,胡 勇
(1.四川大學 網絡空間安全學院,成都 610065;2.中物院成都科學技術發展中心,成都 610200)
在工業互聯網、物聯網等網絡環境中,入網設備的身份認證是其能安全地與其他入網設備或中心服務器交換信息的基礎。身份認證過程中,憑據信息的存儲和傳輸是必須解決的問題。物理不可克隆函數(Physical Unclonable Function,PUF)能避免因將身份憑證存儲在非易失性存儲器后,存儲器受到侵入性攻擊而導致的身份憑據信息和其他消息泄露[1]。PUF能提取集成電路制造過程引入的隨機差異,使不同芯片對同樣的輸入(激勵)有不同的輸出(響應)。激勵-響應對是硬件確定的,是硬件物理指紋,不用事先存儲,因其具有一定的可靠性、唯一性、隨機性而作為設備的身份憑據。基于PUF實現設備的身份認證、密鑰生成,具有硬件資源占用率低、身份憑證信息不易泄露、被捕獲后身份憑據難以復制的特點,大大提高了設備身份認證的安全性,尤其適用于無人值守的環境。
自2001年Pappu首次提出PUF以來,國內外研究人員對PUF實現與提取開展了大量的研究,提出了基于光學、環形振蕩器、仲裁器、靜態隨機存取存儲器(Static Random Access Memory,SRAM)等多種PUF結構[2]。盡管PUF研究已獲得了顯著的成果,但是并未有系統化的產品出現。PUF技術的產品化實現更重要的是基于工程應用的PUF性能評估體系建設。在PUF性能評估領域,目前已開展的工作更多的是對PUF的部分性能進行獨立特征分析,典型的分析包括芯片被誤認率和認證失敗率[1]、可靠性和唯一性[3]、均勻性和比特混疊[4]、錯誤接受率(False Acceptance Rate,FAR)和錯誤拒絕率(False Rejection Rate,FRR)[5]、PUF抗機器學習建模攻擊[6]、熵[7]、空間自相關分析(Spatial Autocorrelation Analysis,SPACA)[8],對于PUF的性能評估大部分是在PUF結構實現研究工作中進行的一個輔助分析,并未系統化開展研究。
PUF主要應用于設備認證和密鑰生成,從應用角度看,如何實現PUF性能標準化的評估是PUF技術與傳統可信認證體系融合的關鍵。可靠性和唯一性是PUF應用于認證和加密的基礎特性,隨機性和開銷是PUF應用的通用問題,從目前國內的研究來看,涉及PUF性能的研究工作集中在這些方向,但是更多的工程應用需求沒有在研究中進行響應。不同研究人員關注的指標側重點不同,所以選擇的指標也不同。這導致工程實現時缺乏統一的標準比較多個PUF結構,無法判斷哪一個PUF結構更適合。其次,隨著PUF與其他多學科結合(比如與機器學習算法結合的抗機器學習建模攻擊指標等),未來可能有更多的指標被提出用于評估PUF性能。基于上述原因,PUF需要一個完備的、合理的評估體系,該體系既能把所有PUF結構放在相同標準上比較,也有合理的機制接納新指標,成為PUF設計和PUF工程應用的橋梁。
本文從工程應用的角度出發,分析PUF各指標的意義及場景的適用性,建立PUF性能分層指標體系,將指標分為必須檢驗的必要指標、應該檢驗的重要指標和按照應用場景選用的應用指標,進一步提出PUF性能綜合評估方案,供PUF設計人員或PUF應用選型參考。由于環形振蕩器PUF(Ring Oscillator PUF,RO PUF)能選擇若干反向器首尾相連構成正反饋環路,輸出與隨機路徑延遲直接相關的毛刺脈沖,無需對稱性設計,可產生大量的物理指紋,易于實現,資源消耗低,本研究采用環形振蕩器產生所需的硬件物理指紋進行實驗。本文性能評估方案也可推廣至其他生成激勵響應對的PUF結構上。
PUF的實現關鍵在于提取芯片生產過程中固有的深亞微米工藝變化導致的隨機特性,如互連線的線寬和蝕刻深度、氧化層厚度、金屬厚度等。由于涉及到材料、工藝、加工制造等多學科專業知識,這些因素如何導致PUF性能的具體差異,目前缺乏全面有效的理論分析,PUF指標的分析更多在于PUF在工程實踐中體現的各種特性。
根據PUF性能指標的含義和用途,將指標分為三類:必要指標——唯一性和可靠性,必須檢驗;重要指標——隨機性、比特混疊、開銷,應該檢驗;應用指標——FAR、FRR、抗機器學習攻擊、熵、空間自相關分析,應該按需求檢驗。如果有新指標提出,可加入到應用指標。該指標體系的評估指標分層如圖1所示。

圖1 PUF評估指標分層示意圖
此外,研究人員還曾經提出過正確性、耐熱性、均勻性等指標。經過分析,耐熱性指標屬于可靠性,正確性是可靠性的另一種表述,初期部分文獻中提到的隨機性、可預測性實際指均勻性,而隨機性檢驗中頻率檢測本質也是檢測響應中1的個數。因此,只考慮隨機性,不考慮均勻性。指標實際意義被包含或者相同時,將使用意義更廣或者認可度更高的指標納入指標體系。
將指標分為三層的主要劃分準則是指標的重要性和指標的應用廣泛性。必要指標是指標體系的基礎;重要指標是指標體系的主體,是指標體系的重要組成部分;應用指標是指標體系中與應用結合最緊密、最具有自身特點的部分。
類比生物指紋,PUF作為身份憑據必須具有的唯一性與可靠性,這也是PUF性能指標體系中的基礎性能。
唯一性是PUF能作為身份憑據在網絡安全領域應用的重要原因。唯一性在50%附近最佳。唯一性好,說明不同設備區分度高,在認證時服務器才能區分不同設備,而唯一性差則可能導致誤報或身份混淆,因此唯一性在指標體系中必不可少。
可靠性被看作對設備長期運行穩定性的預測。在運行過程中,氣候、溫度變化,設備老化,供電電壓波動等,都可能導致可靠性降低。可靠性接近100%為最優。高可靠性是設備長久運行的保障,而可靠性低將導致認證結果不可靠,進而導致一系列不良后果。
綜合上述兩點,可靠性和唯一性是PUF評估指標體系中的基礎指標,是最重要的必要指標。
重要指標是對所有應用都適用的指標,具有廣泛性,是評估體系的主體。隨機性衡量PUF生成物理指紋的規律性,是密碼學的核心。隨機性低,說明密鑰或認證憑據具有規律性,容易被猜測,降低安全性。檢測隨機性常用美國國家標準與技術研究院(National Institute of Standards and Technology,NIST)隨機數檢測方法。
開銷包括邏輯資源開銷和時間開銷,實際開銷和激勵響應位數有關,如果太大,可能會影響設備的其他功能。開銷承受能力與應用相關。在低功耗傳感器或射頻識別(Radio Frequency Identification,RFID)的應用上,由于資源受限,開銷必須保持很低;在其他普通設備或安全性更重要的設備上,開銷的重要性降低。
比特混疊衡量響應每一位出現0和1概率是否相同,如果比特混疊過高或過低,會導致某些位固定,即響應實際可用位數變小,意味部分開銷被浪費,因此比特混疊維持在50%附近很重要。
綜上所述,隨機性、比特混疊和開銷是重要指標,在任何應用場景下都應當檢測。
應用指標指是在某些應用下有重要作用的指標,即只適用于部分應用的指標。
FRR和FAR是可靠性和唯一性的衍生指標,能有效衡量認證過程中有效輸入被錯誤拒絕或無效輸入被錯誤接受的可能性。
熵是衡量PUF結構能提取的設備固有隨機物理特征的標準,密鑰生成和隨機數生成應用中,熵有重要作用。
抗機器學習建模攻擊指PUF抵抗機器學習建模方法準確預測響應的能力。常用的機器學習建模方法包括邏輯回歸,支持向量機、CMA-ES等,在明文發送激勵響應對的強PUF應用場景下很重要。
空間自相關分析近期也用于評估PUF性能,反映不同芯片及芯片不同位置之間響應潛在的相互依賴性。
根據上述分析可以看出,評估體系中不僅包含作為身份憑證的基礎指標可靠性和唯一性,還應包含密碼學中很重要的隨機性、比特混疊,工程應用上很重要的開銷,在認證或密鑰生成上有重要作用的FAR等指標,具有完備性,能充分在各個應用下反映PUF性能的優劣。此外,評估指標體系具備包容性,一種新的、能應用到某個領域的指標可以被加入到指標體系的應用指標部分;當該指標被認為能對所有應用都有重要作用時,可以加入重要指標。
本節將根據PUF性能指標體系,提出適用的評估方案,并且將評估結果反饋給PUF設計人員,以改進和優化PUF的實現結構。
本文以設備與服務器端認證為例,說明評估方案和指標選取原則。具體認證過程如下:認證服務器在固定時間認證終端,提取認證終端的激勵響應對的激勵發給終端。終端計算出響應后,返回給認證服務器。認證服務器計算數據庫中響應和收到響應漢明距離(漢明距離指兩個響應異或結果中1的數量,表示數據庫中響應和收到的響應有多少位不同),若漢明距離小于或等于閾值A,判斷認證通過,否則不通過。
具體實施評估方案前,需根據經驗明確表1中參考閾值和初始權重,理想值為可能出現的最優值;參考閾值為系統可以正常運行的極限值,該值過高會導致過度篩選,過低會導致系統性能變差;初始權重為該指標對最終評估結果的影響程度,和為100。表1中的數據為筆者根據目前PUF研究現狀及上述認證場景提出的參考閾值和初始權重,后期應通過迭代測試及Delphi法有效、可靠地收集專家意見,更加準確地評估PUF的優劣。

表1 指標要求及權重參考
評估各個指標后,最終結果的分值計算如式(1)所示,即綜合評估結果為
(1)
式中:Indexi、Ideali、Thresholdi、Weighti分別表示各指標實際值、理想值、參考閾值和初始權重。
評估方案流程如圖2所示,下面重點介紹PUF評估過程。

圖2 評估方案流程
(1)必要指標、重要指標評估
評估可靠性、唯一性、隨機性、比特混疊、開銷,其中可靠性分為溫度可靠性和老化可靠性,隨機測試包含頻率檢驗、塊內頻數檢驗、游程檢驗。
(2)應用指標選擇
認證過程中,信道不安全,第三方若收到足夠多消息后可預測下一條響應就能仿冒設備,導致認證協議失效。同時,身份認證要求最小化FAR、FRR。因此,需要選擇應用指標中的FAR、FRR指標和抗機器學習建模攻擊。其中抗機器學習建模攻擊需要評估每一位響應的準確度,計算預測響應和實際響應的漢明距離能更加簡明地表現機器學習建模能否仿冒芯片。
(3)綜合評估
需先根據參考閾值判斷PUF各指標計算結果是否超出參考閾值,若未超出,根據式(1)計算出各項指標得分之和為綜合評估結果,以計算結果評估PUF優劣,分值最高者為最佳,否則直接出評估報告。因此,評估多個PUF結構時,必須根據具體應用場景確定表1,不同的標準可能得到不同的結果。
為增強響應數據可靠性,本文設計了一款PUF指紋采集軟件,用于采集芯片中響應位(bit)抖動概率低于閾值的激勵響應對,即芯片物理指紋。
該采集軟件工作原理如下:指紋采集軟件生成隨機的激勵數據(或從已有的指紋庫中提取激勵數據);向芯片發送多次(本實驗中為100次)激勵數據,接收到響應數據后,采集軟件將同一條激勵產生的響應中出現次數最多的存入采集數據;該響應次數/總次數(該響應出現頻率)≥指定概率門限的激勵響應對,即為一條指紋,存入指紋庫。
本實驗采用芯片為XILINX公司ARTIX-7系列XC7A100T-2FGG484,該芯片具有7 925個可配置邏輯塊(Configurable Logic Block,CLB),邏輯元件數為101 440,滿足實驗要求;有1路USB轉232串口,便于計算機與FPGA開發板的激勵響應數據交換。本文采用了兩塊同型號的開發板進行實驗。在測試PUF可靠性實驗中,選用型號為sm-8-8200的高低溫交變試驗箱(后文簡稱溫箱)提供穩定的高溫、低溫及溫變環境。
實驗過程:在常溫下采集、指紋,以及將開發板放在溫箱中,在高溫、低溫、升溫、降溫環境下采集指紋。采集指紋參數設置為每條激勵發送100次,每條激勵間隔50 ms,指定概率門限為95%。具體的測試項目及獲得的測試數據如表2所示,其中,數據編號第一位表示芯片,第二位為1時表示使用隨機激勵采集的指紋庫,其他表示用指紋庫中特定激勵獲得的采集數據。

表2 測試項目及數據
實驗依照指標體系依次評估必要指標、重要指標、應用指標,并根據評估結果給出簡要評論。
3.3.1 必要指標評估
本節通過計算片內漢明距離和片間漢明距離得到可靠性和唯一性。漢明距離分布如圖3和圖4所示,圖3為同一芯片相同激勵產生的響應漢明距離分布圖,圖4為不同芯片相同激勵產生的響應漢明距離分布圖,其中橫坐標為漢明距離,縱坐標為各漢明距離出現的次數/測試總次數。

圖3 片內漢明距離分布

圖4 片間漢明距離分布
具體過程如下:
Step1 使用將指紋庫21和采集數據23、24、25、26中相同激勵對應的響應計算,得到溫度可靠性均值為98.59%,計算如式(2)所示:
(2)
式中:n為比特長度,k為非正常采集次數,HD(Rs,Rs,t)為片內漢明距離,分布如圖3所示。
Step2 使用指紋庫21和采集數據27中相同激勵對應的響應計算,得到3個月的老化可靠性均值為99.66%。
Step3 使用指紋庫11和采集數據22中相同激勵的響應計算,計算如式(3)所示:
(3)
式中:l為總芯片數,HD(Rs,Rv)為片間漢明距離,分布如圖4所示。得到唯一性均值為51.96%。
可靠性大于98%,唯一性接近50%,作為評估指標中的基礎,符合要求。
3.3.2 重要指標評估
本節計算隨機性、比特混疊和開銷,具體過程如下:
Step1 將指紋庫21中的激勵響應數據一起放入NIST評估軟件,結果為通過,說明該PUF結構的隨機性較好。
Step2 對指紋庫21中的響應數據分別進行頻率檢驗、塊內頻數檢驗、游程檢驗,檢測結果如表3所示,可見大部分響應數據都通過了全部檢測,隨機性較好。

表3 部分隨機檢驗結果
Step3 對指紋庫21中的響應數據計算每一位1占的比例,即比特混疊,結果如圖5所示,橫坐標表示響應的第幾位,縱坐標表示這一位上1的比例。計算如式(4)所示:
(4)
式中:rj,i為第j個響應的第i位,c表示響應數。
由圖5可以看出,只有少部分位在50%附近,比特混疊性能較差,需要改進。

圖5 比特混疊結果
Step4 激勵位數為64位,響應位數為64位,占用FPGA芯片的CLB塊資源為3%。占用資源較少,若后續擴充到更長的激勵響應對所需的FPGA芯片邏輯資源是足夠的。
3.3.3 應用指標評估
本節評估FAR、FRR和抗機器學習建模攻擊能力,具體過程如下:
Step1 計算不同認證閾值A下的FAR和FRR值。計算如式(5)和式(6)所示,結果如圖6所示,橫坐標表示閾值的選取,縱坐標表示閾值為橫坐標時的FAR和FRR。

圖6 FAR與FRR示意圖
(5)
(6)

Step2 使用指紋庫21中的激勵響應對,其中一半作為訓練集,一半作為測試集,使用邏輯回歸計算每一位預測準確率,結果如圖7所示,橫坐標表示響應的第幾位,縱坐標表示該位的準確率。大部分位的準確率接近100%,只有少數在70%左右,說明抗機器學習建模攻擊能力較差。

圖7 預測準確率
Step3 使用上一步測試結果與實際響應計算漢明距離,得到漢明距離分布如圖8所示,橫坐標表示機器學習和原始數據的漢明距離,縱坐標表示漢明距離出現的次數/測試總次數。預測響應和實際響應的漢明距離在0附近,說明該PUF可以被仿冒。

圖8 預測響應與實際響應漢明距離
3.3.4 綜合評估
根據式(1)計算評估結果,其中隨機數檢驗取每種檢驗通過的平均值,比特混疊取50%差值的平均值加50,FAR、FRR取最小值(A=5),預測準確率取每一位的平均值,得到評估結果為75.81。
本文提出了一種分層的PUF性能指標體系,將常用指標分為必須檢測的必要指標、應該檢測的重要指標和按照應用場景選用的應用指標,并進一步提出硬件物理指紋性能評估方案,最后針對RO PUF實施了該方案,實驗結果證明了該方案的可用性。本文中PUF激勵與響應的長度分別為64位,指紋共128位,可以采用更長的激勵響應對(如512位的激勵),但需要消耗更多的FPGA芯片邏輯資源。
本文提出的PUF性能評估指標體系和評估實施方案可實現在一個標準下評估多個PUF結構,能為PUF應用提供選型參考,作為PUF設計和PUF工程應用的橋梁,具有相當的工程實用價值。