基于雙延時(shí)鏈的物理不可克隆函數(shù)電路結(jié)構(gòu)的制作方法
【專利摘要】本發(fā)明公開(kāi)了一種基于雙延時(shí)鏈的物理不可克隆函數(shù)電路結(jié)構(gòu),包括上升沿發(fā)生器、挑戰(zhàn)發(fā)生器、延時(shí)鏈D1、延時(shí)鏈D2和仲裁器,上升沿發(fā)生器的信號(hào)輸出端分別與延時(shí)鏈D1、延時(shí)鏈D2的信號(hào)輸入端連接,延時(shí)鏈D1、延時(shí)鏈D2的信號(hào)輸出端均與仲裁器的信號(hào)輸入端連接,延時(shí)鏈D1、延時(shí)鏈D2均由N個(gè)延時(shí)節(jié)點(diǎn)連接構(gòu)成,每個(gè)延時(shí)節(jié)點(diǎn)上均設(shè)有調(diào)整輸入信號(hào)的延時(shí)時(shí)間的挑戰(zhàn)位,每個(gè)挑戰(zhàn)位均與產(chǎn)生隨機(jī)挑戰(zhàn)值給其的挑戰(zhàn)發(fā)生器連接。本發(fā)明的優(yōu)點(diǎn):延時(shí)鏈D1和延時(shí)鏈D2采用相同電路結(jié)構(gòu),輸入相同傳輸信號(hào)與挑戰(zhàn)值,但兩個(gè)延時(shí)鏈互相隔離,沒(méi)有任何交叉或互連,若兩條延時(shí)鏈存在較大的固定延時(shí)差,可通過(guò)設(shè)置各延時(shí)節(jié)點(diǎn)的挑戰(zhàn)值使得延時(shí)差均衡。
【專利說(shuō)明】基于雙延時(shí)鏈的物理不可克隆函數(shù)電路結(jié)構(gòu)
[0001]
【技術(shù)領(lǐng)域】
[0002]本發(fā)明涉及一種物理不可克隆函數(shù)電路結(jié)構(gòu),具體涉及一種基于雙延時(shí)鏈的物理不可克隆函數(shù)電路結(jié)構(gòu)。
【背景技術(shù)】
[0003]隨著信息技術(shù)的發(fā)展與普及,人們生活的方方面面都在向網(wǎng)絡(luò)化、智能化方向發(fā)展,社會(huì)生活中的各種活動(dòng)也越來(lái)越多地采用電子系統(tǒng)來(lái)實(shí)現(xiàn),身份證、護(hù)照電子化,金融交易電子化。與此同時(shí),智能卡、USBKey等實(shí)現(xiàn)密碼算法的電路也日益廣泛,這些密碼設(shè)備越來(lái)越多地承載著個(gè)人和商業(yè)機(jī)密信息。
[0004]另一方面,芯片破解技術(shù)的發(fā)展,對(duì)應(yīng)用于信息安全領(lǐng)域的芯片造成了極大的威脅。物理攻擊屬于傳統(tǒng)的侵入式芯片破解技術(shù),即破壞掉芯片的封裝,并利用探針或顯微鏡獲取芯片內(nèi)部的關(guān)鍵信息。近年來(lái)出現(xiàn)的功耗分析技術(shù)屬于非入侵式攻擊,不需要破壞芯片,只是通過(guò)測(cè)量芯片電源引腳上泄露的功耗信息,將其采樣成為若干條功耗軌跡曲線,再通過(guò)某些算法來(lái)分析芯片采用的信息安全算法以及密鑰。目前國(guó)內(nèi)外很多科研機(jī)構(gòu)與芯片設(shè)計(jì)公司展開(kāi)了對(duì)功耗分析技術(shù)的研究,利用最先進(jìn)的功耗分析技術(shù),可以在幾秒內(nèi)破解算法密鑰。在這種形勢(shì)下,信息安全芯片的設(shè)計(jì)需采用系統(tǒng)性的安全措施,即在芯片運(yùn)行的各個(gè)環(huán)節(jié)、各個(gè)部分采取有針對(duì)性的防護(hù)措施,以抵抗多種可能的芯片攻擊。國(guó)外有些高安全等級(jí)的芯片,在一款芯片上同時(shí)采用上百種先進(jìn)的安全技術(shù),以保護(hù)用戶信息的安全。
[0005]面對(duì)信息安全領(lǐng)域的各種威脅,各國(guó)政府與行業(yè)機(jī)構(gòu)都提出了各自的信息安全產(chǎn)品評(píng)估制度,例如歐洲的Common Criteria認(rèn)證、國(guó)際EMV組織的EMVCo認(rèn)證等,以保證進(jìn)入信息安全市場(chǎng)的芯片產(chǎn)品具備足夠的安全能力。這些認(rèn)證促進(jìn)了整個(gè)行業(yè)的信息安全技術(shù)水平,但也給各設(shè)備提供商設(shè)置了技術(shù)門檻,只有具備足夠技術(shù)水平的公司,才能進(jìn)入信息安全產(chǎn)品市場(chǎng)。
[0006]物理不可克隆函數(shù)(PUF)是近年來(lái)學(xué)術(shù)界的研究熱點(diǎn),正處在向產(chǎn)業(yè)界的進(jìn)入階段,NXP公司已成功地將PUF技術(shù)應(yīng)用于智能卡芯片,并通過(guò)CC EAL6+認(rèn)證。PUF雖然可以通過(guò)芯片上各種物理量、各種形式來(lái)實(shí)現(xiàn),但其實(shí)現(xiàn)效率有很大差別,目前主流的PUF有以下幾類:
1.基于SRAM的PUF,該類型PUF利用SRAM存儲(chǔ)單元在上電時(shí)刻的隨機(jī)性,由于制造工藝上存在的微小偏差,某一存儲(chǔ)單元在上電瞬間可能隨機(jī)地進(jìn)入“O”或“ 1 ”狀態(tài),這種隨機(jī)性上電值經(jīng)提取處理后可作為PUF的響應(yīng)。
[0007]2.基于環(huán)振的PUF,該類型PUF利用多個(gè)反相器環(huán)構(gòu)成的振蕩器來(lái)實(shí)現(xiàn),多個(gè)被設(shè)計(jì)成同樣階數(shù)的環(huán)振,由于制 造工藝上存在的微小偏差,會(huì)導(dǎo)致在實(shí)際芯片上的振蕩頻率產(chǎn)生偏差,而這種偏差經(jīng)提取處理后可作為PUF的響應(yīng)。
[0008]3.基于延時(shí)鏈的PUF,該類型PUF利用邏輯單元以及金屬線的延時(shí)差異來(lái)實(shí)現(xiàn),兩條理論上延時(shí)應(yīng)相同的延時(shí)鏈,由于制造工藝上存在的微小偏差,會(huì)導(dǎo)致在實(shí)際芯片上的延時(shí)存在差異,這種差異經(jīng)提取處理后可作為PUF的響應(yīng)。
[0009]現(xiàn)基于延時(shí)鏈的PUF —般采用交叉延時(shí)鏈結(jié)構(gòu)的PUF,如圖1所示,這種PUF結(jié)構(gòu)由4部分構(gòu)成:上升沿發(fā)生器、挑戰(zhàn)發(fā)生器、選擇器鏈和仲裁器。上升沿發(fā)生器用于發(fā)出一個(gè)從’ O’到’ I’的跳變信號(hào),這個(gè)跳變信號(hào)輸入到選擇器鏈中,在各個(gè)選擇器中經(jīng)過(guò)平行或交叉的路徑傳播到仲裁器的輸入端,仲裁器的作用是判斷出到達(dá)仲裁器的兩路信號(hào)中上升沿的先后順序。選擇器鏈由N個(gè)選擇器構(gòu)成,其中每一個(gè)選擇器的路徑選擇由挑戰(zhàn)發(fā)生器輸出的挑戰(zhàn)位決定,如果輸入某選擇器的挑戰(zhàn)位為’ O’,那么經(jīng)過(guò)這個(gè)選擇器的兩個(gè)信號(hào)平行傳輸;如果輸入某選擇器的挑戰(zhàn)位為’ I’,那么經(jīng)過(guò)這個(gè)選擇器的兩個(gè)信號(hào)交叉?zhèn)鬏敗?br>
[0010]這種PUF結(jié)構(gòu)的原理是:由上升沿發(fā)生器輸出的一個(gè)上升沿信號(hào)分為兩路,分別在選擇器鏈中傳輸,其路徑由挑戰(zhàn)發(fā)生器決定,由于半導(dǎo)體芯片的制造工藝存在細(xì)微偏差,設(shè)計(jì)中看似對(duì)稱的兩條路徑實(shí)際上有不同的延時(shí),導(dǎo)致輸入仲裁器的兩個(gè)信號(hào)有先后順序,如果上面一個(gè)信號(hào)的上升沿先來(lái)到,那么仲裁器輸出一位’ 1’,反之輸出一位’ 0’,仲裁器一般通過(guò)一位寄存器來(lái)實(shí)現(xiàn)。以上過(guò)程可以提取出一位響應(yīng),如果重復(fù)以上過(guò)程,但每次改變挑戰(zhàn)發(fā)生器輸出的挑戰(zhàn)值,從而上升沿信號(hào)在選擇器鏈中通過(guò)的路徑不同,那么就可以得到多位(即任意長(zhǎng)度)響應(yīng),構(gòu)成響應(yīng)序列。
[0011]這種采用交叉延時(shí)鏈結(jié)構(gòu)的PUF存在延時(shí)偏差不易均衡的問(wèn)題。PUF在設(shè)計(jì)中期望的是兩條路徑到達(dá)仲裁器時(shí)經(jīng)過(guò)相等量的延時(shí),從而芯片制造中產(chǎn)生的隨機(jī)延時(shí)偏差能夠以零點(diǎn)為中心對(duì)稱分布,但在芯片后端布線時(shí),總會(huì)引入一些非零的固定延時(shí)差,導(dǎo)致仲裁器的輸出不再體現(xiàn)出工藝偏差引入的隨機(jī)性。例如當(dāng)某一選擇器的挑戰(zhàn)位為’O’或位’I’時(shí),平行或交叉的兩條路徑之間可能出現(xiàn)較大的延時(shí)差,這一較大的延時(shí)差不易被其他選擇器的延時(shí)差抵消或均衡,使得這一個(gè)選擇器的挑戰(zhàn)位對(duì)最終進(jìn)入仲裁器的信號(hào)先后順序有決定作用或者較大的決定權(quán)重,從而仲裁器的輸出在很大程度上取決于某一個(gè)選擇器的挑戰(zhàn)位,這樣當(dāng)同一個(gè)挑戰(zhàn)施加與多個(gè)芯片上的PUF時(shí),其產(chǎn)生的響應(yīng)值會(huì)有較多相同的比特,即導(dǎo)致PUF的獨(dú)一性降低。采用交叉延時(shí)鏈結(jié)構(gòu)的PUF中某一選擇器的兩個(gè)輸入端,當(dāng)其挑戰(zhàn)位取值不同時(shí),由于其路徑選擇結(jié)構(gòu),其固有的延時(shí)差傳輸?shù)街俨闷鲿r(shí),既可能是正值,也可能是負(fù)值,而其它選擇器也是同樣的路徑選擇結(jié)構(gòu),導(dǎo)致這種PUF對(duì)于固定延時(shí)差難以進(jìn)行定位和均衡。
【發(fā)明內(nèi)容】
[0012]本發(fā)明提供了一種延時(shí)差均衡的基于雙延時(shí)鏈的物理不可克隆函數(shù)電路結(jié)構(gòu)。
[0013]本發(fā)明采用的技術(shù)方案是:
基于雙延時(shí)鏈的物理不可克隆函數(shù)電路結(jié)構(gòu),其特征在于:包括上升沿發(fā)生器、挑戰(zhàn)發(fā)生器、延時(shí)鏈D1、延時(shí)鏈D2和仲裁器,所述上升沿發(fā)生器的信號(hào)輸出端分別與延時(shí)鏈D1、延時(shí)鏈D2的信號(hào)輸入端連接,所述延時(shí)鏈D1、延時(shí)鏈D2的信號(hào)輸出端均與仲裁器的信號(hào)輸入端連接,所述延時(shí)鏈D1、延時(shí)鏈D2均由N個(gè)延時(shí)節(jié)點(diǎn)連接構(gòu)成,每個(gè)所述延時(shí)節(jié)點(diǎn)上均設(shè)有一調(diào)整輸入信號(hào)的延時(shí)時(shí)間的挑戰(zhàn)位,每個(gè)所述挑戰(zhàn)位均與產(chǎn)生隨機(jī)挑戰(zhàn)值給其的挑戰(zhàn)發(fā)生器連接,所述延時(shí)鏈Dl和延時(shí)鏈D2上對(duì)應(yīng)位的挑戰(zhàn)位上接收到的挑戰(zhàn)值是一致的。本發(fā)明延時(shí)鏈DI和延時(shí)鏈D2米用相同的電路結(jié)構(gòu),輸入相同的傳輸信號(hào)與挑戰(zhàn)值,但兩個(gè)延時(shí)鏈之間互相隔離,沒(méi)有任何交叉或互連。上升沿發(fā)生器發(fā)出的上升沿信號(hào)通過(guò)兩條延時(shí)鏈之后,輸入到仲裁器,仲裁器判斷兩個(gè)上升沿信號(hào)的先后順序,輸出I位響應(yīng)值。通過(guò)挑戰(zhàn)發(fā)生器生成偽隨機(jī)序列,多次提取響應(yīng)位,構(gòu)成響應(yīng)序列。
[0014]進(jìn)一步,所述上升沿發(fā)生器是一初始值為’ O’的一位寄存器。寄存器的初始值為’ 0’,向其寫(xiě)入一位’ I’后,輸出值從’ O’變?yōu)椤?1’,即產(chǎn)生一個(gè)上升沿。
[0015]進(jìn)一步,所述挑戰(zhàn)發(fā)生器是一線性反饋移位寄存器。線性反饋移位寄存器當(dāng)設(shè)置好初始值后,可自動(dòng)輸出偽隨機(jī)序列作為每次上升沿傳輸?shù)奶魬?zhàn)值。
[0016]進(jìn)一步,所述仲裁器包括兩個(gè)觸發(fā)器Tl?T2,觸發(fā)器Tl的時(shí)鐘信號(hào)輸入端和數(shù)據(jù)信號(hào)輸入端與延時(shí)鏈Dl的信號(hào)輸出端連接;觸發(fā)器T2的時(shí)鐘信號(hào)輸入端和數(shù)據(jù)信號(hào)輸入端與延時(shí)鏈D2的信號(hào)輸出端連接;兩個(gè)觸發(fā)器Tl?T2的信號(hào)輸出端均與異或門的輸入端連接,所述異或門的輸出端是仲裁器的校驗(yàn)位輸出端,其中一個(gè)觸發(fā)器的信號(hào)輸出端是仲裁器的響應(yīng)位輸出端。
[0017]進(jìn)一步,所述延時(shí)節(jié)點(diǎn)包括與輸入信號(hào)連接的上路徑和下路徑,所述上路徑由P個(gè)緩沖器與I個(gè)上開(kāi)關(guān)構(gòu)成,所述下路徑由Q個(gè)緩沖器與I個(gè)下開(kāi)關(guān)構(gòu)成,其中P、Q為正整數(shù)且P古Q,所述上開(kāi)關(guān)的控制信號(hào)與挑戰(zhàn)位連接,所述下開(kāi)關(guān)的控制信號(hào)與取反后的挑戰(zhàn)位連接,所述上開(kāi)關(guān)和下開(kāi)關(guān)的輸出端分別與輸出信號(hào)的輸出或門的兩個(gè)輸入端連接。
[0018]進(jìn)一步,所述上開(kāi)關(guān)和下開(kāi)關(guān)是一與門。
[0019]本發(fā)明上升沿發(fā)生器用于發(fā)出一個(gè)從’ O’到’ I’的跳變信號(hào),這個(gè)跳變信號(hào)分為兩路,同時(shí)輸入到延時(shí)鏈Dl和延時(shí)鏈D2的輸入端,然后分別經(jīng)過(guò)延時(shí)鏈Dl和延時(shí)鏈D2進(jìn)行傳輸,經(jīng)過(guò)一定的延時(shí)后,兩路跳變信號(hào)分別從延時(shí)鏈Dl和延時(shí)鏈D2的輸出端輸出,并進(jìn)入仲裁器,仲裁器對(duì)這兩路跳變信號(hào)的先后順序進(jìn)行判斷,輸出響應(yīng)值。
[0020]挑戰(zhàn)發(fā)生器是在每次響應(yīng)提取前,生成隨機(jī)化的挑戰(zhàn)值,并輸入到兩個(gè)延時(shí)鏈的相應(yīng)延時(shí)節(jié)點(diǎn)上。因?yàn)槊看紊仙貍鬏?仲裁器判斷過(guò)程只能提取I位響應(yīng)值,所以應(yīng)用挑戰(zhàn)發(fā)生器的目的是自動(dòng)生成偽隨機(jī)序列,以便連續(xù)提取多個(gè)響應(yīng)位,構(gòu)成一定長(zhǎng)度的響應(yīng)序列。本發(fā)明中所述的“挑戰(zhàn)-響應(yīng)”對(duì)不是指一組挑戰(zhàn)與一個(gè)響應(yīng)位之間的配對(duì),而是指挑戰(zhàn)發(fā)生器的初始值與相應(yīng)的響應(yīng)序列之間的配對(duì)。
[0021]延時(shí)鏈?zhǔn)歉鶕?jù)挑戰(zhàn)發(fā)生器輸入挑戰(zhàn)位的挑戰(zhàn)值,對(duì)輸入上升沿信號(hào)施加一定的傳輸延時(shí),它包含有N個(gè)延時(shí)節(jié)點(diǎn),每個(gè)延時(shí)節(jié)點(diǎn)對(duì)輸入信號(hào)的延時(shí)可通過(guò)與其相應(yīng)的挑戰(zhàn)位調(diào)整,即當(dāng)挑戰(zhàn)位為’ O’時(shí),對(duì)經(jīng)過(guò)節(jié)點(diǎn)的信號(hào)施加長(zhǎng)度為d0的延時(shí),而當(dāng)挑戰(zhàn)位為’ I’時(shí),對(duì)經(jīng)過(guò)節(jié)點(diǎn)的信號(hào)施加長(zhǎng)度為dl的延時(shí),并且d0 Φ dl。這樣當(dāng)挑戰(zhàn)值變化時(shí),延時(shí)鏈的整體延時(shí)也隨之變化。在本發(fā)明中,采用兩條完全相同的延時(shí)鏈,分別為延時(shí)鏈Dl和延時(shí)鏈D2,這兩條延時(shí)鏈在物理上、邏輯上相互隔離,但其輸入的跳變信號(hào)(即上升沿)共同來(lái)自上升沿發(fā)生器,其輸入的挑戰(zhàn)信號(hào)共同來(lái)自于挑戰(zhàn)發(fā)生器,并且每一位挑戰(zhàn)值與延時(shí)節(jié)點(diǎn)的對(duì)應(yīng)順序也完全一致。該設(shè)計(jì)的目的是使得在相同挑戰(zhàn)作用下,上升沿信號(hào)經(jīng)過(guò)延時(shí)鏈Dl和延時(shí)鏈D2的延時(shí)相等,同時(shí)到達(dá)仲裁器。
[0022]仲裁器是對(duì)輸入的兩個(gè)上升沿信號(hào)的先后順序進(jìn)行判斷,本發(fā)明中采用兩個(gè)觸發(fā)器來(lái)實(shí)現(xiàn),來(lái)自延時(shí)鏈Dl和延時(shí)鏈D2的信號(hào)分別連接到2個(gè)觸發(fā)器Tf T2的時(shí)鐘信號(hào)和數(shù)據(jù)信號(hào),此外,兩個(gè)觸發(fā)器的輸出經(jīng)過(guò)異或操作后作為校驗(yàn)位輸出。該校驗(yàn)位作為響應(yīng)數(shù)據(jù)的組成部分,可作為對(duì)響應(yīng)序列進(jìn)行后處理的輔助數(shù)據(jù)。[0023]本發(fā)明的有益效果:使用相同結(jié)構(gòu)的兩條延時(shí)鏈,使延時(shí)鏈Dl和延時(shí)鏈D2在相同的挑戰(zhàn)值作用下,對(duì)輸入的上升沿信號(hào)施加相同量的延時(shí),使其輸出同時(shí)到達(dá)仲裁器的輸入端,兩條延時(shí)鏈相互獨(dú)立,無(wú)交叉節(jié)點(diǎn),若兩條延時(shí)鏈存在較大的固定延時(shí)差,可通過(guò)設(shè)置各延時(shí)節(jié)點(diǎn)的挑戰(zhàn)值使得延時(shí)差均衡。
【專利附圖】
【附圖說(shuō)明】
[0024]圖1是現(xiàn)有交叉延時(shí)鏈結(jié)構(gòu)的PUF的電路圖。
[0025]圖2是本發(fā)明的電路結(jié)構(gòu)示意圖。
[0026]圖3是本發(fā)明的延時(shí)鏈的結(jié)構(gòu)示意圖。
[0027]圖4是本發(fā)明的仲裁器的結(jié)構(gòu)示意圖。
[0028]圖5是本發(fā)明的延時(shí)節(jié)點(diǎn)的結(jié)構(gòu)示意圖。
【具體實(shí)施方式】
[0029]下面結(jié)合具體實(shí)施例來(lái)對(duì)本發(fā)明進(jìn)行進(jìn)一步說(shuō)明,但并不將本發(fā)明局限于這些【具體實(shí)施方式】。本領(lǐng)域技術(shù)人員應(yīng)該認(rèn)識(shí)到,本發(fā)明涵蓋了權(quán)利要求書(shū)范圍內(nèi)所可能包括的所有備選方案、改進(jìn)方案和等效方案。
[0030]參照?qǐng)D2,基于雙延時(shí)鏈的物理不可克隆函數(shù)電路結(jié)構(gòu),包括上升沿發(fā)生器、挑戰(zhàn)發(fā)生器、延時(shí)鏈D1、延時(shí)鏈D2和仲裁器,所述上升沿發(fā)生器的信號(hào)輸出端分別與延時(shí)鏈D1、延時(shí)鏈D2的信號(hào)輸入端連接,所述延時(shí)鏈D1、延時(shí)鏈D2的信號(hào)輸出端均與仲裁器的信號(hào)輸入端連接,所述延時(shí)鏈D1、延時(shí)鏈D2均由N個(gè)延時(shí)節(jié)點(diǎn)連接構(gòu)成,每個(gè)所述延時(shí)節(jié)點(diǎn)上均設(shè)有一調(diào)整輸入信號(hào)的延時(shí)時(shí)間的挑戰(zhàn)位,每個(gè)所述挑戰(zhàn)位均與產(chǎn)生隨機(jī)挑戰(zhàn)值給其的挑戰(zhàn)發(fā)生器連接,所述延時(shí)鏈Dl和延時(shí)鏈D2上對(duì)應(yīng)位的挑戰(zhàn)位上接收到的挑戰(zhàn)值是一致的。本發(fā)明延時(shí)鏈DI和延時(shí)鏈D2米用相同的電路結(jié)構(gòu),輸入相同的傳輸信號(hào)與挑戰(zhàn)值,但兩個(gè)延時(shí)鏈之間互相隔離,沒(méi)有任何交叉或互連。上升沿發(fā)生器發(fā)出的上升沿信號(hào)通過(guò)兩條延時(shí)鏈之后,輸入到仲裁器,仲裁器判斷兩個(gè)上升沿信號(hào)的先后順序,輸出I位響應(yīng)值。通過(guò)挑戰(zhàn)發(fā)生器生成偽隨機(jī)序列,多次提取響應(yīng)位,構(gòu)成響應(yīng)序列。
[0031]所述上升沿發(fā)生器是一初始值為’ O’的一位寄存器。寄存器的初始值為’ O’,向其寫(xiě)入一位’ I’后,輸出值從’ O’變?yōu)椤?1’,即產(chǎn)生一個(gè)上升沿。
[0032]所述挑戰(zhàn)發(fā)生器是一線性反饋移位寄存器。線性反饋移位寄存器當(dāng)設(shè)置好初始值后,可自動(dòng)輸出偽隨機(jī)序列作為每次上升沿傳輸?shù)奶魬?zhàn)值。
[0033]所述仲裁器包括兩個(gè)觸發(fā)器Tl?T2,觸發(fā)器Tl的時(shí)鐘信號(hào)輸入端和數(shù)據(jù)信號(hào)輸入端與延時(shí)鏈Dl的信號(hào)輸出端連接;觸發(fā)器T2的時(shí)鐘信號(hào)輸入端和數(shù)據(jù)信號(hào)輸入端與延時(shí)鏈D2的信號(hào)輸出端連接;兩個(gè)觸發(fā)器Tl?T2的信號(hào)輸出端均與異或門連接,所述異或門的輸出端是仲裁器的校驗(yàn)位輸出端,其中一個(gè)觸發(fā)器的信號(hào)輸出端是仲裁器的響應(yīng)位輸出端。
[0034]所述延時(shí)節(jié)點(diǎn)包括與輸入信號(hào)連接的上路徑和下路徑,所述上路徑由P個(gè)緩沖器與I個(gè)上開(kāi)關(guān)構(gòu)成,所述下路徑由Q個(gè)緩沖器與I個(gè)下開(kāi)關(guān)構(gòu)成,其中P、Q為正整數(shù)且P幸Q,所述上開(kāi)關(guān)的控制信號(hào)與挑戰(zhàn)位連接,所述下開(kāi)關(guān)的控制信號(hào)與取反后的挑戰(zhàn)位連接,所述上開(kāi)關(guān)和下開(kāi)關(guān)的輸出端分別與輸出信號(hào)的輸出或門的兩個(gè)輸入端連接。[0035]所述上開(kāi)關(guān)和下開(kāi)關(guān)是一與門。
[0036]本發(fā)明上升沿發(fā)生器用于發(fā)出一個(gè)從’ O’到’ I’的跳變信號(hào),這個(gè)跳變信號(hào)分為兩路,同時(shí)輸入到延時(shí)鏈Dl和延時(shí)鏈D2的輸入端,然后分別經(jīng)過(guò)延時(shí)鏈Dl和延時(shí)鏈D2進(jìn)行傳輸,經(jīng)過(guò)一定的延時(shí)后,兩路跳變信號(hào)分別從延時(shí)鏈Dl和延時(shí)鏈D2的輸出端輸出,并進(jìn)入仲裁器,仲裁器對(duì)這兩路跳變信號(hào)的先后順序進(jìn)行判斷,輸出響應(yīng)值。
[0037]挑戰(zhàn)發(fā)生器是在每次響應(yīng)提取前,生成隨機(jī)化的挑戰(zhàn)值,并輸入到兩個(gè)延時(shí)鏈的相應(yīng)延時(shí)節(jié)點(diǎn)上。因?yàn)槊看紊仙貍鬏?仲裁器判斷過(guò)程只能提取I位響應(yīng)值,所以應(yīng)用挑戰(zhàn)發(fā)生器的目的是自動(dòng)生成偽隨機(jī)序列,以便連續(xù)提取多個(gè)響應(yīng)位,構(gòu)成一定長(zhǎng)度的響應(yīng)序列。本發(fā)明中所述的“挑戰(zhàn)-響應(yīng)”對(duì)不是指一組挑戰(zhàn)與一個(gè)響應(yīng)位之間的配對(duì),而是指挑戰(zhàn)發(fā)生器的初始值與相應(yīng)的響應(yīng)序列之間的配對(duì)。
[0038]延時(shí)鏈?zhǔn)歉鶕?jù)挑戰(zhàn)發(fā)生器輸入挑戰(zhàn)位的挑戰(zhàn)值,對(duì)輸入上升沿信號(hào)施加一定的傳輸延時(shí),它包含有N個(gè)延時(shí)節(jié)點(diǎn),每個(gè)延時(shí)節(jié)點(diǎn)對(duì)輸入信號(hào)的延時(shí)可通過(guò)與其相應(yīng)的挑戰(zhàn)位調(diào)整,即當(dāng)挑戰(zhàn)位為’ O’時(shí),對(duì)經(jīng)過(guò)節(jié)點(diǎn)的信號(hào)施加長(zhǎng)度為d0的延時(shí),而當(dāng)挑戰(zhàn)位為’ I’時(shí),對(duì)經(jīng)過(guò)節(jié)點(diǎn)的信號(hào)施加長(zhǎng)度為dl的延時(shí),并且d0 Φ dl。這樣當(dāng)挑戰(zhàn)值變化時(shí),延時(shí)鏈的整體延時(shí)也隨之變化。在本發(fā)明中,采用兩條完全相同的延時(shí)鏈,分別為延時(shí)鏈Dl和延時(shí)鏈D2,這兩條延時(shí)鏈在物理上、邏輯上相互隔離,但其輸入的跳變信號(hào)(即上升沿)共同來(lái)自上升沿發(fā)生器,其輸入的挑戰(zhàn)信號(hào)共同來(lái)自于挑戰(zhàn)發(fā)生器,并且每一位挑戰(zhàn)值與延時(shí)節(jié)點(diǎn)的對(duì)應(yīng)順序也完全一致。該設(shè)計(jì)的目的是使得在相同挑戰(zhàn)作用下,上升沿信號(hào)經(jīng)過(guò)延時(shí)鏈Dl和延時(shí)鏈D2的延時(shí)相等,同時(shí)到達(dá)仲裁器。延時(shí)鏈的一種實(shí)施結(jié)構(gòu)如圖3所示,長(zhǎng)度為N的延時(shí)鏈包含N個(gè)延時(shí)節(jié)點(diǎn),并具有I個(gè)輸入信號(hào),一個(gè)輸出信號(hào),以及N個(gè)挑戰(zhàn)位。延時(shí)鏈的輸入連接到第一個(gè)延時(shí)節(jié)點(diǎn)的輸入端,最后一個(gè)延時(shí)節(jié)點(diǎn)的輸出作為延時(shí)鏈的輸出,其余延時(shí)節(jié)點(diǎn)的輸出信號(hào)作為下一級(jí)延時(shí)節(jié)點(diǎn)的輸入信號(hào)。N個(gè)挑戰(zhàn)位分別連接到N個(gè)延時(shí)節(jié)點(diǎn),延時(shí)節(jié)點(diǎn)通過(guò)挑戰(zhàn)位的取值對(duì)輸入信號(hào)施加不同的延時(shí),例如當(dāng)挑戰(zhàn)位為’ I’時(shí),對(duì)輸入信號(hào)施加延時(shí)dl后輸出,而當(dāng)挑戰(zhàn)位為’ O’時(shí),對(duì)輸入信號(hào)施加延時(shí)d0后輸出。延時(shí)節(jié)點(diǎn)可通過(guò)多種邏輯單元組合構(gòu)成,本發(fā)明中不限定其具體實(shí)現(xiàn)方式。由圖中可知,延時(shí)鏈只起到在挑戰(zhàn)值的作用下對(duì)輸入信號(hào)施加延時(shí)的作用。
[0039]圖5給出延時(shí)節(jié)點(diǎn)的一種具體實(shí)現(xiàn)方式,延時(shí)節(jié)點(diǎn)內(nèi)部通過(guò)緩沖器構(gòu)成兩條延時(shí)不同的路徑,其中上路徑由P個(gè)緩沖器與I個(gè)與門構(gòu)成,下路徑由Q個(gè)緩沖器與I個(gè)與門構(gòu)成(其中P、Q為正整數(shù)且P古Q)。挑戰(zhàn)位直接做為上路徑的開(kāi)關(guān)控制信號(hào),挑戰(zhàn)位取反后作為下路徑的開(kāi)關(guān)控制信號(hào)。當(dāng)挑戰(zhàn)位為’ O’時(shí),作為上開(kāi)關(guān)的與門輸出被固定為’ 0’,即上開(kāi)關(guān)被關(guān)閉,此時(shí)做為下開(kāi)關(guān)的與門輸出與輸入信號(hào)相同的邏輯值,即下開(kāi)關(guān)被開(kāi)啟。當(dāng)挑戰(zhàn)位為’I’時(shí),作為下開(kāi)關(guān)的與門輸出被固定為’0’,即下開(kāi)關(guān)被關(guān)閉,此時(shí)做為上開(kāi)關(guān)的與門輸出與輸入信號(hào)相同的邏輯值,即上開(kāi)關(guān)被開(kāi)啟。這樣當(dāng)挑戰(zhàn)位取值不同時(shí),上開(kāi)關(guān)與下開(kāi)關(guān)只有一個(gè)開(kāi)啟,并通過(guò)一個(gè)或門輸出,由于上、下兩條路徑包含的緩沖器個(gè)數(shù)不同,其對(duì)輸入信號(hào)的延時(shí)也不同,即起到根據(jù)挑戰(zhàn)位的取值對(duì)輸入信號(hào)施加不同延時(shí)的目的。仲裁器是對(duì)輸入的兩個(gè)上升沿信號(hào)的先后順序進(jìn)行判斷,本發(fā)明中采用兩個(gè)觸發(fā)器來(lái)實(shí)現(xiàn),來(lái)自延時(shí)鏈Dl和延時(shí)鏈D2的信號(hào)分別連接到2個(gè)觸發(fā)器的時(shí)鐘信號(hào)和數(shù)據(jù)信號(hào),此外,兩個(gè)觸發(fā)器的輸出經(jīng)過(guò)異或操作后作為校驗(yàn)位輸出。該校驗(yàn)位作為響應(yīng)數(shù)據(jù)的組成部分,可作為對(duì)響應(yīng)序列進(jìn)行后處理的輔助數(shù)據(jù)。仲裁器的一種實(shí)施結(jié)構(gòu)如圖4所示,仲裁器具有2個(gè)輸入信號(hào),分別來(lái)自于2條延時(shí)鏈的輸出,仲裁器內(nèi)部包含2個(gè)觸發(fā)器、I個(gè)異或門。輸入
1、輸入2分別對(duì)應(yīng)延時(shí)鏈D1、延時(shí)鏈D2的輸出信號(hào)。輸入I作為觸發(fā)器I的時(shí)鐘信號(hào)和觸發(fā)器2的數(shù)據(jù)信號(hào),輸入2作為觸發(fā)器2的時(shí)鐘信號(hào)和觸發(fā)器I的數(shù)據(jù)信號(hào)。上升沿發(fā)生器發(fā)出的上升沿信號(hào)經(jīng)過(guò)2個(gè)延時(shí)鏈傳輸?shù)街俨闷鞯妮斎攵藭r(shí),會(huì)存在先后順序,從而仲裁器內(nèi)部的2個(gè)觸發(fā)器將會(huì)根據(jù)其順序輸出’ I’或’O’。觸發(fā)器I的輸出作為響應(yīng)位輸出,同時(shí)將兩個(gè)觸發(fā)器輸出值做異或操作后作為校驗(yàn)位輸出,該校驗(yàn)位作為響應(yīng)數(shù)據(jù)的組成部分,可作為對(duì)響應(yīng)序列進(jìn)行后處理的輔助數(shù)據(jù)。
[0040]在設(shè)計(jì)原則上,本發(fā)明的目的是使延時(shí)鏈Dl和延時(shí)鏈D2在相同的挑戰(zhàn)值作用下,對(duì)輸入的上升沿信號(hào)施加相同量的延時(shí),使其輸出同時(shí)到達(dá)仲裁器的輸入端。但由于芯片制造過(guò)程中存在不可預(yù)測(cè)、不可控制的工藝偏差,導(dǎo)致依照以上設(shè)計(jì)方案生產(chǎn)出的芯片,實(shí)際上不可出現(xiàn)兩條延時(shí)鏈的延時(shí)完全相同的情況,即延時(shí)鏈Dl與延時(shí)鏈D2對(duì)上升沿信號(hào)的延時(shí)總會(huì)存在一些差異,導(dǎo)致其到達(dá)仲裁器的輸入端時(shí)存在先后順序。每條延時(shí)鏈的整體延時(shí)量分布在N個(gè)延時(shí)節(jié)點(diǎn)上,當(dāng)挑戰(zhàn)位相同時(shí),延時(shí)鏈Dl中第k個(gè)節(jié)點(diǎn)(0〈k〈=N)與延時(shí)鏈D2中第k個(gè)節(jié)點(diǎn)的延時(shí)也會(huì)有微小差異,而且挑戰(zhàn)位為’ O’或?yàn)椤?I’時(shí),其延時(shí)差異也不同。這樣每次對(duì)延時(shí)鏈?zhǔn)┘与S機(jī)性的挑戰(zhàn)值,每個(gè)延時(shí)鏈的整體延時(shí)也表現(xiàn)出一定的隨機(jī)性,也就是說(shuō),每顆芯片上DCPUF的“挑戰(zhàn)-響應(yīng)”對(duì),是不可預(yù)測(cè)、不可復(fù)制的。在理想情況下,某一個(gè)挑戰(zhàn)值在某一顆芯片上會(huì)產(chǎn)生每次相同的響應(yīng)值,而同樣的挑戰(zhàn)值在不同芯片上會(huì)產(chǎn)生不同的響應(yīng)值,而這些“挑戰(zhàn)-響應(yīng)”對(duì)都是不可預(yù)測(cè)的,從而保證“挑戰(zhàn)-響應(yīng)”可作為芯片的唯一身份標(biāo)識(shí)。
【權(quán)利要求】
1.基于雙延時(shí)鏈的物理不可克隆函數(shù)電路結(jié)構(gòu),其特征在于:包括上升沿發(fā)生器、挑戰(zhàn)發(fā)生器、延時(shí)鏈D1、延時(shí)鏈D2和仲裁器,所述上升沿發(fā)生器的信號(hào)輸出端分別與延時(shí)鏈D1、延時(shí)鏈D2的信號(hào)輸入端連接,所述延時(shí)鏈D1、延時(shí)鏈D2的信號(hào)輸出端均與仲裁器的信號(hào)輸入端連接,所述延時(shí)鏈D1、延時(shí)鏈D2均由N個(gè)延時(shí)節(jié)點(diǎn)連接構(gòu)成,每個(gè)所述延時(shí)節(jié)點(diǎn)上均設(shè)有一調(diào)整輸入信號(hào)的延時(shí)時(shí)間的挑戰(zhàn)位,每個(gè)所述挑戰(zhàn)位均與產(chǎn)生隨機(jī)挑戰(zhàn)值給其的挑戰(zhàn)發(fā)生器連接,所述延時(shí)鏈Dl和延時(shí)鏈D2上對(duì)應(yīng)位的挑戰(zhàn)位上接收到的挑戰(zhàn)值是一致的。
2.根據(jù)權(quán)利要求1所述的基于雙延時(shí)鏈的物理不可克隆函數(shù)電路結(jié)構(gòu),其特征在于:所述上升沿發(fā)生器是一初始值為’ O’的一位寄存器。
3.根據(jù)權(quán)利要求1或2所述的基于雙延時(shí)鏈的物理不可克隆函數(shù)電路結(jié)構(gòu),其特征在于:所述挑戰(zhàn)發(fā)生器是一線性反饋移位寄存器。
4.根據(jù)權(quán)利要求3所述的基于雙延時(shí)鏈的物理不可克隆函數(shù)電路結(jié)構(gòu),其特征在于:所述仲裁器包括兩個(gè)觸發(fā)器Τ1~Τ2,觸發(fā)器Tl的時(shí)鐘信號(hào)輸入端和數(shù)據(jù)信號(hào)輸入端與延時(shí)鏈Dl的信號(hào)輸出端連接;觸發(fā)器T2的時(shí)鐘信號(hào)輸入端和數(shù)據(jù)信號(hào)輸入端與延時(shí)鏈D2的信號(hào)輸出端連接;兩個(gè)觸發(fā)器TfT2的信號(hào)輸出端均與異或門的輸入端連接,所述異或門的輸出端是仲裁器的校驗(yàn)位輸出端,其中一個(gè)觸發(fā)器的信號(hào)輸出端是仲裁器的響應(yīng)位輸出端。
5.根據(jù)權(quán)利要求4所述的基于雙延時(shí)鏈的物理不可克隆函數(shù)電路結(jié)構(gòu),其特征在于:所述延時(shí)節(jié)點(diǎn)包括與輸入信號(hào)連接的上路徑和下路徑,所述上路徑由P個(gè)緩沖器與I個(gè)上開(kāi)關(guān)構(gòu)成,所述下路徑 由Q個(gè)緩沖器與I個(gè)下開(kāi)關(guān)構(gòu)成,其中P、Q為正整數(shù)且P古Q,所述上開(kāi)關(guān)的控制信號(hào)與挑戰(zhàn)位連接,所述下開(kāi)關(guān)的控制信號(hào)與取反后的挑戰(zhàn)位連接,所述上開(kāi)關(guān)和下開(kāi)關(guān)的輸出端分別與輸出信號(hào)的輸出或門的兩個(gè)輸入端連接。
6.根據(jù)權(quán)利要求5所述的基于雙延時(shí)鏈的物理不可克隆函數(shù)電路結(jié)構(gòu),其特征在于:所述上開(kāi)關(guān)和下開(kāi)關(guān)是一與門。
【文檔編號(hào)】G06F21/72GK103902929SQ201410084354
【公開(kāi)日】2014年7月2日 申請(qǐng)日期:2014年3月10日 優(yōu)先權(quán)日:2014年3月10日
【發(fā)明者】吳斌 申請(qǐng)人:杭州晟元芯片技術(shù)有限公司