本申請(qǐng)涉及關(guān)于集成電路(ic)的安全性領(lǐng)域,特別是關(guān)于抗旁道攻擊運(yùn)算電路。
背景技術(shù):
1、領(lǐng)域?qū)蜓谀?domain-oriented?masking;dom)和實(shí)施閾值(thresholdimplementation;ti)是已知的方法,用于根據(jù)一組給定的假設(shè),制作可以證明安全的抗旁道攻擊的密碼電路。
2、在《domain-oriented?masking:compact?masked?hardware?implementationswith?arbitrary?protection?order》一文中,作者聲稱(chēng)被動(dòng)的物理攻擊,如功耗分析,對(duì)嵌入式系統(tǒng)的安全構(gòu)成嚴(yán)重威脅,因此需要實(shí)施相應(yīng)的對(duì)策。該文由奧地利格拉茨科技大學(xué)應(yīng)用訊息處理與通訊研究所(iaik)的h.gross等人于2016年發(fā)表。作者進(jìn)一步展示了如何通過(guò)引入一種稱(chēng)為領(lǐng)域?qū)蜓谀?dom)的掩膜方法,顯著降低保護(hù)數(shù)字電路免受被動(dòng)物理攻擊的成本,并提供與實(shí)施閾值(ti)相同級(jí)別的安全性,但需要更少的芯片面積和更少的隨機(jī)性。
3、美國(guó)專(zhuān)利申請(qǐng)公開(kāi)號(hào)2021/0097175描述了一種使用布林掩膜保護(hù)免受旁道攻擊的掩膜邏輯門(mén),每個(gè)輸入變數(shù)具有d+1個(gè)份額(shares),其中d是表示保護(hù)順序的整數(shù)。所述掩膜邏輯門(mén)包括第一輸入,被配置為接收第一數(shù)量份額yj;第二個(gè)輸入,被配置為接收第二數(shù)量份額xi,代表實(shí)現(xiàn)低延遲掩膜的一層閘道樹(shù)的中間輸出結(jié)果;以及通過(guò)使用領(lǐng)域?qū)蜓谀⒀谀み壿嬮T(mén)的邏輯函數(shù)應(yīng)用于第一輸入和第二輸入的份額而獲得第三數(shù)量份額的輸出。
4、在美國(guó)專(zhuān)利10,572,619中提出了另一種對(duì)抗旁道攻擊的方法,該專(zhuān)利描述了一種邏輯元件,其中包括一個(gè)邏輯塊、一個(gè)時(shí)鐘產(chǎn)生器、一個(gè)時(shí)鐘分配器和至少一個(gè)取樣元件。邏輯塊對(duì)輸入信號(hào)執(zhí)行邏輯功能以獲得多個(gè)輸出數(shù)據(jù)信號(hào)。輸出數(shù)據(jù)信號(hào)由相應(yīng)的時(shí)鐘信號(hào)取樣。時(shí)鐘產(chǎn)生器從參考的時(shí)鐘信號(hào)產(chǎn)生相位移動(dòng)的時(shí)鐘信號(hào)。時(shí)鐘分配器將不同的相位移動(dòng)的時(shí)鐘信號(hào)分配給對(duì)應(yīng)的輸出數(shù)據(jù)信號(hào)。取樣元件根據(jù)相應(yīng)分配的相位移動(dòng)時(shí)鐘信號(hào)對(duì)輸出信號(hào)進(jìn)行取樣。
5、美國(guó)專(zhuān)利8,947,123中提出了一種用于防范旁道攻擊的波動(dòng)動(dòng)態(tài)差分邏輯(wavedynamic?differential?logic;wddl)方法,其中一個(gè)差分邏輯級(jí)被前一個(gè)邏輯級(jí)(例如前一個(gè)sddl級(jí)、wddl級(jí)等)預(yù)先充電或預(yù)先放電。在一個(gè)實(shí)施例中,提供了一種分波動(dòng)態(tài)差分邏輯(divided?wave?dynamic?differential?logic;dwddl),其中wddl電路可以方便地實(shí)作為雙邏輯樹(shù)。
技術(shù)實(shí)現(xiàn)思路
1、本發(fā)明的一個(gè)實(shí)施例在此描述中提供了一種抗攻擊運(yùn)算電路(attack?resilientcomputation?circuits;arccs),所述電路位于ic中。arcc包括第一運(yùn)算級(jí)、第二運(yùn)算級(jí)和安全電路。第一運(yùn)算級(jí)被配置為處理一或多個(gè)信號(hào),以產(chǎn)生一或多個(gè)輸出信號(hào),所述第一運(yùn)算級(jí)具有多個(gè)信號(hào)傳播路徑。第二運(yùn)算級(jí)被配置為接收并處理第一運(yùn)算級(jí)的輸出信號(hào)。安全電路被配置為產(chǎn)生同步信號(hào),所述同步信號(hào)表示第一運(yùn)算級(jí)中信號(hào)的傳播已經(jīng)完成,并且阻止第二運(yùn)算級(jí)在來(lái)自同步信號(hào)的時(shí)間間隔內(nèi)處理第一運(yùn)算級(jí)的輸出信號(hào)。
2、通常,所述時(shí)間間隔短于信號(hào)的一個(gè)時(shí)鐘周期。在某些實(shí)施例中,安全電路被配置為在所述時(shí)間間隔內(nèi)掩膜第一運(yùn)算級(jí)的輸出信號(hào),使所述輸出信號(hào)無(wú)法到達(dá)第二運(yùn)算級(jí)。
3、在某些實(shí)施例中,安全電路包括(i)安全門(mén)控時(shí)序電路(security?gating?timingcircuit;sgtc),sgtc被配置為在第一運(yùn)算級(jí)中信號(hào)的傳播完成時(shí)輸出同步信號(hào);和(ii)安全門(mén)控電路(security?gating?circuits;sgcs),sgc被配置為根據(jù)同步信號(hào)門(mén)控第一運(yùn)算級(jí)的輸出信號(hào)。在各種實(shí)施例中,sgc可以包括邏輯門(mén)、三態(tài)緩沖器或鎖存器。在一個(gè)實(shí)施例中,sgtc被配置為基于第一運(yùn)算級(jí)的最大傳播延遲來(lái)設(shè)置輸出同步信號(hào)的時(shí)間。
4、在其他實(shí)施例中,arcc更包括一個(gè)安全觸發(fā)器(secure?flip-flop;sff),所述安全觸發(fā)器耦接在第一運(yùn)算級(jí)和第二運(yùn)算級(jí)之間,被配置為(i)根據(jù)輸出同步信號(hào)(os)對(duì)第一運(yùn)算級(jí)的輸出信號(hào)進(jìn)行取樣,以及(ii)向第二運(yùn)算級(jí)發(fā)送輸入同步信號(hào)(is)。
5、根據(jù)此處描述的一個(gè)實(shí)施例,更提供了一種保護(hù)ic的方法。所述方法包括在具有多個(gè)信號(hào)傳播路徑的第一運(yùn)算級(jí)中處理一或多個(gè)信號(hào),以產(chǎn)生一或多個(gè)輸出信號(hào),以及在第二運(yùn)算級(jí)中接收和處理第一運(yùn)算級(jí)的輸出信號(hào)。使用安全電路產(chǎn)生同步信號(hào),所述同步信號(hào)表示第一運(yùn)算級(jí)中信號(hào)的傳播已完成。第二運(yùn)算級(jí)被禁止在從所述同步信號(hào)衍生的時(shí)間間隔內(nèi)處理第一運(yùn)算級(jí)的輸出信號(hào)。
6、以下詳細(xì)描述實(shí)施例的內(nèi)容,結(jié)合圖示可以更充分地理解本發(fā)明。
1.一種在集成電路中的抗攻擊運(yùn)算電路,其特征在于,所述抗攻擊運(yùn)算電路包括:
2.根據(jù)權(quán)利要求1所述的抗攻擊運(yùn)算電路,其特征在于,所述時(shí)間間隔小于所述信號(hào)的一個(gè)時(shí)鐘周期。
3.根據(jù)權(quán)利要求1所述的抗攻擊運(yùn)算電路,其特征在于,所述安全電路被配置為在所述時(shí)間間隔內(nèi)遮蔽所述第一運(yùn)算級(jí)的所述輸出信號(hào),以防止所述輸出信號(hào)到達(dá)所述第二運(yùn)算級(jí)。
4.根據(jù)權(quán)利要求1所述的抗攻擊運(yùn)算電路,其特征在于,所述安全電路包括:
5.根據(jù)權(quán)利要求4所述的抗攻擊運(yùn)算電路,其特征在于,所述安全門(mén)控電路包括一邏輯門(mén)。
6.根據(jù)權(quán)利要求4所述的抗攻擊運(yùn)算電路,其特征在于,所述安全門(mén)控電路包括一三態(tài)緩沖器。
7.根據(jù)權(quán)利要求4所述的抗攻擊運(yùn)算電路,其特征在于,所述安全門(mén)控電路包括一鎖存器。
8.根據(jù)權(quán)利要求4所述的抗攻擊運(yùn)算電路,其特征在于,所述安全門(mén)控時(shí)序電路被配置為根據(jù)所述第一運(yùn)算級(jí)的最大傳播延遲設(shè)置輸出所述同步信號(hào)的時(shí)間。
9.根據(jù)權(quán)利要求1所述的抗攻擊運(yùn)算電路,其特征在于,更包括一安全觸發(fā)器,所述安全觸發(fā)器耦接于所述第一運(yùn)算級(jí)和所述第二運(yùn)算級(jí)之間,所述安全觸發(fā)器被配置以根據(jù)一輸出同步信號(hào)對(duì)所述第一運(yùn)算級(jí)的所述輸出信號(hào)進(jìn)行取樣,并向所述第二運(yùn)算級(jí)發(fā)送一輸入同步信號(hào)。
10.一種集成電路的保護(hù)方法,其特征在于,此方法包括:
11.根據(jù)權(quán)利要求10所述的集成電路的保護(hù)方法,其特征在于,所述時(shí)間間隔小于所述信號(hào)的一個(gè)時(shí)鐘周期。
12.根據(jù)權(quán)利要求10所述的集成電路的保護(hù)方法,其特征在于,阻止所述第二運(yùn)算級(jí)處理所述第一運(yùn)算級(jí)的所述輸出信號(hào)的操作包括在所述時(shí)間間隔內(nèi)遮蔽所述第一運(yùn)算級(jí)的所述輸出信號(hào),防止所述輸出信號(hào)到達(dá)所述第二運(yùn)算級(jí)。
13.根據(jù)權(quán)利要求10所述的集成電路的保護(hù)方法,其特征在于,阻止所述第二運(yùn)算級(jí)處理所述第一運(yùn)算級(jí)的所述輸出信號(hào)的操作包括:
14.根據(jù)權(quán)利要求13所述的集成電路的保護(hù)方法,其特征在于,所述安全門(mén)控電路包括一邏輯門(mén)。
15.根據(jù)權(quán)利要求13所述的集成電路的保護(hù)方法,其特征在于,所述安全門(mén)控電路包括一三態(tài)緩沖器。
16.根據(jù)權(quán)利要求13所述的集成電路的保護(hù)方法,其特征在于,所述安全門(mén)控電路包括一鎖存器。
17.根據(jù)權(quán)利要求13所述的集成電路的保護(hù)方法,其特征在于,輸出所述同步信號(hào)的操作包括根據(jù)所述第一運(yùn)算級(jí)的一最大傳播延遲來(lái)設(shè)置輸出所述同步信號(hào)的時(shí)間。
18.根據(jù)權(quán)利要求10所述的集成電路的保護(hù)方法,其特征在于,更包括通過(guò)耦接在所述第一運(yùn)算級(jí)和所述第二運(yùn)算級(jí)之間的一安全觸發(fā)器,根據(jù)一輸出同步信號(hào)對(duì)所述第一運(yùn)算級(jí)的所述輸出信號(hào)進(jìn)行取樣,并向所述第二運(yùn)算級(jí)發(fā)送一輸入同步信號(hào)。