两个人的电影免费视频_国产精品久久久久久久久成人_97视频在线观看播放_久久这里只有精品777_亚洲熟女少妇二三区_4438x8成人网亚洲av_内谢国产内射夫妻免费视频_人妻精品久久久久中国字幕

一種密鑰和真隨機(jī)數(shù)發(fā)生器及生成密鑰和真隨機(jī)數(shù)的方法

文檔序號(hào):7873392閱讀:2250來源:國(guó)知局
專利名稱:一種密鑰和真隨機(jī)數(shù)發(fā)生器及生成密鑰和真隨機(jī)數(shù)的方法
技術(shù)領(lǐng)域
本發(fā)明涉及信息安全中的密碼芯片安全領(lǐng)域,特別涉及高安全等級(jí)的密碼芯片的密鑰和真隨機(jī)數(shù)生成方法。
背景技術(shù)
密鑰安全是密碼芯片安全的先決條件,一旦泄密,則導(dǎo)致密碼芯片被徹底攻破。傳統(tǒng)的密碼芯片把密鑰存放在無防護(hù)措施的存儲(chǔ)器中,這使得密鑰容易被Torrance等人在論文 TJ09 “The state-of-the-art inIC reverse engineering,,(IC 逆向工程的技術(shù)發(fā)展水平)中的逆向工程方法竊取。通過增強(qiáng)存儲(chǔ)區(qū)中密鑰的安全性可以增加竊取密鑰的難度,但由于這樣做的代價(jià)太高,而不適用于大多數(shù)密碼芯片的應(yīng)用場(chǎng)合。已有的攻擊例子表明,即使存儲(chǔ)器采用昂貴的防護(hù)措施也不足以抵抗裝備精良的攻擊者。例如國(guó)際可信聯(lián)盟TCG推薦的“具有高度安全性”的英飛凌的可信平臺(tái)模塊TPM被Tarnovsky在論文TlO“Deconstructing a ‘Secure’Processor”(解剖一個(gè)’安全’的處理器)中攻破,Tarnovsky 通過物理入侵攻擊一“橋映射”(bridge map)方法繞過芯片無數(shù)的防御網(wǎng)絡(luò),然后用極為細(xì)小的探針接入數(shù)據(jù)總線而不被芯片的入侵檢測(cè)電路發(fā)覺且不引起芯片自毀,然后讀出芯片中存儲(chǔ)的數(shù)據(jù),包括加密密鑰和唯一的制造信息,從而可克隆TPM,這一事件導(dǎo)致如日中天的國(guó)際芯片巨頭英飛凌迅速煙滅。Skorobogatov在論文S10“Flash Memory’ Bumping’ Attack”(Flash存儲(chǔ)器的’撞擊’攻擊)中通過半入侵的撞擊(Bumping)從“高安全”的Flash中提取秘密,該攻擊的受害者是Actel (原全球第三大FPGA供應(yīng)商)的A3P250 FPGA,找到了整個(gè)系列FPGA的主密鑰及后門,導(dǎo)致董事會(huì)未經(jīng)股東討論就匆匆賣掉公司,并最終致使Actel消亡。物理不可克隆模塊(PUF)是解決密鑰安全問題的有效手段。PUF是一個(gè)擁有秘密參數(shù)的單向函數(shù),該秘密參數(shù)由生產(chǎn)過程中無法控制的因素引入,致使PUF天然擁有獨(dú)一性、隨機(jī)性和不可克隆性。因此,PUF能夠更安全地產(chǎn)生和更新密鑰,而且密鑰僅在需要時(shí)才以數(shù)字形式出現(xiàn),這使得逆向工程難以起作用。此外,采用適當(dāng)?shù)膮f(xié)議和芯片內(nèi)部結(jié)構(gòu)設(shè)計(jì),可令攻擊者難以甄別出PUF產(chǎn)生密鑰的電路,探測(cè)產(chǎn)生密鑰的電路則導(dǎo)致PUF損壞,從而有效地提高密鑰的安全性。用PUF產(chǎn)生密鑰必須滿足可靠性和安全性要求??煽啃砸笫侵窹UF的噪聲要低于某個(gè)值,例如噪聲<le_9,或者誤碼率低于le-6。安全性要求是指PUF應(yīng)當(dāng)具備優(yōu)異的抗攻擊能力。Maes 等人在論文 MVlO “Physically unclonable functions:A study on thestate of the art and future research directions”(物理不可克隆模塊:發(fā)展現(xiàn)狀及其將來的研究方向)中指出,現(xiàn)有的硅PUF的噪聲通常在0.01%-12%之間,用PUF生成密鑰必須米用適當(dāng)?shù)姆椒ń档驮肼?。Dodis等人在論文DRS04“Fuzzy extractors:How to generatestrong keys from biometrics and other noisy data”(模糊提取:如何從生物特征和其它帶噪聲數(shù)據(jù)中生成強(qiáng)壯的密鑰)中,提出了從帶噪聲數(shù)據(jù)中獲得密鑰的方法一模糊提取(Fuzzy extraction),該方法包含初始化(generation)和重建(reproduction)兩個(gè)過程,重建時(shí)使用糾錯(cuò)碼(ECC)降低噪聲。BSsch等人在論文BGSST08 “Efficient helper datakey extractor on FPGAs"(基于FPGA的高效的密鑰提取輔助數(shù)據(jù))中,使用ECC降低PUF的噪聲。Maes 等人在論文 MTV09 uLow-overhead implementation of a soft decisionhelper data algorithm for SRAM PUFs”(基于SRAM_PUF的軟判決輔助數(shù)據(jù)法的低開銷實(shí)現(xiàn))中,采用軟判決輔助數(shù)據(jù)法改善實(shí)現(xiàn)效率。Yu等人在論文YDlO “Secure and robusterror correction for physical unclonable functions”(安全強(qiáng)健的物理不可克隆模塊糾錯(cuò)法)中,提出用IBS方法改善可靠性,然后使用ECC把噪聲降到le-9。Maes等人在論文MVV12 “PUFKY:A Fully Functional PUF-Based Cryptographic Key Generator”(PUFKY:一種具有完全功能的基于PUF的密鑰生成器)中,提出基于PUF的密鑰生成器(PUFKY),也使用了 ECC降低噪聲。ECC雖然解決了 PUF的可靠性問題,但卻需要昂貴的資源開銷,更重要的是引入了新的安全問題:ECC易受旁路攻擊(ECC-SCA) — Karakoyunlu等人在論文KSlO “Differential template attacks on PUF enabled cryptographic devices,,(基于PUF的密碼器件的差分模板攻擊)中提出ECC的SCA問題。Armknecht 等人在論文 AMSSTO9 “Memory leakage-resilient encryption basedon physical Iy unclonable functions”(基于物理不可克隆模塊加密的抗存儲(chǔ)器泄露方案)中,采用多數(shù)投票法(Temporal Majority Voting)并丟棄模糊比特(Dark Bit)(TMV-DB)來提高SRAM-PUF的可靠性。然而,TMV-DB方法僅在初始化過程丟棄模糊比特,無法丟棄或改正重建過程中出現(xiàn)的模糊比特。此外,確定模糊比特需要大量的實(shí)驗(yàn)測(cè)試,這使初始化成為一項(xiàng)開銷巨大的工作。Majzoobi等人在論文MKD10 “FPGA PUF usingprogrammable delaylines”(FPGA上基于可編程延時(shí)路徑的PUF)中,也采用多數(shù)投票法提高APUF的可靠性,采用重復(fù)輸入挑戰(zhàn)選出最大可能的結(jié)果作為應(yīng)答,使得溫度高達(dá)75度時(shí)噪聲不超過 2%。Maiti 和 Schaumont 在論文 MSll “Improved ring oscillator PUF:anFPGA-friendly secure primitive”(改進(jìn)的振蕩環(huán)PUF:—種易于FPGA實(shí)現(xiàn)的安全基兀)中,采用可配置的振蕩環(huán)(CRO)技術(shù)使ROPUF產(chǎn)生接近100%可靠的應(yīng)答。雖然CRO技術(shù)可以產(chǎn)生接近100%可靠的應(yīng)答比特,但其挑戰(zhàn)應(yīng)答對(duì)數(shù)量不多限制了應(yīng)用范圍,且接近100%可靠也并不意味著能滿足密鑰的可靠性要求。中國(guó)發(fā)明專利(申請(qǐng)?zhí)枮?01210013772.X)公開了“一種密碼芯片系統(tǒng)及密鑰提取方法”,該技術(shù)方案利用DAPUF的正負(fù)仲裁異或結(jié)果定位并改正重建中發(fā)生的錯(cuò)誤,結(jié)合安全多方計(jì)算無需ECC即可滿足密鑰的可靠性要求。然而,該方法仍存在一些不足,例如,當(dāng)電壓降低超過2%或環(huán)境溫度超過40度時(shí),其產(chǎn)生密鑰時(shí)使用安全多方計(jì)算的概率高于le-6,而安全多方計(jì)算的代價(jià)極為高昂。綜上所述,考慮電壓和溫度變化較大時(shí),現(xiàn)有的PUF方案只有借助ECC方可有效滿足密鑰的可靠性要求,而ECC易受旁路攻擊,從而嚴(yán)重影響密鑰的安全性。

發(fā)明內(nèi)容
本發(fā)明的目的在于克服現(xiàn)有技術(shù)的缺點(diǎn)與不足,提供一種密鑰和真隨機(jī)數(shù)發(fā)生器,無需糾錯(cuò)碼即可滿足密鑰的可靠性要求,從而規(guī)避基于PUF的密鑰生成器的糾錯(cuò)碼旁路攻擊問題。本發(fā)明的第二目的在于,提供一種密鑰和真隨機(jī)數(shù)生成器生成密鑰的方法,從而有效地增強(qiáng)密鑰在產(chǎn)生和使用過程中的安全性,并有效地改善在窮搜克隆、碰撞克隆、半入侵探測(cè)和建模攻擊之下的安全性,以及有效地增強(qiáng)密碼芯片抵抗物理入侵攻擊的能力。本發(fā)明的第三目的在于,提供一種密鑰和真隨機(jī)數(shù)生成器生成真隨機(jī)數(shù)的方法,從而有效地改善密鑰和真隨機(jī)數(shù)生成器的實(shí)現(xiàn)效率,所述的實(shí)現(xiàn)效率包括運(yùn)算速度和占用的芯片面積。為了達(dá)到上述第一目的,本發(fā)明采用以下技術(shù)方案:本發(fā)明一種密鑰和真隨機(jī)數(shù)生成器,包括雙仲裁器物理不可克隆模塊DAPUFJi發(fā)信號(hào)產(chǎn)生寄存器TReg、應(yīng)答采集寄存器RReg、微控器Controller、線性反饋移位寄存器LFSR, Hash引擎、易失存儲(chǔ)器RAM和非易失存儲(chǔ)器ROM ;所述雙仲裁器物理不可克隆模塊DAPUF由敏感電路和仲裁電路組成;所述敏感電路包含n個(gè)選擇器,所述選擇器包含上下兩個(gè)輸入端、一個(gè)控制端以及上下兩個(gè)輸出端,n個(gè)選擇器按順序排列,前一個(gè)選擇器的上下兩個(gè)輸出端與后一個(gè)選擇器的上下兩個(gè)輸入端相連接,每個(gè)選擇器的控制端與LFSR中的一比特寄存器相連接;當(dāng)選擇器的控制端輸入為0或者I時(shí),選擇器上輸入端與上輸出端連通以及下輸入端與下輸出端連通,或者上輸入端與下輸出端連通以及下輸入端與上輸出端連通;所述仲裁電路包含正負(fù)兩個(gè)仲裁器,每個(gè)仲裁器均擁有上下兩個(gè)輸入端和一個(gè)輸出端;敏感電路的第n個(gè)選擇器的上下兩個(gè)輸出端分別與正仲裁器的上下兩個(gè)輸入端相連接,正負(fù)兩個(gè)仲裁器的兩個(gè)輸入端交叉連接;DAPUF的n個(gè)選擇器的控制端接收LFSR傳送過來的挑戰(zhàn)C,DAPUF的第一個(gè)選擇器的兩個(gè)輸入端接收觸發(fā)信號(hào)產(chǎn)生寄存器TReg傳送過來的上升沿觸發(fā)信號(hào);LFSR傳送過來的挑戰(zhàn)C決定了敏感電路的上下兩路信號(hào)的一種特定通路狀態(tài),兩路上升沿觸發(fā)信號(hào)沿著這種特定通路狀態(tài)的兩條通路最終送到正仲裁器和負(fù)仲裁器;正負(fù)兩個(gè)仲裁器根據(jù)上下兩路上升沿觸發(fā)信號(hào)到達(dá)的先后順序決定其輸出,如果某個(gè)仲裁器的上輸入端的上升沿比下輸入端的上升沿先到達(dá),則該仲裁器輸出1,否則輸出0 ;稱DAPUF的輸出為應(yīng)答,正負(fù)兩個(gè)仲裁器的應(yīng)答存入應(yīng)答采集寄存器RReg中;所述觸發(fā)信號(hào)產(chǎn)生寄存器TReg由兩比特寄存器組成,其中一比特寄存器連接DAPUF敏感電路的第一個(gè)選擇器的上輸入端,另一比特寄存器連接DAPUF敏感電路第一個(gè)選擇器的下輸入端,在微控器Controller的控制下向TReg寫入00和寫入11,從而為DAPUF的敏感電路提供上升沿觸發(fā)信號(hào);所述應(yīng)答采集寄存器RReg由兩比特寄存器組成,一比特寄存器接收DAPUF的正仲裁應(yīng)答,另一比特寄存器接收DAPUF的負(fù)仲裁應(yīng)答,RReg所采集的應(yīng)答交給微控器Controller 處理;所述微控器Controller用于讀取存放在非易失存儲(chǔ)器ROM中的輔助數(shù)據(jù)中的挑戰(zhàn)C寫入LFSR、控制LFSR線性反饋移位產(chǎn)生DAPUF的挑戰(zhàn)、控制觸發(fā)信號(hào)產(chǎn)生寄存器TReg產(chǎn)生DAPUF的上升沿觸發(fā)信號(hào)、從應(yīng)答采集寄存器RReg讀取并處理DAPUF的應(yīng)答、控制Hash引擎運(yùn)算并讀寫易失存儲(chǔ)器RAM和非易失存儲(chǔ)器R0M,密鑰和真隨機(jī)數(shù)的產(chǎn)生也在微控器Controller的控制下完成;所述線性反饋移位寄存器LFSR用于存放微控器ControlIer送來的挑戰(zhàn)C,并在微控器的控制下線性反饋移位產(chǎn)生DAPUF的挑戰(zhàn);所述Hash引擎包含4個(gè)參數(shù),所述每個(gè)參數(shù)均是一個(gè)任意隨機(jī)數(shù),其中第一參數(shù)與DAPUF的應(yīng)答運(yùn)算后由Hash引擎處理產(chǎn)生輔助數(shù)據(jù)中的應(yīng)答單向結(jié)果HR,第二參數(shù)與DAPUF的應(yīng)答運(yùn)算后由Hash弓丨擎處理產(chǎn)生密鑰,第三參數(shù)與DAPUF的應(yīng)答運(yùn)算后由Hash弓丨擎處理產(chǎn)生和更新隨機(jī)種子Seed,第四參數(shù)與DAPUF的應(yīng)答運(yùn)算后經(jīng)Hash引擎處理,所得的結(jié)果用于更新真隨機(jī)數(shù)初始向量IV以及作為真隨機(jī)數(shù)使用;所述參數(shù)的運(yùn)算是異或或者連接運(yùn)算,當(dāng)用加密算法構(gòu)造Hash引擎時(shí),則所述參數(shù)的運(yùn)算是指參數(shù)作為密鑰或者明文參與加密運(yùn)算;所述易失存儲(chǔ)器RAM用于存儲(chǔ)微控器Controller運(yùn)算過程中的臨時(shí)變量;所述非易失存儲(chǔ)器ROM用于存儲(chǔ)生成密鑰所需要的輔助數(shù)據(jù)和產(chǎn)生真隨機(jī)數(shù)的初始向量IV。為了達(dá)到上述第二發(fā)明目的,本發(fā)明采用以下技術(shù)方案:本發(fā)明密鑰和真隨機(jī)數(shù)生成器生成密鑰的方法,包括下述步驟:S11、執(zhí)行密鑰初始化,產(chǎn)生生成密鑰的輔助數(shù)據(jù)并且把輔助數(shù)據(jù)保存在非易失存儲(chǔ)器ROM中;S12、由密鑰 重建過程產(chǎn)生密鑰,密鑰重建過程基于密鑰初始化時(shí)產(chǎn)生并保存的輔助數(shù)據(jù)中的挑戰(zhàn)C找到多數(shù)選舉法所需要的應(yīng)答,然后通過多數(shù)選舉法選舉出重建應(yīng)答,輸出重建應(yīng)答與第二參數(shù)運(yùn)算后的Hash結(jié)果作為密鑰。優(yōu)選的,步驟Sll中,初始化具體為:測(cè)量多個(gè)挑戰(zhàn)的DAPUF應(yīng)答,每一個(gè)挑戰(zhàn)對(duì)應(yīng)正仲裁應(yīng)答和負(fù)仲裁應(yīng)答各一比特,以及一比特正負(fù)仲裁異或結(jié);多個(gè)挑戰(zhàn)中的第一個(gè)挑戰(zhàn)C由微控器Controller寫入LFSR中,從第二個(gè)挑戰(zhàn)開始由LFSR線性反饋移位產(chǎn)生,一直到產(chǎn)生足夠的有效比特為止,所述的有效比特是為I時(shí)對(duì)應(yīng)的正仲裁應(yīng)答;密鑰初始化時(shí)需要產(chǎn)生Len* (K+1)比特有效應(yīng)答,所述的Len是所產(chǎn)生密鑰的長(zhǎng)度,K是多數(shù)選舉法的選舉次數(shù),K是一個(gè)基數(shù);有效應(yīng)答分成K+1組,其中第一組分別與第二到第K+1組異或,所得的K組異或結(jié)果形成分組異或結(jié)果GXR ;密鑰初始化后需要把(C,K.DAXOR, GXR)作為輔助數(shù)據(jù)保存在非易失存儲(chǔ)器ROM中。優(yōu)選的,步驟S12中,密鑰重建過程首先將輔助數(shù)據(jù)中的挑戰(zhàn)C寫入LFSR,然后根據(jù)K_DAX0R找到第Len+1號(hào)有效比特對(duì)應(yīng)的挑戰(zhàn),整個(gè)密鑰重建過程僅測(cè)量和記錄第Len+1號(hào)到Len* (K+1)號(hào)有效應(yīng)答;將密鑰重建過程得到的Len*K比特應(yīng)答分成K組與輔助數(shù)據(jù)中的GXR異或,所得到的K組候選數(shù)據(jù)通過多數(shù)選舉法產(chǎn)生重建應(yīng)答;所述的多數(shù)選舉法是指候選數(shù)據(jù)中的順序號(hào)為L(zhǎng)en*0+l,Len*l+l,…,Len*K+l對(duì)應(yīng)的值中,如果0出現(xiàn)的次數(shù)多則重建應(yīng)答的第I比特為0,否則重建應(yīng)答的第I比特為1,如此類推產(chǎn)生第2到第Len比特重建應(yīng)答;輸出Len比特重建應(yīng)答與第二參數(shù)運(yùn)算后的Hash結(jié)果作為密鑰并結(jié)束重建過程。優(yōu)選的,步驟Sll中的GXR除包含有效正仲裁應(yīng)答的異或結(jié)果,也包含對(duì)應(yīng)的有效負(fù)仲裁應(yīng)答的異或結(jié)果;此外,將第I到第Len比特有效正仲裁應(yīng)答與參數(shù)I運(yùn)算后的Hash結(jié)果HR作為輔助數(shù)據(jù),從而使得輔助數(shù)據(jù)變成(C,K_DAX0R, GXR, HR);步驟S12中用多數(shù)選舉法選舉出有效正仲裁應(yīng)答和有效負(fù)仲裁應(yīng)答,選舉后并不直接結(jié)束重建過程,而是再進(jìn)一步降低噪聲,其具體步驟如下:S21:如果有效正仲裁應(yīng)答與第一參數(shù)運(yùn)算后的Hash結(jié)果與輔助數(shù)據(jù)中的HR相等,則有效正仲裁應(yīng)答與第二參數(shù)運(yùn)算后的Hash結(jié)果作為密鑰并結(jié)束重建過程;
S22:選舉出的有效正仲裁應(yīng)答和有效負(fù)仲裁應(yīng)答異或,得到Len比特正負(fù)仲裁異或結(jié)果DAXOR,DAXOR中為0的比特意味著要么對(duì)應(yīng)位置的有效正仲裁應(yīng)答出錯(cuò),要么對(duì)應(yīng)位置的有效負(fù)仲裁應(yīng)答出錯(cuò);設(shè)DAXOR中有g(shù)比特為0,則有效正仲裁應(yīng)答可能在DAXOR為0相應(yīng)的位置出現(xiàn)g比特錯(cuò)誤,由此可以得到并記錄2s種有效正仲裁應(yīng)答的可能取值,對(duì)每一種可能取值,與第一參數(shù)運(yùn)算后的Hash結(jié)果如果等于HR,則將該可能取值與第二參數(shù)運(yùn)算的Hash結(jié)果作為密鑰并結(jié)束重建過程;S23:對(duì)步驟S22中記錄的每一種可能的有效正仲裁應(yīng)答,每次取反其中的一比特得到FLR,把每一個(gè)FLR與第一參數(shù)運(yùn)算后計(jì)算其Hash結(jié)果,將Hash結(jié)果與輔助數(shù)據(jù)中的HR比較,相等則將FLR與第二參數(shù)運(yùn)算的Hash結(jié)果作為密鑰并結(jié)束重建過程;S24:輸出重建失敗提示信息。優(yōu)選的,K_DAX0R中包含多個(gè)比特0和1,為0時(shí)對(duì)應(yīng)無效挑戰(zhàn)和無效應(yīng)答,為I時(shí)對(duì)應(yīng)有效挑戰(zhàn)和有效應(yīng)答,對(duì)K_DAX0R中的每一比特LFSR都線性反饋移位一次;當(dāng)K_DAXOR中某一比特為I時(shí),有效挑戰(zhàn)序號(hào)加I ;當(dāng)有效挑戰(zhàn)序號(hào)一直加到Len+1時(shí),LFSR中的值就是第Len+1號(hào)有效比特對(duì)應(yīng)的挑戰(zhàn)。優(yōu)選的,在步驟Sll所述的密鑰初始化中,其輔助數(shù)據(jù)的K_DAX0R中包含多個(gè)比特0和I,計(jì)算K_DAX0R的比特總順序號(hào)和有效順序號(hào);對(duì)K_DAX0R中的每一比特,無論其值為0還是為I,總順序號(hào)均加I ;K_DAX0R中為I的比特為有效比特,對(duì)每一比特有效比特,有效順序號(hào)均加I ;令有效順序號(hào)為L(zhǎng)en+1之前的比特的總順序號(hào)為TN0,丟棄K_DAX0R前面的TNO比特,僅從有效順序號(hào)為L(zhǎng)en+1的位置開始保存K_DAX0R,并且保存TNO作為輔助數(shù)據(jù),所需要保存的輔助數(shù)據(jù)為(C,K_DAX0R, GXR, HR, TNO)。優(yōu)選的,在步驟S12所述的密鑰重建中,微控器Controller將輔助數(shù)據(jù)中的挑戰(zhàn)C寫入LFSR中,統(tǒng)計(jì)LFSR的線性反饋移位次數(shù),當(dāng)線性反饋移位的次數(shù)等于輔助數(shù)據(jù)中的TNO時(shí),此時(shí)LFSR中的值就是重建過程需要獲取的第一比特有效應(yīng)答所對(duì)應(yīng)的挑戰(zhàn)。為了達(dá)到上述第三發(fā)明目的,本發(fā)明采用以下技術(shù)方案:本發(fā)明密鑰和真隨機(jī)數(shù)生成器生成真隨機(jī)數(shù)的方法,包括下述步驟:S31、真隨機(jī)數(shù)初始化過程利用ROM中的真隨機(jī)數(shù)初始向量IV產(chǎn)生種子應(yīng)答和真隨機(jī)數(shù)種子,并用第四參數(shù)與種子應(yīng)答運(yùn)算的Hash結(jié)果更新IV ;S32、由真隨機(jī)數(shù)產(chǎn)生過程利用真隨機(jī)數(shù)種子產(chǎn)生真隨機(jī)數(shù),真隨機(jī)數(shù)產(chǎn)生過程需要更新真隨機(jī)數(shù)種子。優(yōu)選的,步驟S31中,微控器從非易失存儲(chǔ)器中讀取IV并寫入LFSR中作為挑戰(zhàn)產(chǎn)生并記錄一比特應(yīng)答,然后LFSR線性反饋移位產(chǎn)生下一個(gè)挑戰(zhàn)和記錄下一個(gè)應(yīng)答,當(dāng)產(chǎn)生應(yīng)答的位數(shù)與LFSR的位數(shù)一致時(shí),微控器把所記錄的應(yīng)答寫入LFSR中;反復(fù)N次把記錄的應(yīng)答寫入LFSR后,連續(xù)產(chǎn)生RLen比特種子應(yīng)答,種子應(yīng)答與第四參數(shù)運(yùn)算的Hash結(jié)果更新非易失存儲(chǔ)器中的IV,種子應(yīng)答與第三參數(shù)運(yùn)算后的Hash結(jié)果存在易失存儲(chǔ)器的seed單元中作為真隨機(jī)數(shù)的種子,所述RLen是一個(gè)變量,通常RLen取值為n,其中n是DAPUF的階段數(shù),取64較為合適。N則通常需要大于10000,以使IV具有足夠高的不確定性,通過降低芯片的供電電壓可以有效地減少N值的同時(shí)確保IV具有足夠高的不確定性。優(yōu)選的,步驟S32中,微控器首先檢查易失存儲(chǔ)器中的seed單元中是否保存了真隨機(jī)數(shù)種子,如果沒有則調(diào)用真隨機(jī)數(shù)初始化過程,否則將seed單元寫入LFSR中產(chǎn)生一比特應(yīng)答,然后LFSR線性反饋移位,一直產(chǎn)生RLen比特隨機(jī)應(yīng)答;隨機(jī)應(yīng)答與第三參數(shù)異或后的Hash結(jié)果更新易失存儲(chǔ)器中的seed單元,隨機(jī)應(yīng)答與第四參數(shù)運(yùn)算后的Hash結(jié)果輸出作為真隨機(jī)數(shù)。本發(fā)明相對(duì)于現(xiàn)有技術(shù)具有如下的優(yōu)點(diǎn)及效果:(I)因省去了 ECC電路而減少了電路面積。(2)因多數(shù)選舉法的運(yùn)算比ECC快而提高了速度。(3)無需ECC而規(guī)避了 ECC的旁路攻擊問題。(4)當(dāng)PUF用于產(chǎn)生密鑰時(shí),其安全性問題不容忽視。Lee等人在論文LLGSVD04 uK technique to bui Id a cryptographic key in integrated circuits foridentification and authentication applications” (一種在集成電路中產(chǎn)生密鑰用于鑒別和認(rèn)證的技術(shù)方案)中討論APUF的安全性時(shí),提到APUF能有效地抵抗窮搜克隆、碰撞克隆、半入侵探測(cè)等攻擊。本發(fā)明的DAPUF繼承了 APUF的優(yōu)點(diǎn)并改善了獨(dú)一性,因此,APUF能夠抵抗的攻擊,本發(fā)明基于DAPUF構(gòu)造的密鑰和真隨機(jī)數(shù)發(fā)生器DAPUFKR同樣也能夠抵抗。DAPUFKR還能有效地抵抗以下威脅:a)非入侵建模攻擊:Riihrmair等人在論文RSS10“Modeling attacks on physicalunclonable functions”(物理不可克隆模塊的建模攻擊)中,提出收集足夠的挑戰(zhàn)應(yīng)答對(duì),通過建立模型可預(yù)測(cè)APUF和ROPUF的應(yīng)答。DAPUFKR的輸出經(jīng)過Hash函數(shù)處理,攻擊者由于無法計(jì)算Hash函數(shù)的逆而無法建立模型,因此無法通過非入侵建模預(yù)測(cè)DAPUFKR的輸出。b)輔助數(shù)據(jù)泄露:Yu等人在論文YDlO中,指出輔助數(shù)據(jù)可能會(huì)泄露應(yīng)答的部分信息而降低安全性。DAPUFKR的輔助數(shù)據(jù)包含C、K_DAX0R、GXR和HR。GXR是兩組有效應(yīng)答的異或結(jié)果,HR是Hash結(jié)果,均不會(huì)泄露有效信息。K_DAX0R為0時(shí),其對(duì)應(yīng)的比特為無效比特。因此DAPUF的輔助數(shù)據(jù)不會(huì)泄露有效信息。c) SCA =Karakoyunlu 等人在論文 KSlO 中,指出 PUF 存在 ECC-SCA 問題。DAPUFKR無需使用ECC,因此不存在ECC-SCA問題。雖然DAPUFKR使用的Hash函數(shù)也可能會(huì)存在Hash-SCA問題,但DAPUF的Hash函數(shù)可使用密碼芯片上的密碼模塊構(gòu)造,一旦密碼芯片本身的密碼模塊具備抵抗SCA的能力,則DAPUF也可消除Hash-SCA問題。DAPUFKR擁有完全對(duì)稱的結(jié)構(gòu),在處理有效應(yīng)答的過程中保持漢明重量不變,這有效地降低了旁路信息泄露。例如,在算法4中,DAPUFKR需要將同一個(gè)應(yīng)答與另外五個(gè)應(yīng)答異或,但每一個(gè)應(yīng)答中的有效比特均用01表示0,10表示1,這種雙軌結(jié)構(gòu)能有效地減少旁路信息泄露。d)物理入侵攻擊:敵手通過物理入侵在Hash函數(shù)之前搭線竊聽DAPUF的仲裁結(jié)果,然后通過建立模型預(yù)測(cè)DAPUF的仲裁結(jié)果,進(jìn)而可預(yù)測(cè)輔助數(shù)據(jù)中挑戰(zhàn)C對(duì)應(yīng)的密鑰。物理入侵攻擊在理論上可攻破一切密碼芯片,然而,DAPUFKR仍然能夠以低開銷為代價(jià)有效地提高這種攻擊的難度。首先,DAPUF的電路可以方便地和芯片的邏輯電路混在一起,這使得物理入侵攻擊者難以找到竊聽點(diǎn)。第二,將DAPUF中各個(gè)選擇器之間的連線纏繞在芯片的表面,把竊聽點(diǎn)包圍起來,這使得物理入侵攻擊者難以連接竊聽點(diǎn),損壞選擇器之間的連線將會(huì)損壞PUF。第三,基于下一代三維芯片技術(shù),DAPUFKR易于實(shí)現(xiàn)Gassend等人在論文 GDCTD08 “Controlled physical random functions and applications”(控制物理不可克隆模塊及其應(yīng)用)中提出的控制PUF結(jié)構(gòu),例如用多路并行的DAPUF的選擇器和連線形成籠子,把仲裁器、關(guān)鍵的運(yùn)算控制電路和關(guān)鍵的竊聽點(diǎn)包圍在籠子中間,這將進(jìn)一步增加物理入侵攻擊的難度。根據(jù)Maes等人在論文MVlO中的結(jié)論,在忽略非入侵建模攻擊的情況下,硅PUF中的APUF和ROPUF的安全性更好;此外,他們也認(rèn)為O-PUF和C-PUF擁有抗篡改特性(TamperEvident),其中 0-PUF 由 Pappu 等人在論文 PRTG02“Physical one-way functions”(物理不可克隆模塊)中提出,C-PUF則由Tuyls等人在論文TSSVVW06 “Read-proof hardware fromprotective coat ings”(基于覆蓋層防護(hù)的抗讀取硬件)中提出。DAPUF繼承了 APUF的所有優(yōu)點(diǎn),因引入了 Hash函數(shù)而能有效地抵抗非入侵建模攻擊。另外,根據(jù)前述第4)點(diǎn)的討論,我們認(rèn)為DAPUFKR擁有良好的抗篡改特性??紤]現(xiàn)有的密碼芯片均用硅工藝產(chǎn)生,當(dāng)用PUF產(chǎn)生密鑰時(shí),在上述威脅模型之下,我們認(rèn)為DAPUFKR的抗篡改特性并不會(huì)比O-PUF和C-PUF差。表I列出了幾種PUF方案在作為密碼芯片的密鑰生成器時(shí)的安全性。V表示具備該項(xiàng)能力,X表示該項(xiàng)能力不足,?則表示未知是否擁有該項(xiàng)能力。表中的“抗SCA”以密碼芯片采用恰當(dāng)?shù)目筍CA措施作為前提。下表中,Maiti等人在論文MS12 “A RobustPhysical Unclonable Function With Enhanced Chal Ienge-Response Set,,(一種擁有大量挑戰(zhàn)應(yīng)答對(duì)的強(qiáng)壯物理不可克隆模塊)中提出CROM方案。表I PUF作為密鑰生成器時(shí)的安全性
權(quán)利要求
1.一種密鑰和真隨機(jī)數(shù)生成器,其特征在于,包括雙仲裁器物理不可克隆模塊DAPUF、觸發(fā)信號(hào)產(chǎn)生寄存器TReg、應(yīng)答采集寄存器RReg、微控器Controller、線性反饋移位寄存器LFSR、Hash引擎、易失存儲(chǔ)器RAM和非易失存儲(chǔ)器ROM ; 所述雙仲裁器物理不可克隆模塊DAPUF由敏感電路和仲裁電路組成;所述敏感電路包含n個(gè)選擇器,所述選擇器包含上下兩個(gè)輸入端、一個(gè)控制端以及上下兩個(gè)輸出端,n個(gè)選擇器按順序排列,前一個(gè)選擇器的上下兩個(gè)輸出端與后一個(gè)選擇器的上下兩個(gè)輸入端相連接,每個(gè)選擇器的控制端與LFSR中的一比特寄存器相連接;當(dāng)選擇器的控制端輸入為0或者I時(shí),選擇器上輸入端與上輸出端連通以及下輸入端與下輸出端連通,或者上輸入端與下輸出端連通以及下輸入端與上輸出端連通;所述仲裁電路包含正負(fù)兩個(gè)仲裁器,每個(gè)仲裁器均擁有上下兩個(gè)輸入端和一個(gè)輸出端;敏感電路的第n個(gè)選擇器的上下兩個(gè)輸出端分別與正仲裁器的上下兩個(gè)輸入端相連接,正負(fù)兩個(gè)仲裁器的兩個(gè)輸入端交叉連接;DAPUF的n個(gè)選擇器的控制端接收LFSR傳送過來的挑戰(zhàn)C,DAPUF的第一個(gè)選擇器的兩個(gè)輸入端接收觸發(fā)信號(hào)產(chǎn)生寄存器TReg傳送過來的上升沿觸發(fā)信號(hào);LFSR傳送過來的挑戰(zhàn)C決定了敏感電路的上下兩路信號(hào)的一種特定通路狀態(tài),兩路上升沿觸發(fā)信號(hào)沿著這種特定通路狀態(tài)的兩條通路最終送到正仲裁器和負(fù)仲裁器;正負(fù)兩個(gè)仲裁器根據(jù)上下兩路上升沿觸發(fā)信號(hào)到達(dá)的先后順序決定其輸出,如果某個(gè)仲裁器的上輸入端的上升沿比下輸入端的上升沿先到達(dá),則該仲裁器輸出1,否則輸出0 ;稱DAPUF的輸出為應(yīng)答,正負(fù)兩個(gè)仲裁器的應(yīng)答存入應(yīng)答采集寄存器RReg中; 所述觸發(fā)信號(hào)產(chǎn)生寄存器TReg由兩比特寄存器組成,其中一比特寄存器連接DAPUF敏感電路的第一個(gè)選擇器的上輸入端,另一比特寄存器連接DAPUF敏感電路第一個(gè)選擇器的下輸入端,在微控器Controller的控制下向TReg寫入00和寫入11,從而為DAPUF的敏感電路提供上升沿觸發(fā)信號(hào); 所述應(yīng)答采集寄存器RReg由兩比特寄存器組成,一比特寄存器接收DAPUF的正仲裁應(yīng)答,另一比特寄存器接收DAPUF的負(fù)仲裁應(yīng)答,RReg所采集的應(yīng)答交給微控器Controller處理; 所述微控器Controller用于讀取存放在非易失存儲(chǔ)器ROM中的輔助數(shù)據(jù)中的挑戰(zhàn)C寫入LFSR、控制LFSR線性反饋移位產(chǎn)生DAPUF的挑戰(zhàn)、控制觸發(fā)信號(hào)產(chǎn)生寄存器TReg產(chǎn)生DAPUF的上升沿觸發(fā)信號(hào)、從應(yīng)答采集寄存器RReg讀取并處理DAPUF的應(yīng)答、控制Hash引擎運(yùn)算并讀寫易失存儲(chǔ)器RAM和非易失存儲(chǔ)器R0M,密鑰和真隨機(jī)數(shù)的產(chǎn)生也在微控器Controller的控制下完成; 所述線性反饋移位寄存器LFSR用于存放微控器ContoolIer送來的挑戰(zhàn)C,并在微控器的控制下線性反饋移位產(chǎn)生DAPUF的挑戰(zhàn); 所述Hash引擎包含4個(gè)參數(shù),所述每個(gè)參數(shù)均是一個(gè)任意隨機(jī)數(shù),其中第一參數(shù)與DAPUF的應(yīng)答運(yùn)算后由Hash引擎處理產(chǎn)生輔助數(shù)據(jù)中的應(yīng)答單向結(jié)果HR,第二參數(shù)與DAPUF的應(yīng)答運(yùn)算后由Hash引擎處理產(chǎn)生密鑰,第三參數(shù)與DAPUF的應(yīng)答運(yùn)算后由Hash引擎處理產(chǎn)生和更新隨機(jī)種子Seed,第四參數(shù)與DAPUF的應(yīng)答運(yùn)算后經(jīng)Hash引擎處理,所得的結(jié)果用于更新真隨機(jī)數(shù)初始向量IV以及作為真隨機(jī)數(shù)使用;所述參數(shù)的運(yùn)算是異或或者連接運(yùn)算,當(dāng)用加密算法構(gòu)造Hash引擎時(shí),則所述參數(shù)的運(yùn)算是指參數(shù)作為密鑰或者明文參與加密運(yùn)算;所述易失存儲(chǔ)器RAM用于存儲(chǔ)微控器Controller運(yùn)算過程中的臨時(shí)變量; 所述非易失存儲(chǔ)器ROM用于存儲(chǔ)生成密鑰所需要的輔助數(shù)據(jù)和產(chǎn)生真隨機(jī)數(shù)的初始向量IV。
2.根據(jù)權(quán)利要求1所述的密鑰和真隨機(jī)數(shù)生成器生成密鑰的方法,其特征在于,包括下述步驟: 511、執(zhí)行密鑰初始化,產(chǎn)生生成密鑰的輔助數(shù)據(jù)并且把輔助數(shù)據(jù)保存在非易失存儲(chǔ)器ROM 中; 512、由密鑰重建過程產(chǎn)生密鑰,密鑰重建過程基于密鑰初始化時(shí)產(chǎn)生并保存的輔助數(shù)據(jù)中的挑戰(zhàn)C找到多數(shù)選舉法所需要的應(yīng)答,然后通過多數(shù)選舉法選舉出重建應(yīng)答,輸出重建應(yīng)答與第二參數(shù)運(yùn)算后的Hash結(jié)果作為密鑰。
3.根據(jù)權(quán)利要求2所述的密鑰和真隨機(jī)數(shù)生成器生成密鑰的方法,其特征在于,步驟Sll中,初始化具體為:測(cè)量多個(gè)挑戰(zhàn)的DAPUF應(yīng)答,每一個(gè)挑戰(zhàn)對(duì)應(yīng)正仲裁應(yīng)答和負(fù)仲裁應(yīng)答各一比特,以及一比特正負(fù)仲裁異或結(jié);多個(gè)挑戰(zhàn)中的第一個(gè)挑戰(zhàn)C由微控器Controller寫入LFSR中,從第二個(gè)挑戰(zhàn)開始由LFSR線性反饋移位產(chǎn)生,一直到產(chǎn)生足夠的有效比特為止,所述的有效比特是為I時(shí)對(duì)應(yīng)的正仲裁應(yīng)答;密鑰初始化時(shí)需要產(chǎn)生Len* (K+1)比特有效應(yīng)答,所述的Len是所產(chǎn)生密鑰的長(zhǎng)度,K是多數(shù)選舉法的選舉次數(shù),K是一個(gè)基數(shù);有效應(yīng)答分成K+1組,其中第一組分別與第二到第K+1組異或,所得的K組異或結(jié)果形成分組異或結(jié)果GXR ;密鑰初始化后需要把(C,K_DAX0R, GXR)作為輔助數(shù)據(jù)保存在非易失存儲(chǔ)器ROM中。
4.根據(jù)權(quán)利要求3所述的密鑰和真隨機(jī)數(shù)生成器生成密鑰的方法,其特征在于,步驟S12中,密鑰重建過程首先將輔助數(shù)據(jù)中的挑戰(zhàn)C寫入LFSR,然后根據(jù)K_DAX0R找到第Len+1號(hào)有效比特對(duì)應(yīng)的挑戰(zhàn),整個(gè)密鑰重建過程僅測(cè)量和記錄第Len+1號(hào)到Len* (K+1)號(hào)有效應(yīng)答;將密鑰重建過程得到的L en*K比特應(yīng)答分成K組與輔助數(shù)據(jù)中的GXR異或,所得到的K組候選數(shù)據(jù)通過多數(shù)選舉法產(chǎn)生重建應(yīng)答;所述的多數(shù)選舉法是指候選數(shù)據(jù)中的順序號(hào)為L(zhǎng)en*0+l,Len*l+l,…,Len*K+l對(duì)應(yīng)的值中,如果0出現(xiàn)的次數(shù)多則重建應(yīng)答的第I比特為0,否則重建應(yīng)答的第I比特為I,如此類推產(chǎn)生第2到第Len比特重建應(yīng)答;輸出Len比特重建應(yīng)答與第二參數(shù)運(yùn)算后的Hash結(jié)果作為密鑰并結(jié)束重建過程。
5.根據(jù)權(quán)利要求4所述的密鑰和真隨機(jī)數(shù)生成器生成密鑰的方法,其特征在于,步驟Sll中的GXR除包含有效正仲裁應(yīng)答的異或結(jié)果,也包含對(duì)應(yīng)的有效負(fù)仲裁應(yīng)答的異或結(jié)果;此外,將第I到第Len比特有效正仲裁應(yīng)答與參數(shù)I運(yùn)算后的Hash結(jié)果HR作為輔助數(shù)據(jù),從而使得輔助數(shù)據(jù)變成(C,K_DAX0R, GXR, HR);步驟S12中用多數(shù)選舉法選舉出有效正仲裁應(yīng)答和有效負(fù)仲裁應(yīng)答,選舉后并不直接結(jié)束重建過程,而是再進(jìn)一步降低噪聲,其具體步驟如下: S21:如果有效正仲裁應(yīng)答與第一參數(shù)運(yùn)算后的Hash結(jié)果與輔助數(shù)據(jù)中的HR相等,則有效正仲裁應(yīng)答與第二參數(shù)運(yùn)算后的Hash結(jié)果作為密鑰并結(jié)束重建過程; S22:選舉出的有效正仲裁應(yīng)答和有效負(fù)仲裁應(yīng)答異或,得到Len比特正負(fù)仲裁異或結(jié)果DAXOR,DAXOR中為0的比特意味著要么對(duì)應(yīng)位置的有效正仲裁應(yīng)答出錯(cuò),要么對(duì)應(yīng)位置的有效負(fù)仲裁應(yīng)答出錯(cuò);設(shè)DAXOR中有g(shù)比特為0,則有效正仲裁應(yīng)答可能在DAXOR為0相應(yīng)的位置出現(xiàn)g比特錯(cuò)誤,由此可以得到并記錄2s種有效正仲裁應(yīng)答的可能取值,對(duì)每一種可能取值,與第一參數(shù)運(yùn)算后的Hash結(jié)果如果等于HR,則將該可能取值與第二參數(shù)運(yùn)算的Hash結(jié)果作為密鑰并結(jié)束重建過程; 523:對(duì)步驟S22中記錄的每一種可能的有效正仲裁應(yīng)答,每次取反其中的一比特得到FLR,把每一個(gè)FLR與第一參數(shù)運(yùn)算后計(jì)算其Hash結(jié)果,將Hash結(jié)果與輔助數(shù)據(jù)中的HR比較,相等則將FLR與第二參數(shù)運(yùn)算的Hash結(jié)果作為密鑰并結(jié)束重建過程; 524:輸出重建失敗提不信息。
6.根據(jù)權(quán)利要求5所述的密鑰和真隨機(jī)數(shù)生成器生成密鑰的方法,其特征在于,K_DAXOR中包含多個(gè)比特0和1,為0時(shí)對(duì)應(yīng)無效挑戰(zhàn)和無效應(yīng)答,為I時(shí)對(duì)應(yīng)有效挑戰(zhàn)和有效應(yīng)答,對(duì)K_DAX0R中的每一比特LFSR都線性反饋移位一次;當(dāng)K_DAX0R中某一比特為I時(shí),有效挑戰(zhàn)序號(hào)加I ;當(dāng)有效挑戰(zhàn)序號(hào)一直加到Len+1時(shí),LFSR中的值就是第Len+1號(hào)有效比特對(duì)應(yīng)的挑戰(zhàn)。
7.根據(jù)權(quán)利要求6所述的密鑰和真隨機(jī)數(shù)生成器生成密鑰的方法,其特征在于,在步驟Sll所述的密鑰初始化中,其輔助數(shù)據(jù)的K_DAX0R中包含多個(gè)比特0和1,計(jì)算K_DAX0R的比特總順序號(hào)和有效順序號(hào);對(duì)K_DAX0R中的每一比特,無論其值為0還是為I,總順序號(hào)均加I ;K_DAX0R中為I的比特為有效比特,對(duì)每一比特有效比特,有效順序號(hào)均加I ;令有效順序號(hào)為L(zhǎng)en+1之前的比特的總順序號(hào)為TN0,丟棄K_DAX0R前面的TNO比特,僅從有效順序號(hào)為L(zhǎng)en+1的位置開始保存K_DAX0R,并且保存TNO作為輔助數(shù)據(jù),所需要保存的輔助數(shù)據(jù)為(C,K_DAX0R, GXR, HR, TNO)。
8.根據(jù)權(quán)利要求7所述的密鑰和真隨機(jī)數(shù)生成器生成密鑰的方法,其特征在于,在步驟S12所述的密鑰重建中,微控器Controller將輔助數(shù)據(jù)中的挑戰(zhàn)C寫入LFSR中,統(tǒng)計(jì)LFSR的線性反饋移位次數(shù),當(dāng)線性反饋移位的次數(shù)等于輔助數(shù)據(jù)中的TNO時(shí),此時(shí)LFSR中的值就是重建過程需要獲取的第一比特有效應(yīng)答所對(duì)應(yīng)的挑戰(zhàn)。
9.根據(jù)權(quán)利要求1所述的密鑰和真隨機(jī)數(shù)生成器生成真隨機(jī)數(shù)的方法,其特征在于,包括下述步驟: 531、真隨機(jī)數(shù)初始化過程利用ROM中的真隨機(jī)數(shù)初始向量IV產(chǎn)生種子應(yīng)答和真隨機(jī)數(shù)種子,并用第四參數(shù)與種子應(yīng)答運(yùn)算的Hash結(jié)果更新IV ; 532、由真隨機(jī)數(shù)產(chǎn)生過程利用真隨機(jī)數(shù)種子產(chǎn)生真隨機(jī)數(shù),真隨機(jī)數(shù)產(chǎn)生過程需要更新真隨機(jī)數(shù)種子。
10.根據(jù)權(quán)利要求9所述的密鑰和真隨機(jī)數(shù)生成器生成真隨機(jī)數(shù)的方法,其特征在于,步驟S31中,微控器從非易失存儲(chǔ)器中讀取IV并寫入LFSR中作為挑戰(zhàn)產(chǎn)生并記錄一比特應(yīng)答,然后LFSR線性反饋移位產(chǎn)生下一個(gè)挑戰(zhàn)和記錄下一個(gè)應(yīng)答,當(dāng)產(chǎn)生應(yīng)答的位數(shù)與LFSR的位數(shù)一致時(shí),微控器把所記錄的應(yīng)答寫入LFSR中;反復(fù)N次把記錄的應(yīng)答寫入LFSR后,連續(xù)產(chǎn)生RLen比特種子應(yīng)答,種子應(yīng)答與第四參數(shù)運(yùn)算的Hash結(jié)果更新非易失存儲(chǔ)器中的IV,種子應(yīng)答與第三參數(shù)運(yùn)算后的Hash結(jié)果存在易失存儲(chǔ)器的seed單元中作為真隨機(jī)數(shù)的種子。
11.根據(jù)權(quán)利要求10所述的密鑰和真隨機(jī)數(shù)生成器生成真隨機(jī)數(shù)的方法,其特征在于,步驟S32中,微控器首先檢查易失存儲(chǔ)器中的seed單元中是否保存了真隨機(jī)數(shù)種子,如果沒有則調(diào)用真隨機(jī)數(shù)初始化過程,否則將seed單元寫入LFSR中產(chǎn)生一比特應(yīng)答,然后LFSR線性反饋移位,一直產(chǎn)生RLen比特隨機(jī)應(yīng)答;隨機(jī)應(yīng)答與第三參數(shù)異或后的Hash結(jié)果更新易失存儲(chǔ)器中的seed單元,隨機(jī)應(yīng)答與第四參數(shù)運(yùn)算后的Hash結(jié)果輸出作為真隨 機(jī)數(shù)。
全文摘要
本發(fā)明公開了一種密鑰和真隨機(jī)數(shù)發(fā)生器及生成密鑰和真隨機(jī)數(shù)的方法,發(fā)生器包括雙仲裁器物理不可克隆模塊DAPUF、觸發(fā)信號(hào)產(chǎn)生寄存器TReg、應(yīng)答采集寄存器RReg、微控器、LFSR、Hash引擎、易失存儲(chǔ)器和非易失存儲(chǔ)器。本發(fā)明的另一目的是提供密鑰和真隨機(jī)數(shù)的生成方法,包括(1)密鑰初始化過程;(2)密鑰重建過程;(3)真隨機(jī)數(shù)初始化過程;(4)真隨機(jī)數(shù)產(chǎn)生過程。本發(fā)明通過利用DAPUF的應(yīng)答結(jié)合所提的步驟生成密鑰和真隨機(jī)數(shù)1)生成密鑰的誤碼率由DAPUF的噪聲和多數(shù)選舉法的選舉次數(shù)決定,可以不受限制地降低生成密鑰的誤碼率;2)N次更新LFSR使隨機(jī)種子成為一個(gè)不確定的熵源,由不確定熵源作為挑戰(zhàn)產(chǎn)生的應(yīng)答經(jīng)Hash處理后使輸出的真隨機(jī)數(shù)滿足偽隨機(jī)性。
文檔編號(hào)H04L9/08GK103188075SQ20131004162
公開日2013年7月3日 申請(qǐng)日期2013年2月1日 優(yōu)先權(quán)日2013年2月1日
發(fā)明者鄒候文, 彭俊好, 唐春明, 董軍武, 張世渡, 龔征, 蘇胡雙, 黃東亮, 劉煒煒 申請(qǐng)人:廣州大學(xué), 深圳視融達(dá)科技有限公司, 華南師范大學(xué), 鄒候文
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1
宜阳县| 平潭县| 蚌埠市| 法库县| 临安市| 陇西县| 江油市| 鲜城| 崇明县| 灵山县| 三原县| 张家口市| 汉寿县| 海晏县| 洮南市| 巨野县| 芜湖市| 客服| 启东市| 淮北市| 张家口市| 衢州市| 合阳县| 合江县| 荣成市| 建瓯市| 会宁县| 开江县| 康马县| 始兴县| 和平区| 玛纳斯县| 加查县| 石家庄市| 芜湖市| 扎囊县| 深圳市| 景宁| 福安市| 北碚区| 新民市|