宋斌威,王耀
面向FPGA知識(shí)產(chǎn)權(quán)保護(hù)的低開銷按次付費(fèi)授權(quán)方案
宋斌威,王耀*
(鄭州大學(xué) 電氣與信息工程學(xué)院,鄭州 450001)( ? 通信作者電子郵箱 ieyaowang@zzu.edu.cn)
知識(shí)產(chǎn)權(quán)(IP)核按使用次數(shù)授權(quán)付費(fèi)可以使系統(tǒng)設(shè)計(jì)者根據(jù)實(shí)際情況以較低的價(jià)格購買IP,已成為一種主要的IP授權(quán)方式。針對(duì)IP核按次付費(fèi)的應(yīng)用需求,提出一種應(yīng)用于現(xiàn)場(chǎng)可編程門陣列(FPGA) IP的基于可重構(gòu)有限狀態(tài)機(jī)(RFSM)和物理不可克隆函數(shù)(PUF)的新型按次付費(fèi)IP授權(quán)方案RFSM-PUF。針對(duì)在實(shí)際應(yīng)用中不同廠家的IP保護(hù)方案協(xié)議無法通用的問題,提出一種適配所提方案的IP保護(hù)認(rèn)證協(xié)議確保IP認(rèn)證的保密性與靈活性。首先,在IP的原始有限狀態(tài)機(jī)(OFSM)中嵌入一個(gè)RFSM,使得只有IP核設(shè)計(jì)者能夠正確解鎖IP;其次,將激勵(lì)輸入PUF電路中產(chǎn)生響應(yīng);最后,將license和PUF響應(yīng)組成的密鑰共同輸入RFSM中來解鎖IP。安全性分析結(jié)果表明,所提方案滿足各項(xiàng)安全指標(biāo)。在LGSyth91基準(zhǔn)電路上的測(cè)試實(shí)驗(yàn)結(jié)果表明,在滿足各項(xiàng)安全條件的前提下,所提方案在每個(gè)IP核中相較于基于PUF的按次付費(fèi)授權(quán)方案平均查找表(LUT)數(shù)減少了1 377,顯著降低了硬件開銷。
現(xiàn)場(chǎng)可編程門陣列;知識(shí)產(chǎn)權(quán);可重構(gòu)有限狀態(tài)機(jī);物理不可克隆函數(shù);LGSyth91基準(zhǔn)
現(xiàn)場(chǎng)可編程門陣列(Field Programmable Gate Array, FPGA)依據(jù)自身的可重構(gòu)性、設(shè)計(jì)周期短、低成本等優(yōu)點(diǎn)逐漸成為數(shù)字系統(tǒng)設(shè)計(jì)的主流平臺(tái),在控制、通信、醫(yī)療等方面的作用顯著。可復(fù)用知識(shí)產(chǎn)權(quán)(Intellectual Property, IP)模塊的出現(xiàn)顯著縮短了產(chǎn)品的設(shè)計(jì)周期,降低了設(shè)計(jì)成本[1]。IP核的使用頻率也隨著FPGA系統(tǒng)設(shè)計(jì)規(guī)模的增加而上升,但是目前的IP核的保護(hù)授權(quán)方案仍不夠完善,無法精準(zhǔn)控制IP核的授權(quán)使用[2],用戶在使用IP核時(shí)通常需要用戶支付大量的使用費(fèi)。一些不法分子為了在不支付使用費(fèi)的情況下使用IP核,采取非法手段,如克隆攻擊、反向工程、過度制造、機(jī)器學(xué)習(xí)等[3],破解IP核。IP核的破解與濫用侵犯了IP設(shè)計(jì)者的合法權(quán)益,甚至給數(shù)字系統(tǒng)帶來較大的安全隱患。因此,設(shè)計(jì)一個(gè)更加靈活安全的IP保護(hù)方案是亟待解決的問題。
國內(nèi)外研究人員在IP核保護(hù)方面提出了多種保護(hù)技術(shù)[4-11]。根據(jù)保護(hù)的機(jī)制,這些保護(hù)技術(shù)可以分為主動(dòng)保護(hù)和被動(dòng)保護(hù)。主動(dòng)保護(hù)是主動(dòng)限制IP核的使用,在用戶使用IP核之前通過讓用戶輸入正確密鑰的方式達(dá)到保護(hù)IP核的目的。主動(dòng)保護(hù)主要是通過在IP核中加入加密算法或者計(jì)量模塊實(shí)現(xiàn)[12],是目前比較受歡迎的保護(hù)形式。被動(dòng)保護(hù)原理是IP設(shè)計(jì)者通過檢測(cè)可疑用戶使用的IP核中是否存在數(shù)字水印,從而判斷該IP核是否正常授權(quán)[13]。被動(dòng)保護(hù)最明顯的劣勢(shì)是它的保護(hù)只能通過人為檢測(cè)可疑IP的方式進(jìn)行,保護(hù)即時(shí)性差,效率低。雖然兩種方式的保護(hù)方案都能達(dá)到保護(hù)IP的目的,但是并不完善,存在以下3個(gè)方面的缺點(diǎn):
1)目前基于加密算法的FPGA IP保護(hù)方案依賴于永久密鑰存儲(chǔ)和管理,引入了安全漏洞(如物理攻擊[14])和大量的資源開銷。
2)基于物理不可克隆函數(shù)(Physical Unclonable Function, PUF)的按設(shè)備付費(fèi)的IP授權(quán)方案可以解決密鑰存儲(chǔ)帶來的安全漏洞,但是按設(shè)備付費(fèi)方案不能滿足所有用戶的需求,尤其是無法負(fù)擔(dān)永久許可費(fèi)的用戶。
3)現(xiàn)有的按次付費(fèi)的IP許可方案雖然更靈活,但是需要將PUF和可靠性增強(qiáng)模塊嵌入每個(gè)IP核,無法在安全性和開銷之間取得平衡。
針對(duì)以上不足,本文提出一種基于可重構(gòu)有限狀態(tài)機(jī)(Reconfigurable Finite State Machine, RFSM)[4]和PUF的低開銷的按次付費(fèi)的IP核保護(hù)方案RFSM-PUF,使用PUF為FPGA設(shè)備上的IP核提供部分密鑰序列,并將RFSM嵌入原始IP核中作為IP核的鎖,狀態(tài)機(jī)的正確路徑由PUF響應(yīng)和IP設(shè)計(jì)者密鑰兩部分決定。當(dāng)輸入的密鑰與RFSM的預(yù)定路徑輸入不一致時(shí),用戶不能通過RFSM成功進(jìn)入IP核的原始有限狀態(tài)機(jī)(Original Finite State Machine, OFSM)中,只有用戶輸入正確的license時(shí),狀態(tài)機(jī)才能正常運(yùn)行并解鎖IP,實(shí)現(xiàn)IP核的功能,同時(shí)RFSM中的狀態(tài)序列在下次使用之前實(shí)現(xiàn)重組形成一個(gè)新的鎖。
本文的主要工作如下:
1)設(shè)計(jì)一種低開銷的按次付費(fèi)的IP核保護(hù)方案,使用PUF鎖定特定的FPGA設(shè)備,并使用RFSM取代嵌入IP中的PUF模塊實(shí)現(xiàn)按次付費(fèi)功能。
2)調(diào)整傳統(tǒng)的三方交互協(xié)議,使之與所提授權(quán)方案契合,保證IP在三方交互過程中的安全性與靈活性。
3)在LGSyth91基準(zhǔn)電路上進(jìn)行開銷與時(shí)序測(cè)試,與現(xiàn)有的按次付費(fèi)方案對(duì)比分析,實(shí)驗(yàn)結(jié)果驗(yàn)證了所提方案具有更低的資源開銷。
針對(duì)IP核濫用的問題,目前用于IP核檢測(cè)的安全方案大多采用被動(dòng)檢測(cè)技術(shù),不能快速、有效地保護(hù)IP核。Torunoglu等[5]提出了一種基于序列函數(shù)作用于有限輸入輸出集的水印方案和一種水印檢測(cè)算法,數(shù)字水印作為輸入輸出序列隱藏在IP核中。當(dāng)IP設(shè)計(jì)者懷疑自己的IP核在未經(jīng)許可的情況下被濫用,可通過檢查IP核中嵌入的數(shù)字水印維護(hù)自己的權(quán)益,但是這種靜態(tài)數(shù)字水印方案無法有效抵抗攻擊者的攻擊。Cui等[13]提出了一種動(dòng)態(tài)數(shù)字水印方案,通過修改IP核中的有限狀態(tài)機(jī)(Finite State Machine, FSM),將水印嵌入IP核的輸出部分,提高了數(shù)字水印方案的安全性;但是攻擊者可能嘗試追蹤并刪除水印,導(dǎo)致這種方法非常耗時(shí)。當(dāng)前數(shù)字水印方案的弊端是它們只能在IP核被非法使用之后保護(hù),在即時(shí)性方面仍沒有實(shí)質(zhì)性改進(jìn)。因此,水印技術(shù)不能有效地保護(hù)IP核的非法使用。
主動(dòng)保護(hù)技術(shù)可以在用戶非法使用IP核之前控制IP的使用,從而達(dá)到更快保護(hù)IP核的目的。然而,主動(dòng)檢測(cè)技術(shù)本身也存在各種安全隱患。Maes等[15]提出一種基于有源計(jì)量的授權(quán)方案,通過在IP核中加入一個(gè)計(jì)量模塊,解鎖時(shí)需要計(jì)量密鑰解鎖IP,從而實(shí)現(xiàn)IP核的追蹤與控制[12]。系統(tǒng)設(shè)計(jì)者在使用IP核之前,需要將計(jì)量模塊和計(jì)量密鑰配置到FPGA設(shè)備上的可配置邏輯塊(Reconfigurable Logic Block, CLB);其次解密模塊解密計(jì)量密鑰,并生成最終的IP密鑰;最后,解密模塊使用解出的IP密鑰對(duì)IP核設(shè)計(jì)解密,配置器將它配置到FPGA的CLB中,密鑰、計(jì)量模塊比特流和IP核比特流一起存儲(chǔ)在片外非易失性存儲(chǔ)器(Non-Volatile Memory, NVM)中。由于存儲(chǔ)在NVM中的license是不變的,所以該方案容易被側(cè)信道攻擊破解,而且容易遭受克隆攻擊[16]。
Kumar等[17]以蝶形PUF為例提出PUF可以應(yīng)用于IP保護(hù),為IP保護(hù)提供了一種新思路,然而用于IP保護(hù)的PUF響應(yīng)在可靠性方面有嚴(yán)格的要求。近年來,隨著PUF電路的不斷優(yōu)化,它的可靠性和穩(wěn)定性也越來越高,但是仍然無法達(dá)到直接應(yīng)用于IP中的標(biāo)準(zhǔn)。潘畬穌等[18]指出PUF響應(yīng)的不穩(wěn)定性導(dǎo)致它無法直接應(yīng)用于IP保護(hù)或密鑰生成。模糊提取器的出現(xiàn)使PUF的可靠性可以提高至99.9%以上[19],緩解了PUF在IP保護(hù)方面的可靠性欠缺問題;但是使用模糊提取器在增強(qiáng)PUF響應(yīng)的同時(shí),也會(huì)帶來巨大的資源開銷。
Zhang等[20]提出一種應(yīng)用于FPGA IP的PUF-FSM綁定方案,這是一種將片上PUF和FSM保護(hù)結(jié)合起來的按設(shè)備付費(fèi)授權(quán)方案。系統(tǒng)設(shè)計(jì)者將存儲(chǔ)在NVM中的激勵(lì)輸入片上PUF中以產(chǎn)生唯一的PUF響應(yīng),響應(yīng)經(jīng)過可靠性增強(qiáng)模塊處理之后被當(dāng)作license的一部分輸入FSM中,最后由FPGA配置器完成IP核的解鎖和配置。該方案存在一定的局限性,如果系統(tǒng)設(shè)計(jì)者只使用一次IP核設(shè)計(jì)系統(tǒng),但卻需要花費(fèi)大筆費(fèi)用購買片上所有IP核的永久license。因此,這種按設(shè)備付費(fèi)方案局限于永久使用IP的大型設(shè)計(jì),不能滿足小型設(shè)計(jì)用戶的需求。
Sun等[21]提出了一種新的按次付費(fèi)方案,將一個(gè)PUF嵌入IP核內(nèi)部作為安全模塊。IP設(shè)計(jì)者通過從FSM中抽取PUF的響應(yīng)計(jì)算license。IP核在綜合時(shí),它內(nèi)部PUF的位置會(huì)隨機(jī)改變,導(dǎo)致PUF的激勵(lì)?響應(yīng)對(duì)(Challenge Response Pair, CRP)發(fā)生不可預(yù)測(cè)的變化,最終使原本的license失效。只有當(dāng)IP設(shè)計(jì)者根據(jù)PUF響應(yīng)重新計(jì)算license并發(fā)送給系統(tǒng)設(shè)計(jì)人員之后,IP核才能正常使用。相較于按設(shè)備付費(fèi)方案,該方案雖然在靈活性方面更優(yōu)越,但是IP核的正常工作取決于PUF響應(yīng)是否可靠,為了獲得高可靠性的響應(yīng),每個(gè)嵌入IP中的PUF塊都需要一個(gè)模糊提取器優(yōu)化響應(yīng)[19,22]。從Sun等[21]的實(shí)驗(yàn)結(jié)果與最近的模糊提取器資源報(bào)告可以明顯看出,該方案沒有考慮模糊提取器。因此,該方案在可實(shí)現(xiàn)性以及開銷方面存在較大的弊端。
綜上所述,現(xiàn)有的IP授權(quán)方案在可實(shí)現(xiàn)性和資源開銷方面面臨巨大的挑戰(zhàn),為了解決這一問題,本文結(jié)合RFSM和PUF提出一種低開銷RFSM-PUF按次付費(fèi)授權(quán)方案。
首先,使用PUF生成的響應(yīng)作為FPGA的唯一序列號(hào),用于完成設(shè)備認(rèn)證;其次,在每個(gè)IP模塊中引入一個(gè)RFSM,作為實(shí)現(xiàn)按次付費(fèi)的功能模塊,只有IP設(shè)計(jì)者授權(quán)的FPGA設(shè)備才能保護(hù)IP;最后,用戶獲得正確的PUF響應(yīng)并將它與license共同輸入RFSM時(shí),RFSM控制鎖定和解鎖的正確跳轉(zhuǎn)路徑,IP核執(zhí)行與原始IP相同的功能。RFSM的狀態(tài)序列在IP運(yùn)行之后會(huì)重新編碼形成一個(gè)新的保護(hù)電路。RFSM-PUF授權(quán)方案從以下兩個(gè)方面保護(hù)IP:
1)如果片上PUF不能輸出正確的響應(yīng),那么IP設(shè)計(jì)者無法計(jì)算license并輸入RFSM中,用戶最終不能使用該設(shè)備上的任何IP。
2)解鎖并綜合IP核后,由于RFSM模塊的狀態(tài)比特流的更新會(huì)導(dǎo)致license失效,從而控制IP核的使用次數(shù)。
基于RFSM-PUF授權(quán)協(xié)議由FPGA廠商、IP設(shè)計(jì)者和系統(tǒng)設(shè)計(jì)者這3個(gè)獨(dú)立對(duì)象交互,具體交互流程如圖1所示。
圖1 IP保護(hù)協(xié)議流程
1)FPGA廠商。每個(gè)生產(chǎn)出來的FPGA都會(huì)攜帶一個(gè)唯一的設(shè)備序列號(hào)。FPGA廠商在FPGA設(shè)備上測(cè)試片上PUF電路,并將生成的CRPs存儲(chǔ)在數(shù)據(jù)庫中。PUF的激勵(lì)是公開的,而PUF響應(yīng)是保密且不可預(yù)測(cè)的,僅有FPGA供應(yīng)商知道真實(shí)的響應(yīng)。FPGA供應(yīng)商使用設(shè)備序列號(hào)出售FPGA設(shè)備,當(dāng)IP設(shè)計(jì)者需要根據(jù)CRPs計(jì)算對(duì)應(yīng)FPGA上IP核的license時(shí),F(xiàn)PGA供應(yīng)商從數(shù)據(jù)庫中找出對(duì)應(yīng)設(shè)備的CRPs并發(fā)送給IP設(shè)計(jì)者。
2)IP設(shè)計(jì)者。IP設(shè)計(jì)者根據(jù)設(shè)計(jì)需要設(shè)計(jì)具有特定功能的IP核模塊,并將具有鎖定功能的RFSM嵌入IP核中。每個(gè)設(shè)計(jì)完成的IP核都會(huì)生成一個(gè)的IP序列號(hào),當(dāng)系統(tǒng)設(shè)計(jì)者需要某一IP時(shí),將IP核的序列號(hào)提供給IP設(shè)計(jì)者。IP設(shè)計(jì)者根據(jù)IP核序列號(hào)找到相應(yīng)的IP核,同時(shí)將鎖定的IP核位流發(fā)給系統(tǒng)設(shè)計(jì)人員。若需要解鎖IP核,則需要將FPGA序列號(hào)發(fā)送到IP設(shè)計(jì)者,IP設(shè)計(jì)者根據(jù)FPGA序列號(hào)向FPGA廠商索要CRPs。IP設(shè)計(jì)者根據(jù)RFSM的正確跳轉(zhuǎn)路徑和CRPs計(jì)算出license,并發(fā)送給系統(tǒng)設(shè)計(jì)者。
3)系統(tǒng)設(shè)計(jì)者。首先,系統(tǒng)設(shè)計(jì)者使用FPGA設(shè)計(jì)數(shù)字系統(tǒng)前,需要根據(jù)FPGA序列號(hào)向FPGA供應(yīng)商購買設(shè)備。其次,系統(tǒng)設(shè)計(jì)者若想使用IP核進(jìn)行電路設(shè)計(jì),需要根據(jù)IP序列號(hào)向IP設(shè)計(jì)者購買IP。未解鎖的IP核需要系統(tǒng)設(shè)計(jì)者向IP設(shè)計(jì)者提供特定的IP和FPGA的序列號(hào)并購買該IP核的license實(shí)現(xiàn)正常功能。再次,IP核設(shè)計(jì)者根據(jù)FPGA供應(yīng)商提供的CRPs以及RFSM結(jié)構(gòu)計(jì)算出license,并將它出售給系統(tǒng)設(shè)計(jì)者。最后,系統(tǒng)設(shè)計(jì)者在購買的設(shè)備上使用IP核進(jìn)行系統(tǒng)設(shè)計(jì)。注意,license只能供系統(tǒng)設(shè)計(jì)者使用一次。當(dāng)系統(tǒng)設(shè)計(jì)者需要再次使用該IP核時(shí),需要再次向IP設(shè)計(jì)者購買license,而IP設(shè)計(jì)者只需要根據(jù)RFSM結(jié)構(gòu)重新計(jì)算license完成更新。
保護(hù)機(jī)制的原理是PUF響應(yīng)與IP設(shè)計(jì)者提供的license共同組成解鎖IP核的密鑰。其中,PUF響應(yīng)由弱PUF提供,以授權(quán)FPGA設(shè)備,PUF響應(yīng)與IP設(shè)計(jì)者提供的license必須共同作用才能保證IP核的正確解鎖。在每個(gè)IP核內(nèi)部嵌入一個(gè)RFSM,以實(shí)現(xiàn)按次付費(fèi)功能。RFSM包括一個(gè)狀態(tài)寄存器、一個(gè)轉(zhuǎn)換寄存器和一個(gè)重配置器[23]。狀態(tài)寄存器負(fù)責(zé)存儲(chǔ)RFSM的狀態(tài)信息,轉(zhuǎn)換寄存器存儲(chǔ)狀態(tài)路徑轉(zhuǎn)換的信息,重配置器負(fù)責(zé)更新RFSM的狀態(tài)比特流,狀態(tài)和轉(zhuǎn)換寄存器的更新由重配置器控制。首次在FPGA上綜合IP時(shí),系統(tǒng)設(shè)計(jì)者只有在RFSM中導(dǎo)入正確的密鑰,RFSM根據(jù)密鑰的指示通過正確的轉(zhuǎn)換路徑跳轉(zhuǎn)到原始IP中,進(jìn)而使IP從正確的復(fù)位狀態(tài)運(yùn)行,否則IP核不能正常使用。RFSM能否正確進(jìn)入原始IP中是由PUF響應(yīng)和license共同決定,因此輸入RFSM中的PUF響應(yīng)必須是完全可靠的,才能保證IP核的正常解鎖。RFSM-PUF保護(hù)機(jī)制如圖2所示。
圖2 RFSM-PUF保護(hù)機(jī)制
目前,通過附加技術(shù)提高PUF響應(yīng)可靠性需要依靠模糊提取器完成。因此,從IP核的安全性出發(fā),RFSM-PUF考慮了模糊提取器的影響。為了混淆RFSM與原始IP核之間的轉(zhuǎn)換路徑,本文從RFSM中隨機(jī)挑選4個(gè)狀態(tài),并在將它在原有轉(zhuǎn)換的基礎(chǔ)上與原始IP核內(nèi)部狀態(tài)連接,這些混淆轉(zhuǎn)換不影響原始IP核的任何性能。IP核綜合之后,RFSM的狀態(tài)寄存器被重配置器更新,從而使RFSM狀態(tài)跳轉(zhuǎn)信息發(fā)生改變(如圖3所示),并在下次綜合之前配置到FPGA中。
圖4為RFSM與IP核綁定示意圖。本文以=6、=2、=1、(,S,S+1,)為例,其中、、、分別表示為狀態(tài)、轉(zhuǎn)換、輸入和輸出。狀態(tài)機(jī)的初始狀態(tài)為0,下一個(gè)狀態(tài)是1;整個(gè)轉(zhuǎn)換表示為(01,0,1,1)。RFSM與原始IP之間的混淆路徑如圖4中的2RFSM→1OFSM、3RFSM→2OFSM和4RFSM→3OFSM,這些路徑的實(shí)現(xiàn)方式與其他轉(zhuǎn)換路徑?jīng)]有區(qū)別,這些轉(zhuǎn)換作為RFSM眾多轉(zhuǎn)換之一,帶來的開銷可以忽略不計(jì),具體開銷詳見第4章。在整個(gè)安全電路中,只有一條正確路徑能夠使RFSM成功進(jìn)入原始IP的正確復(fù)位狀態(tài),如圖4中0RFSM→1RFSM→2RFSM→3RFSM→4RFSM→5RFSM→0OFSM。因此,IP核被售出后處于待激活狀態(tài)。
圖4 RFSM與IP中的OFSM連接
給出RFSM2狀態(tài)的轉(zhuǎn)換在dk16基準(zhǔn)電路上的具體實(shí)現(xiàn)。當(dāng)RFSM的狀態(tài)為2=s10000000時(shí),通過判斷該狀態(tài)下的輸入序列in,確定下一個(gè)狀態(tài)和當(dāng)前輸出:
1) s10000000:casex(in)
2) 2'b00:beginnextstate=s10000000;out=3'b001;end
3) 2'b01:beginnextstate=s00010000;out=3'b010;end
4) 2'b10:beginnextstate=s01000000;out=3'b001;end
5) 2'b11:beginnextstate=s00001000;out=3'b010;end
6) endcase
解鎖時(shí),IP設(shè)計(jì)者向FPGA生產(chǎn)商索要FPGA上相應(yīng)PUF的相應(yīng),接著IP設(shè)計(jì)者根據(jù)PUF響應(yīng)與IP核中的RFSM結(jié)構(gòu)計(jì)算license。系統(tǒng)設(shè)計(jì)者將購買的IP核的license輸入RFSM中解鎖IP核,并可以在該FPGA器件上運(yùn)行一次,隨后RFSM的轉(zhuǎn)換和狀態(tài)編碼被重配置器修改并存儲(chǔ)到NVM中,因此IP核綜合之后會(huì)生成一個(gè)新的RFSM,重新鎖定IP核。系統(tǒng)設(shè)計(jì)者如果想要再次綜合IP核,先前的密鑰將不能解鎖更新之后的IP核,需要向IP設(shè)計(jì)者重新購買新的license。此時(shí)新的license由IP設(shè)計(jì)者根據(jù)RFSM結(jié)構(gòu)重新計(jì)算得到。密鑰的具體組成和密鑰如何控制RFSM解鎖的過程詳見2.4節(jié)。
基于RFSM跳轉(zhuǎn)路徑和片上PUF響應(yīng),IP設(shè)計(jì)者設(shè)計(jì)相應(yīng)的license。輸入RFSM中的密鑰包括PUF響應(yīng)和IP設(shè)計(jì)者計(jì)算的license。密鑰通過解鎖更新前的RFSM的正確跳轉(zhuǎn)路徑,進(jìn)入原始IP核。IP核運(yùn)行后,RFSM結(jié)構(gòu)發(fā)生改變,若需要再次使用,需要IP設(shè)計(jì)者根據(jù)RFSM更新機(jī)制重新計(jì)算license。
整個(gè)RFSM轉(zhuǎn)換中的完整密鑰記為,由RFSM所有的子密鑰組成。引導(dǎo)一條RFSM的正確跳轉(zhuǎn)路徑,表示為:
RFSM與原始IP核中的狀態(tài)機(jī)具有相同的輸入位寬,RFSM需運(yùn)行步才能進(jìn)入到原始IP中。和決定了的長(zhǎng)度,且可根據(jù)實(shí)際應(yīng)用情況自由調(diào)節(jié)。因此,的總長(zhǎng)度為:
其中:表示RFSM路徑中第次跳轉(zhuǎn);key表示第步的子密鑰;和分別表示PUF響應(yīng)和license。
同理,完整密鑰中需要的IP設(shè)計(jì)者需要計(jì)算的license總長(zhǎng)度為:
針對(duì)RFSM-PUF授權(quán)方案可能存在的安全性問題,分析以下潛在的威脅:
1)暴力攻擊。嘗試暴力攻擊的攻擊者們會(huì)使用遍歷方式猜測(cè)密鑰中所有的組合情況,直到找出正確的密鑰。但是密鑰的組合數(shù)與它的長(zhǎng)度呈指數(shù)級(jí)遞增關(guān)系,即長(zhǎng)度為的密鑰序列的組合數(shù)是2,因此暴力攻擊幾乎是不可能實(shí)現(xiàn)的。
2)FSM反向工程。攻擊者通過使用FSM反向工程技術(shù)從IP比特流中獲取FSM的狀態(tài)轉(zhuǎn)換圖[24]。RFSM的狀態(tài)轉(zhuǎn)換和更新與IP中的OFSM存在交織。攻擊者不清楚完整的配置與更新原理,最多從單個(gè)狀態(tài)的轉(zhuǎn)換中解釋模糊邏輯,因此不能直接從相互交織的部分中分離出原始IP;同時(shí),RFSM的轉(zhuǎn)換由PUF響應(yīng)與IP設(shè)計(jì)者控制,保證了RFSM的安全性。
3)PUF建模攻擊。攻擊者通過收集整理PUF的CRPs,并使用專業(yè)的建模工具使之函數(shù)化,最終建立一個(gè)與實(shí)際PUF具有相同映射關(guān)系的PUF。目前的建模攻擊技術(shù)大多應(yīng)用于強(qiáng)PUF電路[25],這需要大量的CRPs構(gòu)建PUF的模型關(guān)系。但是依靠當(dāng)前的技術(shù),強(qiáng)PUF尚不能應(yīng)用到IP保護(hù)中,而弱PUF的CRPs較少[26],無法對(duì)弱PUF實(shí)施建模攻擊。
4)反向工程。攻擊者可能使用反向工程技術(shù)導(dǎo)致IP核的加密機(jī)制暴露[14],并嘗試克隆IP核。由于密鑰另一個(gè)組成部分是PUF響應(yīng),而PUF具有抗反向的物理特性,克隆出的PUF與原始PUF擁有截然不同的CRPs。PUF通過提取制造過程中隨機(jī)的工藝誤差(如溫度、噪聲等)使它具有唯一性,即使同一家制造商也無法制造完全相同的PUF,因此攻擊者無法通過反向工程設(shè)計(jì)相同的PUF。
表1展示了RFSM-PUF授權(quán)方案與其他授權(quán)方案在7個(gè)方面的對(duì)比結(jié)果。
由表1可知,大多數(shù)對(duì)比方案在系統(tǒng)級(jí)架構(gòu)上保護(hù)IP核或者使用安全算法,但這些方案都無法抵抗反向工程,也會(huì)引入大量的資源開銷,不適用于資源受限的數(shù)字系統(tǒng)。Sun等[21]將PUF引入IP保護(hù)中,看似做到了安全性與靈活性的契合,但該方案并沒有在IP保護(hù)中考慮PUF的可靠性問題,而是認(rèn)為PUF是理想模型,忽略了占用較大邏輯資源的模糊提取器;因此該方案的可實(shí)現(xiàn)性較差,在實(shí)際應(yīng)用中有待改善。Zhang等[20]使用模糊提取器處理PUF生成的密鑰,使之滿足應(yīng)用于IP的需求;但是該方案針對(duì)大型FPGA系統(tǒng),不滿足按次付費(fèi)功能。本文設(shè)計(jì)的RFSM-PUF授權(quán)方案解決了以上存在的問題,其中PUF保證IP核的安全性,RFSM實(shí)現(xiàn)IP核的按次付費(fèi)功能。
表1 IP保護(hù)方案的性能對(duì)比
注:“√”表示方案能夠?qū)崿F(xiàn)對(duì)應(yīng)功能;“×”表示方案不能實(shí)現(xiàn)對(duì)應(yīng)功能。
將提出的保護(hù)機(jī)制在LGSyth91基準(zhǔn)電路上測(cè)試,其中RFSM配置=6、=2、=1、=15進(jìn)行實(shí)驗(yàn)。首先,修改KISS2格式的基準(zhǔn)電路[31],將RFSM序列添加到原始IP核中;其次,使用Kiss2v將修改后的KISS2格式的基準(zhǔn)電路轉(zhuǎn)換成Verilog格式;最后,使用XC7z020clg484-1實(shí)驗(yàn)板在Vivado 18.3上進(jìn)行綜合測(cè)試,并對(duì)比分析測(cè)試結(jié)果。
表2給出了基準(zhǔn)電路的基本參數(shù),其中、分別表示基準(zhǔn)電路的開銷(查找表(Look Up Table, LUT))和延時(shí)(DELAY)。
不考慮模糊提取器的情況下,文獻(xiàn)[21]方案與RFMS-PUF方案在開銷與延時(shí)效果上相差較小。文獻(xiàn)[21]方案在延時(shí)性能上略有優(yōu)勢(shì),主要原因是狀態(tài)機(jī)的結(jié)構(gòu)和分析工具的分析策略與本文方案不同;而IP核作為通用電路模塊,在運(yùn)行速率方面要求并不嚴(yán)格,所以兩種方案在延時(shí)性能上的差別可以接受。
表2 基準(zhǔn)電路參數(shù)
為了更直觀地體現(xiàn)兩種方案在實(shí)際應(yīng)用中開銷上的區(qū)別,需要在方案中增加模糊提取器的開銷。一個(gè)模糊提取器會(huì)占用367個(gè)slice[19],而每個(gè)slice相當(dāng)于本文實(shí)驗(yàn)中占用LUT數(shù)為4。為了進(jìn)一步論證模糊提取器的真實(shí)開銷,本文實(shí)驗(yàn)在Vivado上實(shí)現(xiàn)了模糊提取器模塊并進(jìn)行了開銷計(jì)算。實(shí)驗(yàn)結(jié)果表明,模糊提取器可以將PUF響應(yīng)的可靠性從91.65%提高至99.97%。根據(jù)綜合報(bào)告顯示,模糊提取器占用的LUT數(shù)為336,因此一個(gè)性能優(yōu)越的模糊提取器占用的邏輯資源巨大,在方案中不能忽略。文獻(xiàn)[21]方案將PUF嵌入IP中,這意味著每個(gè)IP和都需要配置一個(gè)模糊提取器;然而,它提供的資源開銷最大是LUT數(shù)為262,這充分說明了文獻(xiàn)[21]方案是將PUF作為理想模型考慮的,對(duì)方案的可實(shí)現(xiàn)性造成巨大沖擊。
通過對(duì)比表3中兩種方案的資源開銷和延時(shí)數(shù)據(jù)可知,RFSM-PUF方案在保證IP核安全性和實(shí)現(xiàn)按次付費(fèi)功能的同時(shí),大幅降低了安全電路的資源開銷。
對(duì)比RFSM-PUF方案與文獻(xiàn)[21]方案增加模糊提取器后的開銷。從表3可以明顯看出,RFSM-PUF授權(quán)方案增加模糊提取器后,占用平均LUT數(shù)為195;而文獻(xiàn)[21]方案增加了模糊提取器后,占用的平均LUT數(shù)為1 572,比RFSM-PUF方案的平均LUT數(shù)增加了1 377,總的資源開銷相較于RFSM-PUF方案增加了700%以上。如果應(yīng)用到更大的設(shè)計(jì)中,兩種授權(quán)方案新增開銷的占比將變得更小,然而文獻(xiàn)[21]方案依然需要在IP內(nèi)部加入模糊提取器,本文方案與之相比仍具有更低的開銷。
綜上所述,首先,在實(shí)用性方面,文獻(xiàn)[21]方案未考慮PUF電路可靠性問題和模糊提取器開銷。該方案將PUF作為理想模型,在實(shí)際應(yīng)用中缺乏可行性。其次,通過表2~3可以看出,RFSM-PUF方案引入的硬件開銷遠(yuǎn)低于文獻(xiàn)[21]方案,并且在延時(shí)與安全性指標(biāo)中均表現(xiàn)良好,可以應(yīng)用于IP保護(hù)。
為了進(jìn)一步驗(yàn)證RFSM-PUF安全電路在IP保護(hù)中的通用性,表4給出了15個(gè)基準(zhǔn)電路上的拓展實(shí)驗(yàn)結(jié)果。從表4可以看出,RFSM-PUF方案在不同的基準(zhǔn)電路上均具有很高的適用性,對(duì)基準(zhǔn)電路帶來的附加開銷和延時(shí)在可以接受的范圍之內(nèi)。以sand基準(zhǔn)電路為例,加入RFSM-PUF安全電路后的開銷LUT數(shù)與延時(shí)分別增加了83和1.481 ms,表明了RFSM-PUF授權(quán)方案的優(yōu)越性。
表3 不同基準(zhǔn)電路上不同方案的實(shí)驗(yàn)結(jié)果對(duì)比
表4 本文方案在不同基準(zhǔn)電路上的實(shí)驗(yàn)結(jié)果
本文提出一種基于RFSM-PUF的低成本按次付費(fèi)方案,可以解決當(dāng)前按次付費(fèi)方案存在的開銷與實(shí)現(xiàn)性之間的權(quán)衡問題。在IP保護(hù)中,RFSM作為按次付費(fèi)的安全模塊,引入的PUF用于生成唯一響應(yīng)。為了在IP中混淆RFSM和原始FSM,本文從RFSM中隨機(jī)選擇若干狀態(tài),并將它們連接到原始IP中FSM的不同狀態(tài)。RFSM的正確路徑是保密的,以保證license的安全,只有IP設(shè)計(jì)者可以根據(jù)RFSM和PUF響應(yīng)計(jì)算出license。利用RFSM的重構(gòu)特性實(shí)現(xiàn)IP核的按次付費(fèi)功能,此外,本文設(shè)計(jì)了一個(gè)三方交互協(xié)議與所提電路契合,協(xié)議中的三方在原有交互的基礎(chǔ)上對(duì)RFSM-PUF方案更加適用。最后在LGSyth91 基準(zhǔn)電路上通過實(shí)驗(yàn)驗(yàn)證RFSM-PUF授權(quán)方案,實(shí)驗(yàn)結(jié)果表明,RFSM-PUF授權(quán)方案相較于其他按次付費(fèi)方案占用更少的邏輯資源,削弱了模糊提取器的影響,更具可實(shí)現(xiàn)性。
[1] GUNEYSU T, MOLLER B, PAAR C. Dynamic intellectual property protection for reconfigurable devices[C]// Proceedings of the 2007 International Conference on Field-programmable Technology. Piscataway: IEEE, 2007:169-176.
[2] BOSSUET L, GOGNIAT G, BURLESON W. Dynamically configurable security for SRAM FPGA bitstreams[J]. International Journal of Embedded Systems, 2006, 2(1/2): 73-85.
[3] SISEJKOVIC D, MERCHANT F, REIMANN L M, et al. Deceptive logic locking for hardware integrity protection against machine learning attacks[J]. IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems, 2022, 41(6): 1716-1729.
[4] 張偉,馮建華. IP保護(hù)方法研究進(jìn)展[J]. 微納電子與智能制造, 2020, 2(1):95-101.(ZHANG W, FENG J H. Research progress on IP protection techniques[J]. Micro/nano Electronics and Intelligent Manufacturing, 2020, 2(1): 95-101.)
[5] TORUNOGLU I, CHARBON E. Watermarking-based copyright protection of sequential functions[J]. IEEE Journal Solid-State Circuits, 2000, 35(3): 434-440.
[6] KEAN T. Cryptographic rights management of FPGA intellectual property cores[C]// Proceedings of the ACM/SIGDA 10th International Symposium on Field-Programmable Gate Arrays. New York: ACM, 2002:113-118.
[7] ALKABANI Y, KOUSHANFAR F. Active control and digital rights management of integrated circuit IP cores[C]// Proceedings of the 2008 International Conference on Compilers, Architecture, and Synthesis for Embedded Systems. New York: ACM, 2008: 227-234.
[8] SUBRAMANYAN P, RAY S, MALIK S. Evaluating the security of logic encryption algorithms[C]// Proceedings of the 2015 IEEE International Symposium on Hardware Oriented Security and Trust. Piscataway: IEEE, 2015: 137-143.
[9] YU M D, DEVADAS S. Secure and robust error correction for physical unclonable functions[J]. IEEE Design and Test of Computers, 2010, 27(1): 48-65.
[10] DARJI A D, LAD T C, MERCHANT S N, et al. Watermarking hardware based on wavelet coefficients quantization method[J]. Circuits, Systems, Signal Processing, 2013, 32(6): 2559-2579.
[11] FYRBIAK M, WALLAT S, DéCHELOTTE J, et al. On the difficulty of FSM-based hardware obfuscation[J]. IACR Transactions on Cryptographic Hardware and Embedded Systems, 2018, 2018(3): 293-330.
[12] KOUSHANFAR F, QU G. Hardware metering[C]// Proceedings of the 38th Design Automation Conference. Piscataway: IEEE, 2001:490-493.
[13] CUI A, CHANG C H, TAHAR S, et al. A robust FSM watermarking scheme for IP protection of sequential circuit design[J]. IEEE Transitions on Computer-Aided Design of Integrated Circuits and System, 2011, 30(5): 678-690.
[14] TORRANCE R, JAMES D. The state-of-the-art in IC reverse engineering[C]// Proceedings of the 2009 International Workshop on Cryptographic Hardware and Embedded Systems, LNCS 5747. Berlin: Springer, 2009: 363-381.
[15] MAES R, SCHELLEKENS D, VERBAUWHEDE I. A pay-per-use licensing scheme for hardware IP cores in recent SRAM-based FPGAs[J]. IEEE Transitions on Information Forensics and Security, 2012, 7(1): 98-108.
[16] ZHANG J, LIN Y, LYU Y, et al. FPGA IP protection by binding finite state machine to physical unclonable function[C]// Proceedings of the 23rd International Conference on Field Programmable Logic and Applications. Piscataway: IEEE, 2013: 1-4.
[17] KUMAR S S, GUAJARDO J, MAES R, et al. Extended abstract: the butterfly PUF: protecting IP on every FPGA[C]// Proceedings of the 2008 IEEE International Workshop on Hardware-Oriented Security and Trust. Piscataway: IEEE, 2008: 67-70.
[18] 潘畬穌,張繼軍,張釗鋒. 一種無熵泄露的模糊提取器改進(jìn)結(jié)構(gòu)[J]. 電子技術(shù)應(yīng)用, 2019, 45(10):96-99.(PAN S S, ZHANG J J, ZHANG Z F. An improved structure of fuzzy extractor without entropy leakage[J]. Application of Electronic Technique, 2019, 45(10): 96-99.)
[19] B?SCH C, GUAJARDO J, SADEGHI A R, et al. Efficient helper data key extractor on FPGAs[C]// Proceedings of the 2008 International Workshop on Cryptographic Hardware and Embedded Systems, LNCS 5154. Berlin: Springer, 2008: 181-197.
[20] ZHANG J L, LIN Y, LYU Y, et al. A PUF-FSM binding scheme for FPGA IP protection and pay-per-device licensing[J]. IEEE Transitions on Information Forensics and Security, 2015, 10(6): 1137-1150.
[21] SUN P, CUI A. A new pay-per-use scheme for the protection of FPGA IP[C]// Proceedings of the 2019 IEEE International Symposium on Circuits and Systems. Piscataway: IEEE, 2019: 1-5.
[22] 劉勝利,溫云華. 模糊提取器及其應(yīng)用[J]. 信息安全與通信保密, 2019(2):54-63.(LIU S L, WEN Y H. Fuzzy extractor and its application[J]. Information Security and Communications Privacy, 2019(2): 54-63.)
[23] KOSTER M, TEICH J. (Self-) reconfigurable finite state machines: theory and implementation[C]// Proceedings of the 2002 Automation and Test in Europe Conference and Exhibition. Piscataway: IEEE, 2002: 559-566.
[24] LI L, NI S, ORAILOGLU A. JANUS: boosting logic obfuscation scope through reconfigurable FSM synthesis[C]// Proceedings of the 2021 IEEE International Symposium on Hardware Oriented Security and Trust. Piscataway: IEEE, 2021: 292-303.
[25] SAEED S M, ZULEHNER A, WILLE R, et al. Reversible circuits: IC/IP piracy attacks and countermeasures[J]. IEEE Transactions on Very Large Scale Integration (VLSI) Systems, 2019, 27(11): 2523-2535.
[26] GUAJARDO J, KUMAR S S, SCHRIJEN G J, et al. FPGA intrinsic PUFs and their use for IP protection[C]// Proceedings of the 2007 International Workshop on Cryptographic Hardware and Embedded Systems, LNCS 4727. Berlin: Springer, 2007: 63-80.
[27] CHAKRABORTY R S , BHUNIA S. RTL hardware IP protection using key-based control and data flow obfuscation[C]// Proceedings of the 23rd International Conference on VLSI Design. Piscataway: IEEE, 2010: 405-410.
[28] MUTTAKI M R, MOHAMMADIVOJDAN R, TEHRANIPOOR M, et al. HLock: locking IPs at the high-level language[C]// Proceedings of the 58th ACM/IEEE Design Automation Conference. Piscataway: IEEE, 2021: 79-84.
[29] BHANDARI J, THALAKKATTU MOOSA A K, TAN B, et al. Exploring eFPGA-based redaction for IP protection[C]// Proceedings of the 2021 IEEE/ACM International Conference on Computer-Aided Design. Piscataway: IEEE, 2021: 1-9.
[30] DHABU S S, ZHENG Y, LIU W, et al. Active IC metering of digital signal processing subsystem with two-tier activation for secure split test[C]// Proceedings of the 2018 IEEE International Symposium on Circuits and Systems. Piscataway: IEEE, 2018: 1-5.
[31] PRUTEANU C, HABA C G., a finite state machine generation tool[C/OL]// Proceedings of the 9th International Conference on Development and Application Systems [2022-08-10].http://www.dasconference.ro/papers/2008/D8.pdf.
Low-cost pay-per-use licensing scheme for FPGA intellectual property protection
SONG Binwei, WANG Yao*
(,,450001,)
The pay-per-use licensing of the Intellectual Property (IP) core enables the system designer to purchase IP at low price according to the actual situation, and has become a major method of IP licensing. To meet the pay-per-use demand of IP core, based on Reconfigurable Finite State Machine (RFSM) and Physical Unclonable Function (PUF), a new IP licensing scheme RFSM-PUF was proposed for Field Programmable Gate Array (FPGA) IP. Aiming at the problem that the protocols of the IP protection schemes of different manufacturers cannot be used universally, an IP protection authentication protocol for the proposed scheme was proposed to ensure the confidentiality and flexibility of IP authentication. Firstly, RFSM was embedded in the Original Finite State Machine (OFSM) in the IP, and in this way, the IP was only unlocked by the IP core designer. Then, the challenges were input into the PUF circuit to produce responses. Finally, the cipher consisting of the license and PUF responses was input into the RFSM to unlock the IP. The security analysis results show that the proposed scheme meets various security indicators. RFSM-PUF scheme was tested on the LGSyth91 benchmark circuits. Experimental results show that on the premise of meeting various safety indicators, the proposed scheme reduces 1 377 Look-Up Tables (LUT) averagely at every IP core compared to the PUF based pay-per-use licensing scheme, so that the hardware overhead is significantly reduced.
Field Programmable Gate Array (FPGA); Intellectual Property (IP); Reconfigurable Finite State Machine (RFSM); Physical Unclonable Function (PUF); LGSyth91 benchmark
This work is partially supported by National Key Research and Development Program of China (SQ2020YFF0404465).
SONG Binwei, born in 1997, M. S. candidate. His research interests include on-chip and Field Programmable Gate Array (FPGA) hardware security.
WANG Yao, born in 1983, Ph. D., associate professor. His research interests include digital-analog hybrid integrated circuit design, on?chip and FPGA hardware security, radio frequency identification technology.
1001-9081(2023)10-3142-07
10.11772/j.issn.1001-9081.2022101506
2022?10?12;
2022?12?26;
國家重點(diǎn)研發(fā)計(jì)劃項(xiàng)目(SQ2020YFF0404465)。
宋斌威(1997—),男,河南周口人,碩士研究生,主要研究方向:片上與現(xiàn)場(chǎng)可編程門陣列(FPGA)硬件安全; 王耀(1983—),男,河南南陽人,副教授,博士生導(dǎo)師,博士,主要研究方向:數(shù)?;旌霞呻娐吩O(shè)計(jì)、片上與FPGA硬件安全、射頻識(shí)別技術(shù)。
TP391;TN919
A
2022?12?27。