關鍵詞: RO PUF;多輸出環振蕩器;動態配置處理模塊;漢明距離
中圖分類號: TP331
文獻標識碼: A
DOI:10.16157/j.issn.0258-7998.170750
中文引用格式: 劉勇聰,王建業,丁浩. 動態可配置多輸出RO PUF[J].電子技術應用,2017,43(9):43-45,49.
英文引用格式: Liu Yongcong,Wang Jianye,Ding Hao. Dynamic configurable multi-output RO PUF[J].Application of Electronic Technique,2017,43(9):43-45,49.
0 引言
隨著計算機技術和集成電路的飛速發展和廣泛應用,芯片信息安全越來越受重視。而環形振蕩器物理不可克隆函數(RO PUF)在信息安全領域作為一項非常有潛力的技術,在芯片信息安全領域備受關注[1]。傳統RO PUF通過比較放置在同一芯片不同位置的一對環形振蕩器的頻率來生成輸出0或1。由于隨機的工藝偏差,輸出位將因芯片的不同而變得無法預測[2]。因此,基于傳統RO PUF的可配置的RO PUF被提出來。在可配置RO PUF中, 輸出位通過最大頻率差的配置向量生成[3],從而可以降低工藝偏差帶來的影響。
然而,不論是傳統RO PUF還是可配置RO PUF都存在一個相同的不足:通過比較兩個環形振蕩器頻率的不同只能產生一位輸出。為了產生更多的輸出位,只能不斷增加振蕩器數量。雖然頻率比較的方法可以提高輸出位數,但是有限的芯片資源限制了可配置RO PUF的實際運用[4]。
根據以上不足,本文提出了動態可配置多路輸出RO PUF。不僅從根本上增加了輸出位數,而且可以根據實際需求確定輸出位的數量。同時,振蕩器的結構隨工作條件的變化而相應的改變,因此可以提高芯片的魯棒性和安全性。
1 多輸出環形振蕩器
多輸出環形振蕩器由反相器、開關單元和路徑分配器組成,路徑分配器是動態可配置多路輸出RO PUF的基礎。多輸出結構的環形振蕩器如圖1所示。
圖1中所有開關單元都與仲裁器PUF[5]中的開關單元一致。如果在開關S[0..2]配置位是‘1’,信號將在對應的開關交叉,否則信號將平行通過。圖1中由3個開關單元組成的振蕩器共有8(23=8)種信號傳輸模式。路徑分配器用以確保信號不會在振蕩器上下路徑之間交叉傳播,以保證每條路徑的穩定振蕩。信號從路徑分配器的輸出端開始傳輸,通過反相器和開關單元,最后回到路徑分配器的輸入引腳。路徑分配器根據每個信號的配置向量決定信號的流向,確保信號重新開始流動時,會沿著之前的路徑流動。不同的配置向量將導致不同的信號傳輸模式。不同的傳輸模式導致不同傳輸延遲的線路和門電路,從而產生不同的振蕩頻率。
相比傳統RO PUF中和可配置RO PUF振蕩器只能產生一位輸出,該振蕩器只占一個LAB卻可以產生2個輸出位。除此之外,通過調整開關單元的通斷和路徑分配器的信號分配路徑,該振蕩器還可以產生更多的輸出位。
圖2表示一對多輸出環形振蕩器和4個輸出位(RO1-1、RO1-2、RO2-1、RO2-2)。RO1和RO2的配置向量相同。通過邏輯鎖存器,RO1-和 RO2-1具有相同的路徑。所以RO1-和RO2-1(或RO1-2and RO2-2)唯一的區別就是物理工藝偏差。因此,RO1-1和 RO2-1(或RO1-2and RO2-2)頻率比較結果可以作為一個輸出位。
在Xilinx FPGA中進行實驗,如圖3所示,實驗結果表明RO1-1和RO1-2在不同配置向量下的輸出頻率。
實驗結果表明,RO1-1和RO1-2的輸出頻率確實存在差異。此外,隨著配置向量的不同,它們的輸出頻率也存在差異。因此,驗證了多輸出振蕩器結構確實能有效產生多個輸出位。
RO1-1和RO2-1的頻率差和RO1-2和RO2-2的頻率差在不同配置向量下的實驗結果如圖4所示。可以看出,RO1-1和RO2-1的頻率差和RO1-2和RO2-2的頻率差是不相關的。因此,它們的輸出不相互影響,可以看作兩個獨立輸出位。
表1列出了不同輸出位數多輸出RO和傳統RO的芯片資源占用情況。第二列表示不同輸出位數下,一對多輸出ROs用以產生不同的輸出位的LAB占用數量。第三列表示傳統RO產生相對應的輸出位數所占用的LAB數量。可以看出,多輸出RO占用的芯片資源更少。例如,128位輸出需要65個兩位輸出ROs,占65個LAB,也可以由33個四位輸出ROs產生,占99個LAB, 但如果使用傳統的RO結構,則需要129年ROs,占129個LAB,所占的LAB數量是最多的。可以看出,多輸出RO在芯片資源利用率上具有很大的優勢。
2 動態配置過程模塊
動態可配置多路輸出RO PUF的總體結構如圖5所示。N個兩位輸出的一對環形振蕩器(ROs)通過比較相鄰ROs的頻率生成2(N-1)個輸出位。傳感器由五級環形振蕩器構成,振蕩頻率與環境溫度和電源電壓成線性關系[6]。傳感器主要用于檢測芯片工作情況。為了可以根據環境情況動態調整相鄰振蕩器的結構,從而確保相鄰的ROs保持一個相對較大的頻率差,當環境溫度和工作電壓超過預先設定的閾值時,FSM控制器[7]啟動動態配置過程從而計算出在當前環境下的“最優配置向量”。因此,環境對輸出位的影響將降低,從而動態可配置多輸出RO PUF魯棒性得到提高。
“最優配置向量”不是簡單的產生最大的頻率差的向量。相反,它是由ROs的頻率差的分布來決定。對不同配置向量下所有的ROs的正頻率差進行求和。如果上一個ROs的正頻率差大于下一個ROs的正頻率差,表明上下兩對ROs的頻率差為正,選擇可使正頻率差最大的配置向量作為“最優配置向量”。相反,如果上一個ROs的正頻率差小于下一個ROs的正頻率差,選擇一個對應的負頻率差最大的配置向量作為“最優配置向量”,從而可以擴大上下頻率差的絕對值,進而提高比較精度。
3 實驗結果
對10個Xilinx Spartan XC3S1000 FPGA進行數據提取,數據通過快速單一鏈接(Fast Simple Link)接口傳輸到MicroBlaze中進行處理。每個FPGA通過65個ROs產生128位的輸出。每個輸出測量50次。分別對傳統RO PUF、可配置RO PUF和動態可配置多輸出RO PUF進行數據分析。
RO PUF的平均片間漢明距離比例[8]可以表征同一類型PUF電路與其他個體的區分度。其計算方式如式(1)。
其中hij表示第i和第j個PUF電路產生的位輸出相應,k是FPGA的個數。提取數據后計算可得不同RO PUF的平均片間漢明距離比例如表2所示。
對比以上3種RO PUF對總的位數輸出相應的平均片間漢明距離比例結果可以看出,3種RO PUF的平均片間漢明距離比例都接近理想的50%,動態可配置多輸出RO PUF片間漢明距離比例最高。但3種RO PUF都表現出良好的唯一性。因此,3種RO PUF的輸出都可以作為每個芯片ID。
片內漢明距離可以描述PUF系統的魯棒性和可靠性,其計算如式(2)所示。
其中,M為不同工作環境的個數,hri表示在理想工作條件(25 ℃,1.2 V)下和第i種工作情況對比條件下的n位輸出響應。由于魯棒性和可靠性主要受環境溫度和電源電壓的影響。讓所使用的Xilinx FPGA分別工作在固定工作環境下和變化的工作環境下進行參數提取,分別對其片內漢明距離進行檢測。
(1)固定環境溫度和電源電壓情況下
在30 ℃,1.2 V接近理想工作環境下進行參數提取,不同RO PUF結構的平均片內漢明距離如表3所示。
在接近FPGA標準工作條件下,測試誤差和片內噪聲是影響其魯棒性的主要因素[9]。由表可以看出,可配置RO PUF可以將該RO PUF對誤差和噪聲影響降至幾乎0。
(2)變化的環境溫度和電源電壓情況下
現實條件下,芯片的工作環境溫度和電源電壓總是在不斷的變化之中。因此,降低環境溫度和電源電壓對芯片ID提取的影響意義重大。表4列出環境溫度從-30 ℃變化到+70 ℃,電壓1.15 V變化到1.25 V時,3種RO PUF的平均片內漢明距離比例變化情況。雖然在溫度變化時,動態可配置RO PUF在ID提取上沒有很大優勢,但是電源電壓改變時,可配置多輸出RO PUF在位翻轉率最低,可更加精確地提取芯片ID。
4 結論
本文結合針對傳統RO PUF和可配置RO PUF輸出位數不足,占用芯片資源過多的現實情況,在可配置RO PUF的基礎上改進,提出了動態可配置多輸出RO PUF,在提高輸出位數和節約芯片資源的同時,還提高了系統的唯一性和魯棒性,進而可提高提取芯片ID的精度。對應用RO PUF進行芯片知識產權(IP核)保護意義重大。
-
環形振蕩器
+關注
關注
1文章
12瀏覽量
8707
原文標題:【論文精選】動態可配置多輸出RO PUF
文章出處:【微信號:ChinaAET,微信公眾號:電子技術應用ChinaAET】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
相關推薦
評論