?

基于虛擬孔與雙軌預充電技術的電流型混淆邏輯電路設計

2023-06-07 11:17姚茂群李聰輝薛紫微李海威
浙江大學學報(理學版) 2023年3期
關鍵詞:預充電攻擊者功耗

姚茂群,李聰輝,薛紫微,李海威

(1.杭州師范大學 信息科學與技術學院,浙江 杭州 311121;2.臺州科技職業學院 信息工程學院,浙江 臺州 318020)

0 引言

隨著半導體技術的不斷發展,集成電路(integrated circuit,IC)的設計也變得多樣且復雜。以密碼芯片為代表的加密硬件應用廣泛,小到公交卡、銀行卡,大到通信基站以及軍用設施。正因為密碼芯片的重要性,與之相關的安全問題也逐漸增多,為竊取密碼芯片的設計結構以及所處理的數據,攻擊者常采用逆向攻擊、功耗攻擊等方式攻擊密碼芯片,帶來諸多安全問題,嚴重影響IC 產業的發展。

逆向攻擊[1-3],先對芯片采取解封裝、化學腐蝕等處理,再利用光學顯微鏡分析芯片的內部結構、電路版圖及層次等,最后提取門級網表,獲得芯片的設計方案。攻擊者常以此作為功耗攻擊的輔助手段,獲得電路的設計細節,從而判斷電路的邏輯功能,提高功耗攻擊的效率。近年來,提出了一種通過電路偽裝抵抗逆向攻擊的方法,即通過隱藏電路版圖中的物理細節,掩蓋電路的邏輯功能。如虛擬孔技術[4-5]、傳輸管閾值損失技術[6-7]等。

功耗攻擊[8-10]是密碼芯片遭遇的較常見且極具威脅性的攻擊方式。利用芯片運行時所泄露的功耗信息,并對功耗與密碼算法進行相關性分析,得到算法密鑰。目前,抗功耗攻擊的常用方法是使電路的功耗恒定,消除兩者的相關性關系。

電流型CMOS 電路具有功耗低、邏輯簡單等優點[11-12],并且不同門電路之間具有相似的電路結構,非常有利于電路偽裝,具有抗逆向攻擊的優勢。同時,已有的抗攻擊電路研究大多集中在電壓型電路,隨著電流型CMOS 電路的不斷發展,設計抗逆向攻擊和抗功耗攻擊的電流型CMOS 電路具有必要性。

1 電路偽裝與功耗恒定

1.1 電路偽裝

電路偽裝的核心是偽裝邏輯門,即將幾種不同邏輯功能的門電路設計成相同的電路結構,具有“看”似相同的線路布局,從而讓攻擊者無法通過光學顯微鏡提取門級網表信息,進而抵抗基于圖像提取的逆向攻擊。如圖1 所示[13],標準NAND 門電路與標準NOR 門電路版圖的區別清晰可辨。而偽裝的NAND 與NOR 門電路,在版圖上無法被準確區分,起混淆邏輯作用,增加了攻擊者分析電路邏輯功能的難度,從而達到防御逆向攻擊的目的。

偽裝邏輯門設計,主要利用了虛擬孔技術,即版圖中的接觸孔可能是真實連接的,也可能是虛擬連接的,令攻擊者無法得知其準確配置。通過將真實連接與虛擬連接的接觸孔相互混合,就可用相同的電路結構設計出不同功能的偽裝門電路,即接觸孔的配置決定了該偽裝門的邏輯功能。

1.2 功耗恒定

功耗恒定是一種較為常見的抵抗功耗攻擊的方法。實現功耗恒定的常用設計方法是雙軌預充電技術(dual rail pre-charge,DRP)[14-15],即將電路的運行周期分為預充電和求值2 個階段,且1 個雙軌電路由2 個單軌電路組合而成,有2 個輸出端,如圖2 所示。當1 對輸入信號到達時,若電路處于預充電階段,則2 個輸出信號均為低電平0。若處于求值階段,則2 個輸出信號為正常的互補運算值。因此,當電路從預充電階段進入求值階段時,無論輸入信號為何值,2 個輸出信號中有且僅有1 個發生從低電平到高電平(0→1)的跳變。當電路從求值階段進入預充電階段時,2 個輸出信號中也有且僅有1 個發生從高電平到低電平(1→0)的跳變,即輸出信號的跳變頻率恒定,此為功耗恒定的理論基礎。

圖2 單軌電路與雙軌電路結構示意Fig.2 Structure of single rail circuit and double rail circuit

2 基于虛擬孔的電流型邏輯電路

2.1 電路設計

電流型CMOS 電路的不同門電路具有相似的電路結構,非常適合偽裝邏輯門設計。如圖3 所示[11],電流型CMOS 與非門、或非門以及非門的電路結構非常相似,只需改變MOS 管的寬長比就可實現不同的邏輯功能。

圖3 電流型CMOS 門電路[11]Fig.3 Current-type CMOS gate[11]

利用虛擬孔技術,即通過真實孔與虛擬孔相混合的方式配置版圖接觸孔,實現用一種電路結構完成與非、或非以及非門3 種邏輯功能,構成布爾邏輯完備集。提出了基于虛擬孔的電流型邏輯(dummy contacts current-mode logic,DCCML),其電路結構如圖4 所示。圓圈處為接觸孔所在位置,真實孔與虛擬孔的配置如表1 所示。當CH1,CH2為真實孔,CH3為虛擬孔時,實現NAND 功能;當CH1,CH3為真實孔,CH2為虛擬孔時,實現NOR 功能;當CH3為真實孔,CH1,CH2為虛擬孔時,實現INV 功能。這種電路設計方法,使得攻擊者無法得到該電路接觸孔的具體配置,無法分辨電路的邏輯功能,起混淆邏輯作用,增大分析難度。

表1 接觸孔配置Table 1 Contact hole configuration

圖4 DCCML 電路Fig.4 DCCML circuit

2.2 邏輯功能實驗

對所設計的DCCML 電路,用Hspice 軟件,0.18 μm 工藝參數進行模擬,0 μA 代表邏輯值0,10 μA 代表邏輯值1,其仿真波形如圖5 所示,結果表明,該電路結構邏輯功能正確。因此,只需對接觸孔進行不同配置,就可利用相同的電路結構執行不同的邏輯功能,從而抵抗逆向攻擊。

圖5 DCCML 電路輸出波形Fig.5 Output waveform of DCCML circuit

3 雙軌預充電電流型混淆邏輯(DCMOL)電路設計

將DCCML 電路與雙軌預充電技術相結合,設計了一種既可抵抗逆向攻擊,也可抵抗功耗攻擊的電路,提出了雙軌預充電電流型混淆邏輯(DRP current-mode obfuscation logic,DCMOL)電路,其單軌電路如圖6 所示。與圖4 相比,增加了1 個PMOS 管P1和1 個NMOS 管N1,并在該處放置時鐘信號,其目的是使電路根據時鐘信號的取值進入預充電階段或求值階段。當時鐘信號CLKA 為低電平時,進入預充電階段,P1管導通,N1管截止,電路輸出與地相連,從而輸出低電平0。當時鐘信號CLKA 為高電平時,電路從預充電階段進入求值階段,N1管導通,P1管截止,之后根據接觸孔的不同配置,在求值階段分別運行NAND、NOR 或INV 邏輯。接觸孔的配置如表1 所示。

圖6 DCMOL 單軌電路Fig.6 DCMOL single-rail circuit

將2 個完全相同的DCMOL 單軌電路進行組合,構成DCMOL 結構,如圖7 所示。輸入信號(x,y)與(a,b)之間構成表2 所示的對應取值關系,即當(x,y)的取值為(0,0)時,(a,b)的取值應為(1,1),其對應關系也可由a=b=----------x+y 運算得到。此設計使得求值階段DCMOL 結構的2 個輸出信號是互補的,從而令信號翻轉率恒定,實現功耗恒定。

表2 2 組輸入信號的對應取值關系Table 2 Corresponding value of two groups of input signal

表3 同類型邏輯結構實現的或非門功耗恒定性能對比Table 3 Comparison of constant power consumption performance of NOR gates implemented by the same type of logic structure

圖7 DCMOL 結構Fig.7 DCMOL structure

4 實驗結果與分析

將基于DCMOL 結構得到的與非門、或非門以及非門,利用Hspice 軟件、0.18 μm 工藝參數進行實驗,用Vdd端的電流數據評估計算功耗的變化。利用接觸孔的不同配置實現3 種邏輯的門電路,實驗結果如圖8 所示。其中,在0~5 和10~15 ns 時,電路為預充電階段,在5~10 和15~20 ns 時,電路為求值階段,共運行2 個周期。由圖8 可知,3 個門電路的電源端波形一致,即攻擊者無法通過功耗分辨門電路的邏輯功能。并且,無論輸入信號如何取值,電流曲線(功耗變化)近似相同,即功耗與數據之間的相關性在一定程度上被消除了。

圖8 DCMOL 結構電源端電流波形Fig.8 The current waveform of the power supply terminal of the DCMOL structure

為驗證邏輯電路功耗的恒定性以及電路運算數據與功耗之間的相關性程度,通常采用標準化能量偏差(normalized energy deviation,NED)[16]進行評估。其定義為:

其中,E 為邏輯電路在一個運算周期內所產生的功耗值的集合,NED 的取值范圍為[0,1],值越小其功耗恒定性和抗功耗攻擊的性能越好。

為使測試結果更接近實際工作情況,考慮電壓波動以及溫度變化對電路性能的影響,設置5 種實驗環境[5]:(1)TYP(typical),工作電壓與標準電壓相同,為1.8 V,溫度為25 ℃;(2)BCF(best case fast),工作電壓比標準電壓高10%,溫度為-40 ℃;(3)WCS(worst case slow),工作電壓比標準電壓低10%,溫度為125 ℃;(4)TL(typical leakage),標準電壓,溫度為125 ℃;(5)ML(maximal leakage),工作電壓比標準電壓高10%,溫度為125 ℃。

5 結論

通過虛擬孔技術設計的DCCML 電路可在同一電路結構下執行與非、或非以及非門3 種邏輯功能,攻擊者在未獲得接觸孔配置的情況下無法分辨電路的邏輯功能,從而起混淆邏輯的作用,可有效防御逆向攻擊。在此基礎上設計了DCMOL 結構,在5 種實驗環境下,NED 均低于0.37%,表現出較好的功耗恒定性。經實驗驗證,DCMOL 結構能有效抵抗逆向與功耗聯合攻擊。

猜你喜歡
預充電攻擊者功耗
動力電池預充設計及溫升特性研究
基于任務映射的暗硅芯片功耗預算方法
電動汽車預充電保護設計
基于微分博弈的追逃問題最優策略設計
電動汽車分級預充電回路及預充電阻選型匹配方法研究
正面迎接批判
揭開GPU功耗的面紗
數字電路功耗的分析及優化
有限次重復博弈下的網絡攻擊行為研究
IGBT模型優化及其在Buck變換器中的功耗分析
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合