欧美丰满熟妇XXXX性 ,久久躁狠狠躁夜夜AV,免费大片av手机看片,性瘾成疾BY海棠

上海動(dòng)信微電子科技有限公司

認(rèn)證技術(shù)

您的當(dāng)前位置:首頁 > 新聞中心 > 認(rèn)證技術(shù)

基于PUF的密鑰生成器:FPGA實(shí)現(xiàn)

發(fā)布時(shí)間:2016-06-03瀏覽次數(shù):載入中...

本文基于物理不可克隆函數(shù)PUF提出了一個(gè)實(shí)用模塊化的“密鑰生成器”設(shè)計(jì),并且在FPGA設(shè)備上進(jìn)行了完整的實(shí)現(xiàn)和評(píng)估。本文設(shè)計(jì)和實(shí)現(xiàn)的PUFKY,號(hào)稱基于PUF的密鑰生成器的第一次完整實(shí)現(xiàn),包含一個(gè)PUF,一個(gè)糾錯(cuò)碼BCH decoder和一個(gè)密碼熵累加器cryptographic entropy accumulator。

大多數(shù)密碼應(yīng)用的實(shí)現(xiàn)離不開一個(gè)安全密鑰。安全地生成和存儲(chǔ)密鑰依賴兩點(diǎn)最基本的需求:(1)一個(gè)真的隨機(jī)源,保證生成不可預(yù)測(cè)和唯一的新鮮密鑰;(2)一個(gè)受保護(hù)的存儲(chǔ)空間,用于可靠的儲(chǔ)存生成的密鑰信息,防止其被非授權(quán)方獲取。從實(shí)現(xiàn)的角度來看,這兩點(diǎn)需求都不容易滿足。首先,不可預(yù)測(cè)的隨機(jī)性通常使用偽隨機(jī)生成器PRNG(Pseudo-Random Number Generator)來實(shí)現(xiàn),不過終究不是真隨機(jī),可以被分析攻破和利用;其次,實(shí)現(xiàn)保護(hù)存儲(chǔ)也是一個(gè)很大的挑戰(zhàn),通常導(dǎo)致增加的實(shí)現(xiàn)開銷以及受限的應(yīng)用,而且即便使用高級(jí)的物理保護(hù)機(jī)制,也無法防止專業(yè)的攻擊者。

基于PUF的密鑰生成器可以很好的滿足以上兩點(diǎn)需求,其將設(shè)備獨(dú)有的隨機(jī)指紋經(jīng)過處理后轉(zhuǎn)換為密鑰。首先,這種方法不需要PRNG,隨機(jī)性已經(jīng)可以由設(shè)備本身提供;其次,也不需要一個(gè)保護(hù)的非易失性存儲(chǔ)空間NVM,基于設(shè)備隨機(jī)指紋可以按需重新生成相同的密鑰。不過,PUF響應(yīng)通常存在噪聲(noisy)而且低熵(low-entropy),因此基于PUF的密鑰生成器需要面臨兩個(gè)挑戰(zhàn):消除噪聲,增加可靠性到實(shí)用可接受的要求;壓縮足夠的熵來達(dá)到固定長度的密鑰。模糊提取器Fuzzy Extractor可以很好滿足這兩點(diǎn)。

本文構(gòu)建的PUFKY體系如下圖所示:

PUFKY體系示意圖

該體系采用“Syndrome Construction”方法來構(gòu)造Secure Sketching(SS)。這種構(gòu)造方法主要使用二進(jìn)制線性分組碼C(n,k,t)來進(jìn)行構(gòu)造,該分組碼的校驗(yàn)矩陣為H。如何選取合適的線性分組碼很重要。通常的方式是使用一種分組碼(常用的是BCH碼),如最初的基于SRAM PUF的SS和FE構(gòu)造;不過作者通過對(duì)“Efficient Helper

Data Key Extractor on FPGAs (CHES 2008)”的分析發(fā)現(xiàn)使用分組碼的組合級(jí)聯(lián)形式有更大的優(yōu)勢(shì)(在參數(shù)限制方面),于是采用了雙碼級(jí)聯(lián)的方式,使用Repetition Code(CREP)作為一個(gè)內(nèi)部編碼(an inner code),然后使用一個(gè)BCH code(CBCH)作為一個(gè)外部編碼(an outer code)。

         另外,基于PUF生成密鑰通常采用模糊提取器FE,即組合一個(gè)SS和一個(gè)強(qiáng)隨機(jī)提取器Ext。這需要對(duì)隨機(jī)源的最小熵作一個(gè)很強(qiáng)的假設(shè),而且使用Ext會(huì)導(dǎo)致熵流失很多,使得密鑰生成不是很實(shí)用。本篇基于另一種方法,即基于偽隨機(jī)數(shù)發(fā)生器實(shí)現(xiàn)熵累加(entropy accumulator)。NIST SP 800-90A規(guī)范(Sect. 10.4)和NIST sp800-108規(guī)范實(shí)際上都介紹了使用密碼哈希函數(shù)來進(jìn)行熵的累積,進(jìn)而生成需要長度的密鑰,要累積的熵至少要達(dá)到生成密鑰的長度。

         具體實(shí)現(xiàn)在一個(gè)低端FPGA(Xilinx Spartan-6)板子上,主要目標(biāo)是為嵌入式系統(tǒng)提供解決方案,因此要求實(shí)現(xiàn)的性能消耗盡可能小。PUF采用的是ROPUF(Ring Oscillator PUF,環(huán)形振蕩器),需要振蕩器的規(guī)模為(a*b)。哈希算法采用比較新的研究成果,即輕量級(jí)的SPONGENT。ROPUF相關(guān)的參數(shù)主要有三個(gè)(l,pe,ρ),其中l(wèi)是PUF輸出響應(yīng)的長度,pe是PUF的最大比特錯(cuò)誤率,ρ是PUF輸出響應(yīng)的熵密度。最終生成密鑰的需求由兩個(gè)參數(shù)(m,pfail)來表示,m是目標(biāo)密鑰的長度,pfail表示失敗率。ROPUF的體系如下圖:

ROPUF體系圖

一個(gè)參考實(shí)現(xiàn):

目標(biāo)是生成密鑰m = 128位,失敗率pfail不大于10-9,實(shí)現(xiàn)參數(shù)過程大致如下:

(1)選擇(l = 42, pe = 13%, ρ = 97.95%)的ROPUF,實(shí)現(xiàn)53*16個(gè)振蕩器,即a = 53,b=16。

(2)SS使用CREP(7,1,3)和CBCH(318,174,17)的級(jí)聯(lián)形式,對(duì)于每42位的PUF響應(yīng),REP碼產(chǎn)生36位的輔助數(shù)據(jù),并輸出6位給BCH,BCH會(huì)生成144位的輔助數(shù)據(jù),并提供318位數(shù)據(jù)給熵累積器(即哈希函數(shù))。

(3)ROPUF生成a*l=2226個(gè)比特位數(shù)據(jù),其中包含a*l*ρ=2180.4位的熵。總共輔助數(shù)據(jù)長度為53*36+144=2052位,這也是SS過程損失的熵,因此,SS后剩余的熵為2180.4-2052=128.4位,通過使用SPONGENT-128哈希函數(shù),可以將這些熵積累在一個(gè)m=128位的密鑰中。

(4)FPGA平臺(tái)上實(shí)現(xiàn)PUFKY共用了1162個(gè)切片(slices),其中82%用于實(shí)現(xiàn)ROPUF,其余18%用于密鑰生成邏輯單元(REP解碼37個(gè),BCH syndrome計(jì)算72個(gè),BCH解碼112個(gè),SPONGENT128哈希22個(gè),輔助數(shù)據(jù)RAM 38個(gè))。

(5)獲取128位密鑰共花費(fèi)約5.62毫秒(@54MHz),其中PUF輸出花費(fèi)4.59毫秒,其它用時(shí)稍微大一點(diǎn)的是BCH解碼。

 

這里參考實(shí)現(xiàn)給出的是生成128位的強(qiáng)密鑰,可以采用類似PUFKY的模塊化體系設(shè)計(jì)生成其它密鑰參數(shù)的密鑰生成器。使用基于PUF的密鑰相比傳統(tǒng)密鑰生成方法有很多優(yōu)勢(shì),最明顯的兩個(gè)是:(1)不需要保護(hù)NVM來長期存儲(chǔ)密鑰,使用PUF可以在需要時(shí)重新生成;(2)密鑰在本質(zhì)上與特點(diǎn)的平臺(tái)實(shí)體綁定,在防偽或者軟硬件綁定應(yīng)用等方面會(huì)有很大的用處。

隨著物聯(lián)網(wǎng)的發(fā)展,可以想象未來所有嵌入式設(shè)備上都自帶PUF,或者通過連接器連接一個(gè)PUF,并實(shí)現(xiàn)身份識(shí)別、認(rèn)證、加解密等安全功能。在這種意義上,PUF的安全性還需要進(jìn)一步的認(rèn)證和實(shí)踐證明。
【返回列表】

相關(guān)新聞

eaSw/v9HjKvjeZ5FpKjl1WqB9B021S0kZTD1uGFezgjCAmEmAHc3WFbDJPB5/FnZM6Hiq4ndLfinjt9JpaWdHv3tKN5FM7zOdOMGMZkPjJMQXGIWDZRqPztfMQMTnqpqoT+f0k0w5o2yGxOm0jKKC0DN/wjD0pfZchP2pIP20lpaXNG2iBJbII91cDRIxulLeRj80qNZZvQRVrHq6nJcDqVbCbtWRBDE
化隆| 武义县| 甘泉县| 东乌珠穆沁旗| 兴化市| 贵州省| 乐业县| 舟曲县| 斗六市| 毕节市| 孙吴县| 忻城县| 桦南县| 桃源县|