午夜毛片免费看,老师老少妇黄色网站,久久本道综合久久伊人,伊人黄片子

面向FPGA木馬檢測(cè)的可測(cè)試性值計(jì)算方法和系統(tǒng)與流程

文檔序號(hào):39726360發(fā)布日期:2024-10-22 13:26閱讀:3來(lái)源:國(guó)知局
面向FPGA木馬檢測(cè)的可測(cè)試性值計(jì)算方法和系統(tǒng)與流程

所屬的技術(shù)人員可以清楚地了解到,為描述的方便和簡(jiǎn)潔,上述描述的存儲(chǔ)裝置、處理裝置的具體工作過(guò)程及有關(guān)說(shuō)明,可以參考前述方法實(shí)施例中的對(duì)應(yīng)過(guò)程,在此不再贅述。本領(lǐng)域技術(shù)人員應(yīng)該能夠意識(shí)到,結(jié)合本文中所公開(kāi)的實(shí)施例描述的各示例的模塊、方法步驟,能夠以電子硬件、計(jì)算機(jī)軟件或者二者的結(jié)合來(lái)實(shí)現(xiàn),軟件模塊、方法步驟對(duì)應(yīng)的程序可以置于隨機(jī)存儲(chǔ)器(ram)、內(nèi)存、只讀存儲(chǔ)器(rom)、電可編程rom、電可擦除可編程rom、寄存器、硬盤(pán)、可移動(dòng)磁盤(pán)、cd-rom、或內(nèi)所公知的任意其它形式的存儲(chǔ)介質(zhì)中。為了清楚地說(shuō)明電子硬件和軟件的可互換性,在上述說(shuō)明中已經(jīng)按照功能一般性地描述了各示例的組成及步驟。這些功能究竟以電子硬件還是軟件方式來(lái)執(zhí)行,取決于技術(shù)方案的特定應(yīng)用和設(shè)計(jì)約束條件。本領(lǐng)域技術(shù)人員可以對(duì)每個(gè)特定的應(yīng)用來(lái)使用不同方法來(lái)實(shí)現(xiàn)所描述的功能,但是這種實(shí)現(xiàn)不應(yīng)認(rèn)為超出本發(fā)明的范圍。術(shù)語(yǔ)“第一”、“第二”等是用于區(qū)別類(lèi)似的對(duì)象,而不是用于描述或表示特定的順序或先后次序。術(shù)語(yǔ)“包括”或者任何其它類(lèi)似用語(yǔ)旨在涵蓋非排他性的包含,從而使得包括一系列要素的過(guò)程、方法、物品或者設(shè)備/裝置不僅包括那些要素,而且還包括沒(méi)有明確列出的其它要素,或者還包括這些過(guò)程、方法、物品或者設(shè)備/裝置所固有的要素。至此,已經(jīng)結(jié)合附圖所示的優(yōu)選實(shí)施方式描述了本發(fā)明的技術(shù)方案,但是,本領(lǐng)域技術(shù)人員容易理解的是,本發(fā)明的保護(hù)范圍顯然不局限于這些具體實(shí)施方式。在不偏離本發(fā)明的原理的前提下,本領(lǐng)域技術(shù)人員可以對(duì)相關(guān)技術(shù)特征做出等同的更改或替換,這些更改或替換之后的技術(shù)方案都將落入本發(fā)明的保護(hù)范圍之內(nèi)。


背景技術(shù):

1、可編程邏輯門(mén)陣列(field-programmable?gate?arrays,fpga)因其高度的靈活性和在各種應(yīng)用中扮演著關(guān)鍵角色。設(shè)計(jì)人員和工程師也因其可重新配置的性質(zhì)而廣泛選擇使用fpga。但是,高度的可編程性也為潛在的安全風(fēng)險(xiǎn)敞開(kāi)大門(mén),不可信的第三方可能會(huì)在其中插入惡意模塊,也就是硬件木馬。

2、硬件木馬可能具有改變功能、竊取信息、降低可靠性等攻擊功能,對(duì)個(gè)人信息安全乃至國(guó)家國(guó)防安全都會(huì)產(chǎn)生巨大的威脅性。而且硬件木馬通常具有隱蔽性和罕見(jiàn)觸發(fā)性,增加了木馬檢測(cè)的難度。因此硬件木馬檢測(cè)已經(jīng)成為近年來(lái)的研究熱點(diǎn)。

3、在木馬檢測(cè)的研究中,非木馬節(jié)點(diǎn)的可測(cè)試性值會(huì)明顯低于木馬節(jié)點(diǎn)的可測(cè)試性值。為解決這一問(wèn)題,goldstein于1980年提出的scoap(sandia?controllability/observability?analysis?program)可測(cè)試性度量被廣為接受,而基于scoap的木馬檢測(cè)方法也層出不窮,但是scoap可測(cè)試性度量中并未提及fpga綜合網(wǎng)表中的可測(cè)試性度量計(jì)算方式。


技術(shù)實(shí)現(xiàn)思路

1、為了解決現(xiàn)有技術(shù)中的上述問(wèn)題,即現(xiàn)有的fpga綜合網(wǎng)表的可測(cè)試性值獲取方法無(wú)法在早期的設(shè)計(jì)階段進(jìn)行計(jì)算的問(wèn)題,本發(fā)明提供了一種面向fpga木馬檢測(cè)的可測(cè)試性值計(jì)算方法,所述方法包括:

2、步驟s1,初始化fpga綜合網(wǎng)表的全部節(jié)點(diǎn),獲得初始網(wǎng)表;

3、步驟s2,對(duì)初始網(wǎng)表的所有主輸入i置cc0(i)=cc1(i)=1,對(duì)初始網(wǎng)表的所有主輸出o置co(o)=0;

4、步驟s3,對(duì)設(shè)置好主輸入和主輸出的初始網(wǎng)表進(jìn)行拓?fù)浠?,獲得拓?fù)浠W(wǎng)表;

5、步驟s4,根據(jù)拓?fù)浠W(wǎng)表計(jì)算拓?fù)浠W(wǎng)表的拓?fù)浯涡颍?/p>

6、步驟s5,基于所述拓?fù)浯涡颍瑥闹鬏斎腴_(kāi)始依次計(jì)算各節(jié)點(diǎn)的可控性值;

7、步驟s6,基于所述拓?fù)浯涡?,基于所述可控性值從主輸出開(kāi)始依次計(jì)算各節(jié)點(diǎn)的可觀測(cè)性值;所述可控性值和可觀測(cè)性值作為可測(cè)試性值。

8、進(jìn)一步的,所述各節(jié)點(diǎn)的可控性值和各節(jié)點(diǎn)的可觀測(cè)性值具體為:

9、所述各節(jié)點(diǎn)的可控性值,包括查找表lut的可控性值、進(jìn)位邏輯鏈carry的可控性值、觸發(fā)器的可控性值和鎖存器的可控性值;

10、所述各節(jié)點(diǎn)的可觀測(cè)性值,包括查找表lut的可觀測(cè)性值、進(jìn)位邏輯鏈carry的可觀測(cè)性值、觸發(fā)器的可觀測(cè)性值和鎖存器的可觀測(cè)性值。

11、進(jìn)一步的,所述可控性值的計(jì)算方法根據(jù)可以確定邏輯門(mén)的輸出時(shí)的輸入可控性值的數(shù)量不同進(jìn)行區(qū)分;

12、當(dāng)設(shè)置1個(gè)輸入可控性值可確定邏輯門(mén)的輸出時(shí):

13、輸出可控性=min(輸入可控性)+邏輯深度

14、當(dāng)所有輸入都設(shè)置為控制值可確定邏輯門(mén)的輸出時(shí):

15、輸出可控性=∑(輸入可控性)+邏輯深度

16、當(dāng)設(shè)置輸出由多個(gè)控制集可確定邏輯門(mén)的輸出時(shí):

17、輸出可控性=min(輸入可控性集)+邏輯深度。

18、進(jìn)一步的,所述查找表lut的可控性值計(jì)算方法為:

19、根據(jù)查找表lut找到所有使輸出的取值bi=0(1)的索引記為搜索索引i;

20、對(duì)于每一個(gè)搜索索引i對(duì)應(yīng)的輸入集合(ain,ai(n-1),…,ai1)計(jì)算n位寬的查找表lutn的輸入可控性值,加上查找表當(dāng)前的邏輯深度1,獲得n位寬的超招標(biāo)lutn的輸入可控性值:

21、

22、

23、其中,cc0lut(o)表示lut當(dāng)前節(jié)點(diǎn)的0-可控制性值,cc1lut(o)lut當(dāng)前節(jié)點(diǎn)的1-可控制性值,aij表示的lut輸入的取值,ik表示輸入,ij表示n位寬的查找表lutn的第j位輸入,bi表示所有輸入的第i個(gè)元素對(duì)應(yīng)輸出的取值,i=1,2,…,2n,其中i表示輸入的元素的序號(hào),ij∈ik,cc表示輸入可控性值。進(jìn)一步的,所述查找表lut的可觀測(cè)性值計(jì)算方法為:

24、colut(ik)=1+colut(o)+min(∑(ccxlut(im)+ccylut(o)))

25、其中,ccxlut(im)代表真值表中除了當(dāng)前輸入值ik以外的每一個(gè)非當(dāng)前輸入值im在取值為x(x=0,1)時(shí)的可控制性值,ccylut(o)中的y代表真值表中對(duì)應(yīng)的一行中輸出取值,ccylut(o)代表輸出取值為y時(shí)的可控制性值。

26、進(jìn)一步的,所述進(jìn)位邏輯鏈carry的可控性值計(jì)算方法為:

27、搜索所有使進(jìn)位邏輯鏈carry的加法/減法結(jié)果輸出端為零o[0]=0的第一輸入組合對(duì);

28、基于所述第一輸入組合對(duì)中可控性值的最小值的一對(duì)的可控性值,加上邏輯深度,獲得進(jìn)位邏輯鏈carry的可控性值:

29、cc0carry(o[0])=

30、min(cc0carry(s[0])+cc0carry(cyinit),cc1carry(s[0])+

31、cc1carry(cyinit))+1

32、cc1carry(o[0])=

33、min(cc0carry(s[0])+cc1carry(cyinit),cc1carry(s[0])+

34、cc0carry(cyinit))+1

35、cc0carry(co[0])=

36、min(cc0carry(s[0])+cc0carry(di[0]),cc1carry(s[0])+

37、cc0carry(cyinit))+1

38、cc1carry(co[0])=

39、min(cc0carry(s[0])+cc1carry(di[0]),cc1carry(s[0])+

40、cc1carry(cyinit))+1

41、cc0carry(o[1])=

42、min(cc0carry(s[1])+cc0carry(co[0]),cc1carry(s[1])+

43、cc1carry(co[0]))+2

44、cc1carry(o[1])=

45、min(cc0carry(s[1])+cc1carry(co[0]),cc1carry(s[1])+

46、cc0carry(co[0]))+2

47、cc0carry(co[1])=

48、min(cc0carry(s[1])+cc0carry(di[1]),cc1carry(s[1])+

49、cc0carry(co[0]))+2

50、cc1carry(co[1])=

51、min(cc0carry(s[1])+cc1carry(di[1]),cc1carry(s[1])+

52、cc1carry(co[0]))+2

53、cc0carry(o[2])=

54、min(cc0carry(s[2])+cc0carry(co[1]),cc1carry(s[2])+

55、cc1carry(co[1]))+3

56、cc1carry(o[2])=

57、min(cc0carry(s[2])+cc1carry(co[1]),cc1carry(s[2])+

58、cc0carry(co[1]))+3

59、cc0carry(co[2])=

60、min(cc0carry(s[2])+cc0carry(di[2]),cc1carry(s[2])+

61、cc0carry(co[1]))+3

62、cc1carry(co[2])=

63、min(cc0carry(s[2])+cc1carry(di[2]),cc1carry(s[2])+

64、cc1carry(co[1]))+3

65、cc0carry(o[3])=

66、min(cc0carry(s[3])+cc0carry(co[2]),cc1carry(s[3])+

67、cc1carry(co[2]))+4

68、cc1carry(o[3])=

69、min(cc0carry(s[3])+cc1carry(co[2]),cc1carry(s[3])+

70、cc0carry(co[2]))+4

71、cc0carry(co[3])=

72、min(cc0carry(s[3])+cc0carry(di[3]),cc1carry(s[3])+

73、cc0carry(co[2]))+4

74、cc1carry(co[3])=

75、min(cc0carry(s[3])+cc1carry(di[3]),cc1carry(s[3])+

76、cc1carry(co[2]))+4

77、cc0carry()表示進(jìn)位邏輯鏈carry的0-可控制性值,cc1carry(o[0])表示進(jìn)位邏輯鏈carry的1-可控制性值,s表示進(jìn)位邏輯鏈carry的同步設(shè)定端,cyinit表示進(jìn)位邏輯鏈carry的初始化值,di表示進(jìn)位邏輯鏈carry的數(shù)據(jù)輸入,co[]表示進(jìn)位邏輯鏈carry的輸出,[]中的1、2和3表示索引。

78、進(jìn)一步的,所述進(jìn)位邏輯鏈carry的可觀測(cè)性值計(jì)算方法為:

79、cocarry(cyinit)=

80、min(cc0carry(o[0])+cc0carry(s[0]),cc1carry(o[0])+

81、cc0carry(s[0]),cc0carry(o[0])+cc1carry(s[0]),cc1carry(o[0])+

82、cc1carry(s[0]))+cocarry(o[0])+1

83、cocarry(s[0])=

84、min(cc0carry(o[0])+cc0carry(cyinit),cc1carry(o[0])+

85、cc0carry(cyinit),cc0carry(o[0])+cc1carry(cyinit),cc1carry(o[0])+cc1carry(cyinit))+cocarry(o[0])+1

86、cocarry(s[1])=

87、min(cc0carry(o[1])+cc0carry(co[0]),cc1carry(o[1])+

88、cc0carry(co[0]),cc0carry(o[1])+cc1carry(co[0]),cc1carry(o[1])+

89、cc1carry(co[0]))+cocarry(o[1])+1

90、cocarry(s[2])=

91、min(cc0carry(o[2])+cc0carry(co[1]),cc1carry(o[2])+

92、cc0carry(co[1]),cc0carry(o[2])+cc1carry(co[1]),cc1carry(o[2])+

93、cc1carry(co[1]))+cocarry(o[2])+1

94、cocarry(s[3])=

95、min(cc0carry(o[3])+cc0carry(co[2]),cc1carry(o[3])+

96、cc0carry(co[2]),cc0carry(o[3])+cc1carry(co[2]),cc1carry(o[3])+

97、cc1carry(co[2]))+cocarry(o[3])+1

98、cocarry(di[0])=

99、min(cc0carry(s[0])+cc0carry(co[0]),cc0carry(s[0])+

100、cc1carry(co[0]))+cocarry(co[0])+1

101、cocarry(di[1])=

102、min(cc0carry(s[1])+cc0carry(co[1]),cc0carry(s[1])+

103、cc1carry(co[1]))+cocarry(co[1])+1

104、cocarry(di[2])=

105、min(cc0carry(s[2])+cc0carry(co[2]),cc0carry(s[2])+

106、cc1carry(co[2]))+cocarry(co[2])+1

107、cocarry(di[3])=

108、min(cc0carry(s[3])+cc0carry(co[3]),cc0carry(s[3])+

109、cc1carry(co[3]))+cocarry(co[3])+1

110、其中,cocarry()表示可觀測(cè)性值,cc0carry()表示0-可控制性值,cc1carry()表示1-可控性值,s表示進(jìn)位邏輯鏈carry的同步設(shè)定端,cyinit表示進(jìn)位邏輯鏈carry的初始化值,di表示進(jìn)位邏輯鏈carry的數(shù)據(jù)輸入,o表示進(jìn)位邏輯鏈carry的輸出,co[]表示進(jìn)位邏輯鏈carry的輸出,[]中的1、2和3表示索引。

111、進(jìn)一步的,所述觸發(fā)器的可控性值和鎖存器的可控性值計(jì)算方法為:

112、對(duì)于第一類(lèi)觸發(fā)器fdce的可控性值和第一類(lèi)鎖存器ldce的可控性值:

113、cc0(q)=min(cc0(clr)+cc0(d)+cc0(c)+cc1(c)

114、+cc1(ce),cc1(clr))

115、cc1(q)=min(cc0(clr)+cc1(d)+cc0(c)+cc1(c)

116、+cc1(ce),cc0(ce))

117、對(duì)于第二類(lèi)觸發(fā)器fdpe和第二類(lèi)鎖存器ldpe的可控性值:cc0(q)=min(cc0(pre)+cc0(d)+cc0(c)+cc1(c)

118、+cc1(ce),cc0(ce))

119、cc1(q)=min(cc0(pre)+cc1(d)+cc0(c)+cc1(c)

120、+cc1(ce),cc1(pre))

121、對(duì)于第三類(lèi)觸發(fā)器fdre的可控性值:

122、cc0(q)=min(cc0(r)+cc0(d)+cc0(c)+cc1(c)+cc1(ce),cc1(r))

123、cc1(q)=min(cc0(r)+cc1(d)+cc0(c)+cc1(c)+cc1(ce),cc0(ce))

124、對(duì)于第四類(lèi)觸發(fā)器fdse的可控性值:

125、cc0(q)=min(cc0(s)+cc0(d)+cc0(c)+cc1(c)+cc1(ce),cc0(ce))

126、cc1(q)=min(cc0(s)+cc1(d)+cc0(c)+cc1(c)+cc1(ce),cc1(s))

127、其中,cc0()表示0-可控制性值,cc1()表示1-可控性值,q表示觸發(fā)器或鎖存器的輸出數(shù)據(jù),r表示同步復(fù)位端,c表示時(shí)鐘端,ce表示時(shí)鐘使能端,pre表示異步預(yù)設(shè)端。

128、進(jìn)一步的,所述觸發(fā)器的可觀測(cè)性值和鎖存器的可觀測(cè)性值計(jì)算方法為:

129、對(duì)于第一類(lèi)觸發(fā)器fdce的可觀測(cè)性值和第一類(lèi)鎖存器ldce的可觀測(cè)性值:

130、co(d)=co(q)+cc1(c)+cc0(c)+cc0(clr)+cc1(ce)

131、對(duì)于第二類(lèi)觸發(fā)器fdpe的可觀測(cè)性值和第二類(lèi)鎖存器ldpe的可觀測(cè)性值:

132、co(d)=co(q)+cc1(c)+cc0(c)+cc0(pre)+cc1(ce)

133、對(duì)于第三類(lèi)觸發(fā)器fdre的可觀測(cè)性值:

134、co(d)=co(q)+cc1(c)+cc0(c)+cc0(r)+cc1(ce)

135、對(duì)于第四類(lèi)觸發(fā)器fdse的觀測(cè)性值:

136、co(d)=co(q)+cc1(c)+cc0(c)+cc0(s)+cc1(ce)

137、其中,co()表示可觀測(cè)性值,cc0()表示0-可控制性值,cc1()表示1-可控性值,d表示輸入數(shù)據(jù),q表示觸發(fā)器或鎖存器的輸出數(shù)據(jù),r表示同步復(fù)位端,c表示時(shí)鐘端,s表示同步設(shè)定端,ce表示時(shí)鐘使能端,pre表示異步預(yù)設(shè)端。

138、本發(fā)明的另一方面,提出了一種面向fpga木馬檢測(cè)的可測(cè)試性值計(jì)算系統(tǒng),

139、初始網(wǎng)表獲取模塊,配置為初始化fpga綜合網(wǎng)表的全部節(jié)點(diǎn),獲得初始網(wǎng)表;

140、輸入輸出初始化模塊,配置為對(duì)初始網(wǎng)表的所有主輸入i置cc0(i)=cc1(i)=1,對(duì)初始網(wǎng)表的所有主輸出o置co(o)=0;

141、拓?fù)浠K,配置為對(duì)設(shè)置好主輸入和主輸出的初始網(wǎng)表進(jìn)行拓?fù)浠@得拓?fù)浠W(wǎng)表;

142、拓?fù)浯涡颢@取模塊,配置為根據(jù)拓?fù)浠W(wǎng)表計(jì)算拓?fù)浠W(wǎng)表的拓?fù)浯涡颍?/p>

143、可控性值計(jì)算模塊,配置為基于所述拓?fù)浯涡?,從主輸入開(kāi)始依次計(jì)算各節(jié)點(diǎn)的可控性值;

144、可觀測(cè)性值計(jì)算模塊,配置為基于所述拓?fù)浯涡?,基于所述可控性值從主輸出開(kāi)始依次計(jì)算各節(jié)點(diǎn)的可觀測(cè)性值;所述可控性值和可觀測(cè)性值作為可測(cè)試性值。

145、本發(fā)明的有益效果:

146、(1)本發(fā)明能夠在fpga設(shè)計(jì)的初級(jí)階段就精確計(jì)算出網(wǎng)表的可測(cè)試性指標(biāo),使設(shè)計(jì)工程師能夠及時(shí)識(shí)別可能存在的硬件木馬。這一早期介入策略降低了后期修改的成本與風(fēng)險(xiǎn),加速了產(chǎn)品開(kāi)發(fā)進(jìn)程。

147、(2)通過(guò)在設(shè)計(jì)初期即融入可測(cè)試性值,確保了硬件結(jié)構(gòu)既滿足功能需求,又便于后續(xù)的測(cè)試與驗(yàn)證,提升了整體系統(tǒng)的可靠性與維護(hù)性。

148、(3)對(duì)于木馬檢測(cè),可以使研究人員獲取更多的網(wǎng)表電路特征值,在fpga綜合網(wǎng)表上實(shí)現(xiàn)更好的特征提取與木馬檢測(cè)。

當(dāng)前第1頁(yè)1 2 
網(wǎng)友詢問(wèn)留言 已有0條留言
  • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1