System.ArgumentOutOfRangeException: 索引和長度必須引用該字符串內(nèi)的位置。 參數(shù)名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技術(shù)實(shí)現(xiàn)步驟摘要】
本專利技術(shù)涉及集成電路設(shè)計(jì)安全,更具體地,涉及基于樹鎖定單元的邏輯鎖定加密方法及電路。
技術(shù)介紹
1、在集成電路設(shè)計(jì)領(lǐng)域,隨著全球化和供應(yīng)鏈的分散,硬件安全問題日益凸顯。純設(shè)計(jì)公司(fabless)公司將設(shè)計(jì)外包給代工廠和測試/組裝公司,這增加了ip盜版、硬件木馬、逆向工程等安全威脅的風(fēng)險(xiǎn)。為了應(yīng)對這些威脅,邏輯鎖定技術(shù)應(yīng)運(yùn)而生。邏輯鎖定會(huì)對原始電路中進(jìn)行適度的修改并插入額外的邏輯,再通過引入密鑰來鎖定與還原原始設(shè)計(jì)。在不知道正確密鑰或無法推斷原始電路結(jié)構(gòu)時(shí),加密后的設(shè)計(jì)對于供應(yīng)鏈中的惡意行為對象而言是難以理解的。
2、現(xiàn)有的邏輯鎖定技術(shù),尤其是可證明安全的邏輯鎖定(psll)使得sat攻擊的迭代次數(shù)與密鑰位數(shù)成指數(shù)關(guān)系,從而提高了安全性。然而,psll在面對gnnunlock等先進(jìn)的移除攻擊時(shí),顯示出了結(jié)構(gòu)上的不足。這是由于傳統(tǒng)的psll通常將加密結(jié)構(gòu)置于原始電路外圍,導(dǎo)致加密電路與原始電路耦合程度較低,容易被攻擊者識別和移除。
技術(shù)實(shí)現(xiàn)思路
1、本專利技術(shù)的目的是克服現(xiàn)有技術(shù)存在的加密電路與原始電路耦合程度較低,容易被攻擊者識別和移除的問題,提供一種基于與樹及或樹的樹鎖定單元的邏輯鎖定加密方法及電路。
2、為實(shí)現(xiàn)上述目的,本專利技術(shù)的技術(shù)方案如下:
3、本專利技術(shù)提供一種基于與樹及或樹的樹鎖定單元的邏輯鎖定加密方法,包括以下步驟:
4、獲得原始電路的門級網(wǎng)表;
5、根據(jù)所述門級網(wǎng)表進(jìn)行電路分析,得到原始電路中與樹和或樹
6、在得到所有樹后,根據(jù)所述所有與樹和或樹之間的位置關(guān)系來選取樹,使得樹的數(shù)量與位置關(guān)系盡可能達(dá)到期望的安全需求;
7、根據(jù)所述選取的樹,在所述門級網(wǎng)表中找到對應(yīng)的電路門位置,插入具體的門,并修改對應(yīng)的連接關(guān)系與電路結(jié)構(gòu),構(gòu)建樹鎖定單元;
8、根據(jù)構(gòu)建的所述樹鎖定單元構(gòu)建加密電路。
9、進(jìn)一步地,在所述根據(jù)樹與樹之間的位置關(guān)系來選取樹之前,需要先獲得每棵樹的單棵樹期望加密強(qiáng)度以及樹和樹之間的加密強(qiáng)度。
10、進(jìn)一步地,獲得所述每棵樹的單棵樹期望加密強(qiáng)度的步驟包括:對每個(gè)單棵樹及其扇入錐進(jìn)行剝離,再對每個(gè)單棵樹進(jìn)行點(diǎn)函數(shù)加密,對每個(gè)單棵樹進(jìn)行sat攻擊,獲得每棵樹的單棵樹期望加密強(qiáng)度。
11、進(jìn)一步地,在獲得每棵樹的單棵樹期望加密強(qiáng)度后,排除掉加密強(qiáng)度不符合預(yù)期的單棵樹,在剩余的單棵樹中,利用sat攻擊來計(jì)算樹和樹之間的加密強(qiáng)度。
12、進(jìn)一步地,所述根據(jù)所述所有與樹和或樹之間的位置關(guān)系來選取樹,使得樹的數(shù)量與位置關(guān)系盡可能達(dá)到期望的安全需求,具體為:根據(jù)樹與樹之間的位置關(guān)系,使用啟發(fā)式算法逐個(gè)選取樹,并利用所述樹和樹之間的加密強(qiáng)度來實(shí)時(shí)估算當(dāng)前的多棵樹的組合所能實(shí)現(xiàn)的加密強(qiáng)度,保證樹的合理選取,使得樹的數(shù)量與位置關(guān)系盡可能達(dá)到期望的安全需求。
13、本專利技術(shù)另一方面還提供一種基于與樹及或樹的樹鎖定單元的邏輯鎖定加密電路,所述加密電路位于原始電路內(nèi)部,所述加密電路包括至少一個(gè)樹鎖定單元,所述樹鎖定單元包括旁路電路和原始電路內(nèi)部選定的或樹或與樹,所述樹鎖定單元的輸入包括或樹或與樹的原輸入和密鑰輸入,所述加密電路輸出通過異或門與受保護(hù)的電路輸出進(jìn)行異或操作獲得最終的電路輸出。
14、進(jìn)一步地,所述原始電路內(nèi)部選定的所述與樹和所述或樹至少為三輸入樹。
15、進(jìn)一步地,每個(gè)所述樹的原輸入都與一個(gè)所述密鑰輸入相對應(yīng)并共同控制所述旁路電路的輸入。
16、進(jìn)一步地,在每個(gè)所述樹鎖定單元中,每個(gè)所述樹的原輸入與相對應(yīng)的所述密鑰輸入分別通過一個(gè)異或門進(jìn)行異或操作后得到的所有輸出再通過一個(gè)與門進(jìn)行與操作,得到該樹鎖定單元的旁路電路輸出。
17、進(jìn)一步地,所述加密電路包括一個(gè)與樹樹鎖定單元和一個(gè)或樹樹鎖定單元,所述與樹鎖定單元的旁路電路還包括一個(gè)非門,在每個(gè)與樹的原輸入與相對應(yīng)的密鑰輸入分別通過一個(gè)異或門進(jìn)行異或操作后得到的所有輸出再通過一個(gè)與門進(jìn)行與操作之后通過所述非門得到所述與樹樹鎖定單元的最終的旁路電路輸出,所述與樹樹鎖定單元的最終的旁路電路輸出和與樹的原輸出通過一個(gè)與門得到與樹現(xiàn)輸出;
18、所述或樹樹鎖定單元的旁路電路輸出和或樹原輸出通過一個(gè)或門得到或樹現(xiàn)輸出;
19、經(jīng)過所述非門之前的所述與樹樹鎖定單元的旁路電路輸出還和所述或樹樹鎖定單元的旁路電路輸出通過一個(gè)與門進(jìn)行與操作得到所述加密電路輸出,所述加密電路輸出通過異或門與受保護(hù)的電路輸出進(jìn)行異或操作獲得最終的電路輸出。
20、與現(xiàn)有技術(shù)相比,本專利技術(shù)的有益效果如下:
21、本專利技術(shù)提出一種基于電路中與樹和或樹的樹鎖定單元的邏輯鎖定加密方法,具有高度的靈活性,它既可以作為一種獨(dú)立的機(jī)制,也可以作為傳統(tǒng)可證明安全邏輯鎖定結(jié)構(gòu)的安全增強(qiáng)機(jī)制以及與一些先進(jìn)的鎖定機(jī)制相結(jié)合,適應(yīng)不同的設(shè)計(jì)需求和安全級別;通過在電路內(nèi)部構(gòu)建與原始邏輯更加耦合的樹鎖定單元,本專利技術(shù)顯著提升了集成電路對于逆向工程和未經(jīng)授權(quán)的修改的抵抗力,與傳統(tǒng)的外圍加密結(jié)構(gòu)相比,樹鎖定單元更難被惡意識別和移除;樹鎖定單元能夠根據(jù)不同的密鑰映射到不同的原始功能,這種設(shè)計(jì)增加了電路的混淆性,使得惡意行為對象即使發(fā)現(xiàn)了樹鎖定單元,也難以推斷其真正的功能和作用。
本文檔來自技高網(wǎng)...【技術(shù)保護(hù)點(diǎn)】
1.一種基于與樹及或樹的樹鎖定單元的邏輯鎖定加密方法,其特征在于,包括如下步驟:
2.根據(jù)權(quán)利要求1所述的一種基于與樹及或樹的樹鎖定單元的邏輯鎖定加密方法,其特征在于,在所述根據(jù)所述所有與樹和或樹之間的位置關(guān)系來選取樹之前,需要先獲得每棵樹的單棵樹期望加密強(qiáng)度以及樹和樹之間的加密強(qiáng)度。
3.根據(jù)權(quán)利要求2所述的一種基于與樹及或樹的樹鎖定單元的邏輯鎖定加密方法,其特征在于,獲得所述每棵樹的單棵樹期望加密強(qiáng)度的步驟包括:對每個(gè)單棵樹及其扇入錐進(jìn)行剝離,再對每個(gè)單棵樹進(jìn)行點(diǎn)函數(shù)加密,對每個(gè)單棵樹進(jìn)行SAT攻擊,獲得每棵樹的單棵樹期望加密強(qiáng)度。
4.根據(jù)權(quán)利要求2所述的一種基于與樹及或樹的樹鎖定單元的邏輯鎖定加密方法,其特征在于,在獲得每棵樹的單棵樹期望加密強(qiáng)度后,排除掉加密強(qiáng)度不符合預(yù)期的單棵樹,在剩余的單棵樹中,利用SAT攻擊來計(jì)算樹和樹之間的加密強(qiáng)度。
5.根據(jù)權(quán)利要求2所述的一種基于與樹及或樹的樹鎖定單元的邏輯鎖定加密方法,其特征在于,所述根據(jù)所述所有與樹和或樹之間的位置關(guān)系來選取樹,使得樹的數(shù)量與位置關(guān)系盡可能達(dá)到期望的安全需求,
6.一種基于與樹及或樹的樹鎖定單元的邏輯鎖定加密電路,用于應(yīng)用權(quán)利要求1-5任一項(xiàng)所述的一種基于與樹和或樹的樹鎖定單元的邏輯鎖定加密方法,其特征在于,所述加密電路位于原始電路內(nèi)部,所述加密電路包括至少一個(gè)樹鎖定單元,所述樹鎖定單元包括旁路電路和原始電路內(nèi)部選定的或樹或與樹,所述樹鎖定單元的輸入包括或樹或與樹的原輸入和密鑰輸入,所述加密電路輸出通過異或門與受保護(hù)的電路輸出進(jìn)行異或操作獲得最終的電路輸出。
7.根據(jù)權(quán)利要求6所述的一種基于與樹及或樹的樹鎖定單元的邏輯鎖定加密電路,其特征在于,所述原始電路內(nèi)部選定的所述與樹和所述或樹至少為三輸入樹。
8.根據(jù)權(quán)利要求7所述的一種基于與樹及或樹的樹鎖定單元的邏輯鎖定加密電路,其特征在于,每個(gè)所述樹的原輸入都與一個(gè)所述密鑰輸入相對應(yīng)并共同控制所述旁路電路的輸入。
9.根據(jù)權(quán)利要求8所述的一種基于與樹及或樹的樹鎖定單元的邏輯鎖定加密電路,其特征在于,在每個(gè)所述樹鎖定單元中,每個(gè)所述樹的原輸入與相對應(yīng)的所述密鑰輸入分別通過一個(gè)異或門進(jìn)行異或操作后得到的所有輸出再通過一個(gè)與門進(jìn)行與操作,得到該樹鎖定單元的旁路電路輸出。
10.根據(jù)權(quán)利要求9所述的一種基于與樹及或樹的樹鎖定單元的邏輯鎖定加密電路,其特征在于,所述加密電路包括一個(gè)與樹樹鎖定單元和一個(gè)或樹樹鎖定單元,所述與樹鎖定單元的旁路電路還包括一個(gè)非門,在每個(gè)與樹的原輸入與相對應(yīng)的密鑰輸入分別通過一個(gè)異或門進(jìn)行異或操作后得到的所有輸出再通過一個(gè)與門進(jìn)行與操作之后通過所述非門得到所述與樹樹鎖定單元的最終的旁路電路輸出,所述與樹樹鎖定單元的最終的旁路電路輸出和與樹的原輸出通過一個(gè)與門得到與樹現(xiàn)輸出;
...【技術(shù)特征摘要】
1.一種基于與樹及或樹的樹鎖定單元的邏輯鎖定加密方法,其特征在于,包括如下步驟:
2.根據(jù)權(quán)利要求1所述的一種基于與樹及或樹的樹鎖定單元的邏輯鎖定加密方法,其特征在于,在所述根據(jù)所述所有與樹和或樹之間的位置關(guān)系來選取樹之前,需要先獲得每棵樹的單棵樹期望加密強(qiáng)度以及樹和樹之間的加密強(qiáng)度。
3.根據(jù)權(quán)利要求2所述的一種基于與樹及或樹的樹鎖定單元的邏輯鎖定加密方法,其特征在于,獲得所述每棵樹的單棵樹期望加密強(qiáng)度的步驟包括:對每個(gè)單棵樹及其扇入錐進(jìn)行剝離,再對每個(gè)單棵樹進(jìn)行點(diǎn)函數(shù)加密,對每個(gè)單棵樹進(jìn)行sat攻擊,獲得每棵樹的單棵樹期望加密強(qiáng)度。
4.根據(jù)權(quán)利要求2所述的一種基于與樹及或樹的樹鎖定單元的邏輯鎖定加密方法,其特征在于,在獲得每棵樹的單棵樹期望加密強(qiáng)度后,排除掉加密強(qiáng)度不符合預(yù)期的單棵樹,在剩余的單棵樹中,利用sat攻擊來計(jì)算樹和樹之間的加密強(qiáng)度。
5.根據(jù)權(quán)利要求2所述的一種基于與樹及或樹的樹鎖定單元的邏輯鎖定加密方法,其特征在于,所述根據(jù)所述所有與樹和或樹之間的位置關(guān)系來選取樹,使得樹的數(shù)量與位置關(guān)系盡可能達(dá)到期望的安全需求,具體為:根據(jù)樹與樹之間的位置關(guān)系,使用啟發(fā)式算法逐個(gè)選取樹,并利用所述樹和樹之間的加密強(qiáng)度來實(shí)時(shí)估算當(dāng)前的多棵樹的組合所能實(shí)現(xiàn)的加密強(qiáng)度,保證樹的合理選取,使得樹的數(shù)量與位置關(guān)系盡可能達(dá)到期望的安全需求。
6.一種基于與樹及或樹的樹鎖定單元的邏輯鎖定加密電路,用于應(yīng)用權(quán)利要求1-5任一項(xiàng)所述的一種基于與樹和或樹的樹鎖定單元...
【專利技術(shù)屬性】
技術(shù)研發(fā)人員:雷登云,劉學(xué)軍,張磊,周帆杰,吳榮健,周幀,劉遠(yuǎn),
申請(專利權(quán))人:廣東工業(yè)大學(xué),
類型:發(fā)明
國別省市:
還沒有人留言評論。發(fā)表了對其他瀏覽者有用的留言會(huì)獲得科技券。