一種安全芯片的抗時(shí)鐘頻率錯(cuò)誤注入攻擊的防御電路的制作方法
【專利摘要】本發(fā)明公開了一種安全芯片的抗時(shí)鐘頻率錯(cuò)誤注入攻擊的防御電路,其特征包括:檢測模塊和檢測模塊:檢測模塊包括:第一NMOS晶體管M1、第二NMOS晶體管M2、第一傳輸門TG1、第二傳輸門TG2、第三傳輸門TG3、第四傳輸門TG4;判斷模塊包括:第一施密特觸發(fā)器A1、第二施密特觸發(fā)器A2、第一D觸發(fā)器D1、第二D觸發(fā)器D2、同或門XNOR。本發(fā)明能將時(shí)鐘頻率限定在一安全的頻率范圍內(nèi),從而能有效防止時(shí)鐘頻率錯(cuò)誤注入攻擊。
【專利說明】
一種安全芯片的抗時(shí)鐘頻率錯(cuò)誤注入攻擊的防御電路
技術(shù)領(lǐng)域
[0001] 本發(fā)明涉及硬件信息安全領(lǐng)域,具體的說是一種安全芯片的抗時(shí)鐘頻率錯(cuò)誤注入 攻擊的防御電路。
【背景技術(shù)】
[0002] 在信息安全應(yīng)用領(lǐng)域,基于特定密碼算法的安全芯片能夠?yàn)槊舾行畔⑻峁C(jī)密性 與完整性保護(hù)。同時(shí),安全芯片在信息安全保護(hù)方面的重要作用使其容易遭受各種攻擊,面 臨著越來越嚴(yán)重的安全性挑戰(zhàn)。這些攻擊主要包括:靜態(tài)攻擊和動(dòng)態(tài)攻擊,前者包括侵入式 攻擊和半侵入式攻擊,如微探針攻擊技術(shù)、激光掃描技術(shù);后者包括非侵入式攻擊,如功耗 分析、軟件攻擊和錯(cuò)誤注入攻擊方法。針對動(dòng)態(tài)攻擊的方法,目前在算法級(jí)、電路級(jí)、邏輯級(jí) 和系統(tǒng)級(jí)四個(gè)方面提出了抗攻擊措施。
[0003] 錯(cuò)誤注入攻擊首先通過設(shè)置外在因素和改變環(huán)境條件,比如時(shí)鐘頻率、電源電壓、 以及溫度、光照、輻射等,從而導(dǎo)致安全芯片內(nèi)部產(chǎn)生錯(cuò)誤狀態(tài),然后收集芯片在錯(cuò)誤狀態(tài) 下的輸出信息,將其與安全芯片正常狀態(tài)下的信息相對比,就可以在一定程度上可以獲取 芯片內(nèi)部的敏感數(shù)據(jù)。目前,通過以錯(cuò)誤注入攻擊來獲取密鑰已經(jīng)從一種理論構(gòu)想轉(zhuǎn)化為 一種切實(shí)可行的方法。針對上述錯(cuò)誤注入攻擊,可以設(shè)計(jì)檢測單元,當(dāng)芯片遭受到對應(yīng)的攻 擊時(shí),檢測單元檢測到異常,然后針對異常做出響應(yīng),比如,復(fù)位和自毀。
[0004] 安全芯片大多采用外部時(shí)鐘驅(qū)動(dòng),芯片中電路以單步執(zhí)行的模式運(yùn)行,這將為分 析其工作提供明顯的機(jī)會(huì)。同時(shí)過高的工作頻率,也會(huì)使電路工作發(fā)生紊亂。為了防止這種 情況的發(fā)生,需要將時(shí)鐘限定在一安全的頻率范圍內(nèi)。
[0005] 目前常用的時(shí)鐘頻率檢測電路比較復(fù)雜,需要參考時(shí)鐘、分頻器、計(jì)數(shù)器和比較器 等,有的邏輯運(yùn)算繁瑣,導(dǎo)致功耗大和占用芯片面積大,不適合在低功耗的安全芯片中應(yīng) 用。
【發(fā)明內(nèi)容】
[0006] 本發(fā)明為解決上述現(xiàn)有技術(shù)中存在的不足之處,提供一種結(jié)構(gòu)簡單,功耗低、面積 小的安全芯片的抗時(shí)鐘頻率錯(cuò)誤注入攻擊的防御電路,以期能將時(shí)鐘頻率限定在一安全的 頻率范圍內(nèi),從而能有效防止時(shí)鐘頻率錯(cuò)誤注入攻擊。
[0007] 為了達(dá)到上述目的,本發(fā)明所采用的技術(shù)方案為:
[0008] 本發(fā)明一種安全芯片的抗時(shí)鐘頻率錯(cuò)誤注入攻擊的防御電路,是用于檢測時(shí)鐘 CLK的頻率,其特點(diǎn)包括:檢測模塊和判斷模塊:
[0009] 所述檢測模塊包括:第一NM0S晶體管Ml、第二匪0S晶體管M2、第一傳輸門TG1、第 二傳輸門TG2、第三傳輸門TG3、第四傳輸門TG4;
[0010] 所述第一匪0S晶體管的源極、漏極與第一傳輸門TG1的一端并聯(lián)接地,所述第一 NM0S晶體管的柵極與第一傳輸門TG1的另一端并聯(lián)后再與第二傳輸門TG2的一端串聯(lián);所述 第二傳輸門TG2的另一端接VDD;以所述第一NM0S晶體管的柵極一側(cè)作為第一輸出端a;
[0011]所述第二匪〇S晶體管M2的源極、漏極與第三傳輸門TG3的一端并聯(lián)接地,所述第二 NM0S晶體管的柵極與第三傳輸門TG3的另一端并聯(lián)后再與第四傳輸門TG4的一端串聯(lián);所述 第四傳輸門TG4的另一端接VDD;以所述第二NM0S晶體管的柵極一側(cè)作為第二輸出端b;
[0012 ]所述第一傳輸門TG1、第二傳輸門TG2、第三傳輸門TG3、第四傳輸門TG4分別與時(shí)鐘 CLK相連;
[0013]所述判斷模塊包括:第一施密特觸發(fā)器A1、第二施密特觸發(fā)器A2、第一 D觸發(fā)器D1、 第二D觸發(fā)器D2、同或門XN0R;
[0014] 所述第一施密特觸發(fā)器A1的輸入端與所述第一輸出端a相連,所述第一施密特觸 發(fā)器A1的輸出端與所述第一 D觸發(fā)器D1的輸入端相連;
[0015] 所述第二施密特觸發(fā)器A2的輸入端與所述第二輸出端b相連,所述第二施密特觸 發(fā)器A2的輸出端與所述第二D觸發(fā)器D2的輸入端相連;
[0016] 所述第一 D觸發(fā)器D1、第二D觸發(fā)器D2分別通過反相器與所述時(shí)鐘CLK相連;
[0017] 所述第一 D觸發(fā)器D1和第二D觸發(fā)器D2的輸出端與所述同或門XN0R的輸入端相連, 經(jīng)過所述同或門XN0R的運(yùn)算得到的計(jì)算結(jié)果即為檢測結(jié)果。
[0018] 本發(fā)明所述的抗時(shí)鐘頻率錯(cuò)誤注入攻擊的防御電路的特點(diǎn)也在于:
[0019] 所述檢測模塊中的第一 NM0S晶體管Ml和第二NM0S晶體管M2為兩個(gè)充放電單元,所 述第一 NM0S晶體管Ml的電容值大于第二NM0S晶體管M2的電容值,且所述第一 NM0S晶體管Ml 檢測第一時(shí)鐘頻率閾值,第二NM0S晶體管M2檢測第二時(shí)鐘頻率閾值,所述第一時(shí)鐘頻率閾 值小于第二時(shí)鐘頻率閾值。
[0020] 在所述檢測模塊中,當(dāng)所述時(shí)鐘CLK高電平時(shí),所述第一傳輸門TG1和第三傳輸門 TG3同步截止,所述第二傳輸門TG2和第四傳輸門TG4同步導(dǎo)通;反之,當(dāng)所述時(shí)鐘CLK低電平 時(shí),所述第一傳輸門TG1和第三傳輸門TG3同步導(dǎo)通,所述第二傳輸門TG2和第四傳輸門TG4 同步截止;
[0021 ]所述檢測結(jié)果是按如下過程獲得:
[0022] 當(dāng)被檢測的時(shí)鐘CLK頻率低于第一時(shí)鐘頻率閾值或者高于第二時(shí)鐘頻率閾值時(shí), 輸出高電平;
[0023] 當(dāng)被檢測的時(shí)鐘CLK頻率介于第一時(shí)鐘頻率閾值與第二時(shí)鐘頻率閾值之間時(shí),輸 出低電平。
[0024]與已有技術(shù)相比,本發(fā)明的有益效果為:
[0025] 1、本發(fā)明電路通過對M0S晶體管電容進(jìn)行充放電,以此判斷時(shí)鐘頻率的大小,從而 能夠檢測出時(shí)鐘頻率是否低于第一時(shí)鐘頻率閾值或者高于第二時(shí)鐘頻率閾值,將時(shí)鐘限定 在一安全的頻率范圍內(nèi),本電路與其他傳統(tǒng)頻率檢測電路相比,結(jié)構(gòu)簡單,降低了面積和功 耗,提高了檢測速度。
[0026] 2、本電路檢測模塊中的電容由匪0S晶體管組成,工藝成熟,易于集成在安全芯片 內(nèi),并且可以通過調(diào)整晶體管的尺寸和個(gè)數(shù),應(yīng)用于不同頻率的電路。
[0027] 3、本電路檢測模塊中的傳輸門是由NM0S晶體管和PM0S晶體管并聯(lián)構(gòu)成的CMOS傳 輸門,等效導(dǎo)通電阻很低、截止電阻很高,接近理想開關(guān),可以傳輸信號(hào)從低電平至高電平, 不受限制,對電容充電的速度更快。
[0028] 4、本電路判斷模塊對檢測模塊內(nèi)電容的最大值進(jìn)行判斷,兩個(gè)時(shí)鐘周期內(nèi)檢測出 結(jié)果,檢測速度快,施密特觸發(fā)器能夠降低噪聲等誤觸發(fā),需要的邏輯單元少,消耗資源低。
【附圖說明】
[0029] 圖1是本發(fā)明防御電路的原理圖;
[0030] 圖2是本發(fā)明應(yīng)于施密特觸發(fā)器的輸入輸出仿真圖;
[0031] 圖3是本發(fā)明防御電路對被檢測時(shí)鐘頻率低于第一時(shí)鐘頻率閾值時(shí)的仿真結(jié)果;
[0032] 圖4是本發(fā)明防御電路對被檢測時(shí)鐘頻率高于第二時(shí)鐘頻率閾值時(shí)的仿真結(jié)果;
[0033] 圖5是本發(fā)明防御電路對被檢測時(shí)鐘頻率介于第一時(shí)鐘頻率閾值和第二時(shí)鐘頻 率閾值之間的仿真結(jié)果示意圖;
[0034] 圖6是本發(fā)明防御電路的系統(tǒng)動(dòng)態(tài)電流仿真結(jié)果示意圖;
[0035] 圖中標(biāo)號(hào):10檢測1?塊;20判斷1?塊。
【具體實(shí)施方式】
[0036] 本實(shí)施例中,一種安全芯片的抗時(shí)鐘頻率錯(cuò)誤注入攻擊的防御電路,是用于檢測 時(shí)鐘CLK的頻率,如圖1所示,包括檢測模塊10和檢測模塊20:
[0037]檢測模塊10包括:第一 NM0S晶體管M1、第二NM0S晶體管M2、第一傳輸門TG1、第二傳 輸門TG2、第三傳輸門TG3、第四傳輸門TG4;且第一 N0MS晶體管Ml的面積大于第二N0MS晶體 管M2,主要實(shí)現(xiàn)在時(shí)鐘高電平時(shí)對NM0S電容充電,在時(shí)鐘低電平時(shí)對NM0S電容放電;
[0038]第一 NM0S晶體管的源極、漏極與第一傳輸門TG1的一端并聯(lián)接地,第一 NM0S晶體管 的柵極與第一傳輸門TG1的另一端并聯(lián)后再與第二傳輸門TG2的一端串聯(lián);第二傳輸門TG2 的另一端接VDD;以第一NM0S晶體管的柵極一側(cè)作為第一輸出端a;
[0039] 第二NM0S晶體管M2的源極、漏極與第三傳輸門TG3的一端并聯(lián)接地,第二NM0S晶體 管的柵極與第三傳輸門TG3的另一端并聯(lián)后再與第四傳輸門TG4的一端串聯(lián);第四傳輸門 TG4的另一端接VDD;以第二NM0S晶體管的柵極一側(cè)作為第二輸出端b;
[0040] 第一傳輸門TG1、第二傳輸門TG2、第三傳輸門TG3、第四傳輸門TG4分別與時(shí)鐘CLK 相連;
[0041 ]判斷模塊20包括:第一施密特觸發(fā)器A1、第二施密特觸發(fā)器A2、第一 D觸發(fā)器D1、第 二D觸發(fā)器D2、同或門XN0R;用于實(shí)現(xiàn)電位的判斷和邏輯運(yùn)算。
[0042] 第一施密特觸發(fā)器A1的輸入端與所述第一輸出端a相連,第一施密特觸發(fā)器A1的 輸出端與所述第一 D觸發(fā)器D1的輸入端相連;
[0043] 第二施密特觸發(fā)器A2的輸入端與所述第二輸出端b相連,第二施密特觸發(fā)器A2的 輸出端與所述第二D觸發(fā)器D2的輸入端相連;
[0044] 第一 D觸發(fā)器D1、第二D觸發(fā)器D2分別通過反相器與所述時(shí)鐘CLK相連;
[0045]第一 D觸發(fā)器D1和第二D觸發(fā)器D2的輸出端與所述同或門XN0R的輸入端相連,經(jīng)過 同或門XN0R的運(yùn)算得到的計(jì)算結(jié)果即為檢測結(jié)果。
[0046]具體實(shí)施中,檢測模塊中的第一NM0S晶體管Ml和第二NM0S晶體管M2為兩個(gè)充放電 單元,第一匪0S晶體管Ml的電容值大于第二NM0S晶體管M2的電容值,且第一匪0S晶體管Ml 檢測第一時(shí)鐘頻率閾值,第二NM0S晶體管M2檢測第二時(shí)鐘頻率閾值,第一時(shí)鐘頻率閾值小 于第二時(shí)鐘頻率閾值。
[0047] 在檢測電路中,當(dāng)時(shí)鐘CLK高電平時(shí),第一傳輸門TG1和第三傳輸門TG3同步截止, 第二傳輸門TG2和第四傳輸門TG4同步導(dǎo)通;反之,當(dāng)時(shí)鐘CLK低電平時(shí),第一傳輸門TG1和第 三傳輸門TG3同步導(dǎo)通,第二傳輸門TG2和第四傳輸門TG4同步截止;
[0048] 本實(shí)施例中,檢測結(jié)果是按如下過程獲得:
[0049] 當(dāng)被檢測的時(shí)鐘CLK頻率低于第一時(shí)鐘頻率閾值或者高于第二時(shí)鐘頻率閾值時(shí), 輸出高電平,如圖3、圖4所示;當(dāng)被檢測的時(shí)鐘CLK頻率介于第一時(shí)鐘頻率閾值與第二時(shí)鐘 頻率閾值之間時(shí),輸出低電平,如圖5所示。
[0050] 本電路能夠在兩個(gè)時(shí)鐘周期內(nèi)判斷出時(shí)鐘頻率是否介于第一時(shí)鐘頻率閾值和第 二時(shí)鐘頻率閾值之間,檢測速度快,能夠應(yīng)用于高頻電路,同時(shí)結(jié)構(gòu)簡單,功耗低,面積小。 整個(gè)電路的工作原理如下:
[0052] t = RC
[0053] 其中:V0為電容上的初始電壓值,VI為電容最終可充到的電壓值,R為傳輸門的等 效阻抗,約為:
[0056]可知R的比較穩(wěn)定,阻值比較小,C又可以通過參數(shù)n、W、L進(jìn)行調(diào)節(jié),使τ滿足時(shí)鐘頻 率檢測。Ml的電容大于M2的電容,在相同的充電時(shí)間,Ml充電達(dá)到的電壓值小于M2,故設(shè)置 Ml檢測第一時(shí)鐘頻率閾值,M2檢測第二時(shí)鐘頻率閾值,第一時(shí)鐘頻率閾值小于第二時(shí)鐘頻 率閾值。
[0057] 當(dāng)時(shí)鐘CLK為高電平時(shí),傳輸門TG2、TG4導(dǎo)通,對M1、M2充電,在高電平變?yōu)榈碗娖?的瞬間,對Μ1、M2的電壓進(jìn)行判斷;當(dāng)時(shí)鐘CLK為低電平后,傳輸門TG1、TG3導(dǎo)通,對Ml、M2放 電,依次循環(huán)。
[0058] A1、A2對點(diǎn)a、b的電位進(jìn)行判斷是否發(fā)生電位翻轉(zhuǎn),當(dāng)輸入電壓低于VSPL時(shí),輸出將 轉(zhuǎn)換為高電平;當(dāng)輸入電壓超過Vsph時(shí),輸出才再次轉(zhuǎn)換為低電平,如圖2所示。D1、D2在CLK 的下降沿對信號(hào)進(jìn)行鎖存。
[0059]當(dāng)被檢測的時(shí)鐘頻率低于第一時(shí)鐘頻率閾值時(shí),Ml和M2都有足夠的時(shí)間進(jìn)行充 電,充電電壓達(dá)到VSPH,使施密特觸發(fā)器A1和A2發(fā)生電平翻轉(zhuǎn),變?yōu)榈碗娖?,并使得D1和D2的 輸出保持為低電平,經(jīng)過同或門邏輯運(yùn)算,輸出結(jié)果OUT為高電平,如圖3所示。
[0060]當(dāng)被檢測的時(shí)鐘頻率高于第二時(shí)鐘頻率閾值時(shí),Ml和M2都沒有足夠的時(shí)間進(jìn)行充 電,充電電壓達(dá)不到VSPH,施密特觸發(fā)器A1和A2-直保持高電平,并使得D1和D2的輸出一直 保持為高電平,經(jīng)過同或門邏輯運(yùn)算,輸出結(jié)果OUT為高電平,如圖4所示。
[0061 ]當(dāng)對被檢測時(shí)鐘頻率介于第一時(shí)鐘頻率閾值和第二時(shí)鐘頻率閾值之間時(shí),Ml沒有 足夠的時(shí)間進(jìn)行充電,充電電壓達(dá)不到VSPH,M2有足夠的時(shí)間進(jìn)行充電,充電電壓達(dá)到VSPH, 施密特觸發(fā)器A1 -直保持高電平,A2發(fā)生翻轉(zhuǎn),變?yōu)榈碗娖?,并使得D1的輸出一直保持為 高電平,D2的輸出保持為低電平,經(jīng)過同或門邏輯運(yùn)算,輸出結(jié)果OUT為低電平,如圖5所示。
[0062] 對系統(tǒng)動(dòng)態(tài)電流分析,仿真結(jié)果如圖6所示,計(jì)算得到平均電流為0.47mA(0.25um 工藝)。
[0063] 綜上所述,當(dāng)被檢測的時(shí)鐘頻率低于第一時(shí)鐘頻率閾值或高于第二時(shí)鐘頻率閾值 時(shí),輸出高電平,即可以判斷為時(shí)鐘頻率異常,觸發(fā)后面的響應(yīng);當(dāng)時(shí)鐘頻率介于第一時(shí)鐘 頻率閾值和第二時(shí)鐘頻率閾值之間時(shí),輸出為低電平,認(rèn)為處于安全工作時(shí)鐘頻率范圍內(nèi)。
【主權(quán)項(xiàng)】
1. 一種安全芯片的抗時(shí)鐘頻率錯(cuò)誤注入攻擊的防御電路,是用于檢測時(shí)鐘CLK的頻率, 其特征包括:檢測模塊和判斷模塊: 所述檢測模塊包括:第一 NMOS晶體管Ml、第二匪0S晶體管M2、第一傳輸門TG1、第二傳輸 門TG2、第三傳輸門TG3、第四傳輸門TG4; 所述第一 NMOS晶體管的源極、漏極與第一傳輸門TG1的一端并聯(lián)接地,所述第一 NMOS晶 體管的柵極與第一傳輸門TG1的另一端并聯(lián)后再與第二傳輸門TG2的一端串聯(lián);所述第二傳 輸門TG2的另一端接VDD;以所述第一NMOS晶體管的柵極一側(cè)作為第一輸出端a; 所述第二NMOS晶體管M2的源極、漏極與第三傳輸門TG3的一端并聯(lián)接地,所述第二匪OS 晶體管的柵極與第三傳輸門TG3的另一端并聯(lián)后再與第四傳輸門TG4的一端串聯(lián);所述第四 傳輸門TG4的另一端接VDD;以所述第二NMOS晶體管的柵極一側(cè)作為第二輸出端b; 所述第一傳輸門TG1、第二傳輸門TG2、第三傳輸門TG3、第四傳輸門TG4分別與時(shí)鐘CLK 相連; 所述判斷模塊包括:第一施密特觸發(fā)器A1、第二施密特觸發(fā)器A2、第一 D觸發(fā)器D1、第二 D觸發(fā)器D2、同或門XN0R; 所述第一施密特觸發(fā)器A1的輸入端與所述第一輸出端a相連,所述第一施密特觸發(fā)器 A1的輸出端與所述第一 D觸發(fā)器D1的輸入端相連; 所述第二施密特觸發(fā)器A2的輸入端與所述第二輸出端b相連,所述第二施密特觸發(fā)器 A2的輸出端與所述第二D觸發(fā)器D2的輸入端相連; 所述第一 D觸發(fā)器D1、第二D觸發(fā)器D2分別通過反相器與所述時(shí)鐘CLK相連; 所述第一 D觸發(fā)器D1和第二D觸發(fā)器D2的輸出端與所述同或門XN0R的輸入端相連,經(jīng)過 所述同或門XN0R的運(yùn)算得到的計(jì)算結(jié)果即為檢測結(jié)果。2. 根據(jù)權(quán)利要求1所述的抗時(shí)鐘頻率錯(cuò)誤注入攻擊的防御電路,其特征在于:所述檢測 模塊中的第一匪0S晶體管Ml和第二NMOS晶體管M2為兩個(gè)充放電單元,所述第一 NMOS晶體管 Ml的電容值大于第二NMOS晶體管M2的電容值,且所述第一 NMOS晶體管Ml檢測第一時(shí)鐘頻率 閾值,第二匪0S晶體管M2檢測第二時(shí)鐘頻率閾值,所述第一時(shí)鐘頻率閾值小于第二時(shí)鐘頻 率閾值。3. 根據(jù)權(quán)利要求1所述的抗時(shí)鐘頻率錯(cuò)誤注入攻擊的防御電路,其特征在于:在所述檢 測模塊中,當(dāng)所述時(shí)鐘CLK高電平時(shí),所述第一傳輸門TG1和第三傳輸門TG3同步截止,所述 第二傳輸門TG2和第四傳輸門TG4同步導(dǎo)通;反之,當(dāng)所述時(shí)鐘CLK低電平時(shí),所述第一傳輸 門TG1和第三傳輸門TG3同步導(dǎo)通,所述第二傳輸門TG2和第四傳輸門TG4同步截止。4. 根據(jù)權(quán)利要求2所述的抗時(shí)鐘頻率錯(cuò)誤注入攻擊的防御電路,其特征在于:所述檢測 結(jié)果是按如下過程獲得: 當(dāng)被檢測的時(shí)鐘CLK頻率低于第一時(shí)鐘頻率閾值或者高于第二時(shí)鐘頻率閾值時(shí),輸出 高電平; 當(dāng)被檢測的時(shí)鐘CLK頻率介于第一時(shí)鐘頻率閾值與第二時(shí)鐘頻率閾值之間時(shí),輸出低 電平。
【文檔編號(hào)】G06F21/71GK106096457SQ201610415690
【公開日】2016年11月9日
【申請日】2016年6月6日 公開號(hào)201610415690.6, CN 106096457 A, CN 106096457A, CN 201610415690, CN-A-106096457, CN106096457 A, CN106096457A, CN201610415690, CN201610415690.6
【發(fā)明人】尹勇生, 汪濤, 陳紅梅, 鄧紅輝, 黃超, 蹇茂琛
【申請人】合肥工業(yè)大學(xué)