新四季網

一種基於SRAM‑PUF的模糊保險箱的密鑰存儲方法與流程

2023-08-11 16:40:42 4


本發明涉及信息安全技術領域,尤其涉及一種基於sram-puf的密鑰存儲機制。



背景技術:

現存的密碼學安全機制大都基於eeprom,flash等非易失性寄存器(non-volatilememory,nvm)進行安全認證與密鑰存儲。然而,基於nvm的存儲機制需要在集成電路製造過程中加入浮柵電晶體工藝,增加製造成本。同時,nvm存儲機制易受侵入式攻擊等多種物理攻擊的威脅。因此如何在低成本的嵌入式設備中實現高安全性的密鑰存儲是亟需解決的關鍵問題之一。

物理不可克隆函數(physicalunclonablefunctions,pufs)作為一種全球新興的信息安全機制,具有低成本、高安全的特點,正在成為主流的信息安全產業的支撐,能夠有效解決上述問題。pufs的本質是一種「晶片指紋」,該「指紋」來源於難以控制、無法預測、不可克隆的晶片製造差異,能夠抵禦針對nvm的物理攻擊。

基於以上分析,pufs在嵌入式設備中可用於替代nvm存儲機制進行密鑰、id存儲。但是,目前存在的基於pufs密鑰存儲機制存在密鑰難以更新的問題:基於pufs的密鑰存儲機制的本質在於從pufs固有的「晶片指紋」中提取密鑰。然而,在密鑰失效、到達生命周期等場景下需要動態的更新密鑰,pufs電路顯然難以滿足這一需求。而加入可重構pufs則需要進行專用集成電路設計,增加成本。



技術實現要素:

本發明旨在解決上述問題,提出一種可以動態更新的密鑰存儲機制,創新性的將pufs的模糊性與密鑰的精確性結合加密存儲。本發明的目的在於提供一種基於sram-puf的模糊保險箱密鑰存儲方案,本方案中,密鑰來源於密鑰管理系統或其他密鑰生成機制,pufs僅用於保護該密鑰,將密鑰儲存於模糊保險箱中,確保密鑰的安全性。密鑰可以任意更新,更具靈活性。

本發明多次採集sram晶片的上電值,若sram某一單元連續兩次上電值不同,則算作該單元一次震蕩,通過設置參數震蕩次數閾值,可以篩選出sram晶片中的震蕩點。根據sram晶片的特性,對於同一塊sram晶片來說,其震蕩點的地址基本不變,只有很小差異,而不同sram晶片的震蕩點地址差異巨大。因此本發明將sram晶片中的震蕩點地址作為特徵模板構造模糊保險箱,同時利用存儲密鑰構造多項式,將密鑰安全的存儲在模糊保險箱中。

本發明具體採用如下技術方案:

註冊階段:

第1步,將待存儲密鑰k與sram晶片匹配,使每塊sram晶片僅對應一個密鑰k。

第2步,插入sram晶片,採集sram晶片的p次上電值,篩選出sram晶片中震蕩次數(若sram某一單元連續兩次的上電值不同,則算作一次震蕩)大於f的單元作為震蕩點並記錄其地址。

第3步,對待存儲密鑰k進行crc編碼得到kcrc,將kcrc平均分為d+1段並將所述d+1段的值依次作為係數,構造d級多項式p(x);

第4步,構造真實點橫坐標:根據所述真實點個數m確定所需特徵信息的數量,選取m個震蕩點並將m個震蕩點的地址轉化到有限域gf(216)中並作為xi(i=1,2,3....m),利用xi構造特徵模板a={xi|xi∈gf(216),i=1,2,3…,m}

第5步,構造真實點集合:將第4步所述m個真實點分別帶入第3步中所述d級多項式p(x),得到真實點坐標p(xi)(i=1,2,3,...,m),將所述真實點坐標(xi,p(xi))(i=1,2,3,...,m)組合為真實點集合q;

第6步,構造雜湊點集合:利用隨機數發生器隨機生成n個雜湊點坐標(vj,wj)(j=1,2,3,4......n)作為雜湊點集合q』,雜湊點坐標範圍和真實點坐標範圍相同。

第7步,對真實點縱坐標p(xi)和雜湊點縱坐標wj進行bch糾錯編碼,使得該縱坐標出現錯誤時可以將其糾正,經bch編碼後得到(p(xi))bch和(wj)bch,第8步,構造細節點,將所述真實點橫坐標按照位寬對半拆分,得到高位真實點橫坐標和低位真實點橫坐標,將所述高位真實點橫坐標和低位真實點橫坐標組合為真實細節點(xhi,xli)(i=1,2,3,4.....m);將所述雜湊點橫坐標按照位寬對半拆分,得到高位雜湊點橫坐標和低位雜湊點橫坐標,將所述高位雜湊點橫坐標和低位雜湊點橫坐標組合為雜湊細節點(vhj,vlj)(j=1,2,3,4.....n)。

第9步,構造細節點描述子:對每一個真實細節點(xhi,xli)和每一個雜湊細節點(vhj,vlj)。依次進行如下步驟:以所述真實細節點(xhi,xli)或所述雜湊細節點(vhj,vlj)為中心按照一定規律(規律由註冊者自由選取)選取k個細節點描述子,獲取所述每個細節點描述子周圍t個地址所對應的數值,並依次將所述k個細節點描述子周圍的t個地址所對應的k*tbit數值按照先行後列的順序排列,構造得到真實點細節點描述子數據mi′(xhi,xli))和雜湊點細節點描述子數據mi′(vhj,vlj))。

第10步,計算幫助數據:將所述每一個真實點縱坐標糾錯碼與該真實點縱坐標糾錯碼所對應的描述子數據對應的低位進行異或,將所述每一個雜湊點縱坐標糾錯碼與該雜湊點縱坐標糾錯碼所對應的描述子數據對應的低位進行異或,得到真實點幫助數據hreal和雜湊點幫助數據hchaff。

第11步,構造模糊保險箱:將所述真實點橫坐標xi(i=1,2,3,…,m),雜湊點橫坐標vj(j=1,2,3,…,n)和所述與其對應幫助數據hrealhchaff組合為坐標(xi,hreal)和(vj,hchaff),將其構成模糊保險箱,並將所述模糊保險箱坐標按照真實點橫坐標和雜湊點橫坐標的數值升序排列,組合為模糊保險箱v,將所述模糊保險箱v存儲至所述認證資料庫。

重構階段:

第1步,用戶插入sram晶片,系統讀取p次sram上電特性,篩選出sram晶片中震蕩次數(若sram某一單元連續兩次的上電值不同,則算作一次震蕩)大於f的單元作為震蕩點並記錄其地址構造震蕩點集合zd。

第2步,將震蕩點集合zd與模糊保險箱中坐標點的橫坐標做對比,篩選出模糊保險箱橫坐標和集合zd重合的坐標點構造重構真實點模板由於sram晶片中震蕩點的位置比較固定(約有80%-90%震蕩點位置固定),若用戶使用合法sram晶片,可從模糊保險箱中對比出l個坐標點作為重構真實點模板qd(由於sram-puf的響應誤差,不能保證每次採集的震蕩點完全一致,l<m)。

第3步,構造細節點:將第2步中篩選出的重構真實點橫坐標xdo按照位寬對半拆分,得到高位真實點橫坐標xdho和低位真實點橫坐標xdlo,將所述高位真實點橫坐標和低位真實點橫坐標組合為真實點細節點(xdho,xdlo)(o=1,2,3,4.....l)並映射在sram晶片坐標系中;

第4步,構造細節點描述子:對每一個真實細節點(xdho,xdlo)依次進行如下步驟:以所述真實細節點(xdho,xdlo)按照一定規律(規律由註冊者自由選取)選取k個細節點描述子,獲取所述每個細節點描述子周圍t個地址所對應的數值,並依次將所述k個細節點描述子周圍的t個地址所對應的k*tbit數值按照先行後列的順序排列,構造得到細節點描述子數據mi′(xdho,xdlo);

第5步,將所述細節點描述子數據與真實點對應的幫助數據進行異或操作,獲取重構真實點經過糾錯編碼後的坐標

第6步,將糾錯編碼後的縱坐標進行糾錯碼解碼,獲得重構真實點坐標集合qp={(xdo,p(xdo))|o=1,…,l}。

第7步,重構多項式p(x):從集合qp中選取d+1個坐標,利用拉格朗日插值法重構多項式,取多項式的係數則可獲得步驟1-3中提到的kcrc,將kcrc進行crc校驗後可得到步驟1-1中使用的待存儲密鑰,至此完成密鑰的獲取。

有益效果

本方法利用待存儲密鑰構造模糊保險箱算法中加密多項式,將sram-puf作為特徵模板構造真實點並將真實點加密到多項式中從而構成模糊保險箱。由於不同sram晶片中震蕩點位置差異極大,而同一塊sram晶片的震蕩點位置大致相同,只有極小偏差,因此利用sram晶片這一特性構造模糊保險箱。

同時,本方法將密鑰加密到多項式中,而後添加無規律雜湊點,同時確保模糊保險箱中任意兩個點之間距離大於某一特定值,該特定值由設計者自行選取,使得攻擊者只能採取暴力攻擊方法破解,極大的提高了密鑰存儲的安全性。同時由於sram-puf的不可克隆特性,獲取密鑰必須持有該密鑰對應的sram晶片,這就使得誤識率(指用戶b使用其sram晶片獲取用戶a密鑰的概率)大大降低。

本方法使用sram-puf構造模糊保險箱,相比於基於生物特徵的模糊保險箱,不需要進行一系列圖像處理環節,精簡了流程,節約了很多資源。

附圖說明

圖1為根據本發明實施例所述sram-puf模糊保險箱密鑰存儲方法的總流程圖;

圖2為根據本發明實施例所述的註冊階段和重構階段採集的sram晶片中震蕩點的分布圖;

圖3為根據本發明實施例所述的細節點、細節點描述子以及細節點描述子數據之間的位置關係示意圖;

圖4為根據本發明實施例所述的sram-puf模糊保險箱的密鑰存儲方法的整體流程示意圖;

圖5為根據本發明實施例所述的特徵模板a的示意圖。

具體實施方式

以下結合附圖對本發明的優選實施例進行說明,應當理解,此處所描述的優選實施例僅用於說明和解釋本發明,並不用於限定本發明。

本實例中待存儲密鑰長度為128bit,真實點數目m=25,雜湊點數目n=200,多項式級數d=8。

圖4為根據本發明實施例所述的sram-puf模糊保險箱的密鑰存儲方法的整體流程示意圖包括註冊和重構兩個階段。所述註冊階段,在安全環境下將密鑰存儲於模糊保險箱中;所述重構階段,在應用環境中可從模糊保險箱中提取指定密鑰。

如圖1所示,所述註冊階段具體註冊過程為:

第1步,將待存儲密鑰與sram晶片匹配,使每一塊sram晶片對應一個待存儲密鑰

第2步,採集sram晶片100次上電值,分析上電值,若某個單元連續兩次的上電值不同則記為該單元一次震蕩。篩選出sram中震蕩次數大於15次的單元作為震蕩點並記錄其地址。

第3步,對128bit待存儲密鑰進行crc編碼,得到編碼結果kcrc(長度為144bit),將編碼結果平均分為9段並將所述9段的值依次作為係數,構造8級多項式p(x);

第4步,構造真實點橫坐標:從所述第2步得到的震蕩點中隨機選取25個震蕩點並將其地址作為特徵模板a={xi|xi∈gf(216),i=1,2,3…,m}。圖5為根據本發明實施例所述的特徵模板a的示意圖。

第5步,構造真實點集合:將第4步所述特徵模板a={xi|xi∈gf(216),i=1,2,3…,m}分別帶入第3步中所述8級多項式p(x),得到真實點坐標(xi,p(xi))(i=1,2,3,...,25),將所述真實點坐標(xi,p(xi))(i=1,2,3,...,25)組合為真實點集合;

第6步,構造雜湊點集合:利用隨機數發生器隨機生成200個雜湊點坐標(vj,wj)(j=1,2,3,4......200)。雜湊點坐標範圍和真實點坐標範圍相同。

第7步,對真實點縱坐標p(xi)和雜湊點縱坐標wj進行bch糾錯編碼,使得該縱坐標出現錯誤時可以將其糾正,經bch編碼後得到(p(xi))bch和(wj)bch,

第8步,構造細節點,將所述真實點橫坐標按照位寬對半拆分,得到高位真實點橫坐標和低位真實點橫坐標,將所述高位真實點橫坐標和低位真實點橫坐標組合為真實細節點(xhi,xli)(i=1,2,3,4.....25);將所述雜湊點橫坐標按照位寬對半拆分,得到高位雜湊點橫坐標和低位雜湊點橫坐標,將所述高位雜湊點橫坐標和低位雜湊點橫坐標組合為雜湊細節點(vhj,vlj)(j=1,2,3,4.....200)。

第9步,構造細節點描述子:對每一個真實細節點(xhi,xli)和每一個雜湊細節點(vhj,vlj)。依次進行如下步驟:以所述真實細節點(xhi,xli)或所述雜湊細節點(vhj,vlj)為中心按照圖3選取100個細節點描述子,獲取所述每個細節點描述子周圍8個地址所對應的數值,並依次將所述100個細節點描述子周圍的8個地址所對應的100*8bit數值按照先行後列的順序排列,構造得到細節點描述子數據,q=1,2,3,…,225;

第11步,計算幫助數據:將所述每一個真實點縱坐標糾錯碼與該真實點縱坐標糾錯碼所對應的描述子數據對應的低位進行異或,將所述每一個雜湊點縱坐標糾錯碼與該雜湊點縱坐標糾錯碼所對應的描述子數據對應的低位進行異或,得到真實點幫助數據hreal和雜湊點幫助數據hchaff。

第12步,構造模糊保險箱:將所述真實點橫坐標xi=1,2,3,…,25,雜湊點橫坐標vj=1,2,3,…,200和所述幫助數據hrealhchaff組合為模糊保險箱坐標(xi,hreal)和(vj,hchaff),並將所有模糊保險箱坐標按照橫坐標和雜湊點橫坐標的數值升序排列,組合為模糊保險箱v,將所述模糊保險箱v存儲至所述認證資料庫。

重構階段:

第1步,用戶插入sram晶片,系統採集sram晶片100次上電值,篩選出震蕩次數大於15次的震蕩點,圖2為根據本發明實施例所述的註冊階段和重構階段採集的sram晶片中震蕩點的分布圖。

第2步,將震蕩點集合zd與模糊保險箱中坐標點的橫坐標做對比,篩選出模糊保險箱橫坐標和集合zd重合的坐標點構造重構真實點模板若用戶使用合法sram晶片,由於sram晶片中震蕩點的位置比較固定,因此可以從模糊保險箱中對比得到l個真實點(由於sram-puf的響應誤差,大約可以篩選出80%~90%的真實點,因此9<l<25)。

第3步,構造細節點,將所述重構真實點橫坐標xdo按照位寬對半拆分,得到高位真實點橫坐標和低位真實點橫坐標,將所述高位真實點橫坐標和低位真實點橫坐標組合為重構真實細節點(xdho,xdlo)(o=1,2,3,4.....l);

第4步,構造細節點描述子:對每一個重構真實細節點(xdho,xdlo)依次進行如下步驟:以所述重構真實細節點(xdho,xdlo)按照一定規律(規律由註冊者自由選取)選取100個細節點描述子,獲取所述每個細節點描述子周圍8個地址所對應的數值,並依次將所述k個細節點描述子周圍的t個地址所對應的100*8bit數值按照先行後列的順序排列,構造得到細節點描述子數據mi′(xdho,xdlo);

第5步,將所述細節點描述子數據與重構真實點對應的幫助數據進行異或操作,獲取每個真實點經過糾錯編碼後的縱坐標。

第6步,將糾錯編碼後的縱坐標進行糾錯碼解碼,從而獲得真實點坐標集合qp={(xdo,p(xdo))|o=1,…,l}。

第7步,重構多項式p(x):從集合qp中任意選取9個真實點坐標,使用拉格朗日插值法重構多項式p(x),取重構多項式的係數則可獲得步驟1-3中提到的kcrc,將kcrc進行crc校驗後可得到步驟1-1中使用的待存儲密鑰,至此完成密鑰的獲取。

同类文章

一種新型多功能組合攝影箱的製作方法

一種新型多功能組合攝影箱的製作方法【專利摘要】本實用新型公開了一種新型多功能組合攝影箱,包括敞開式箱體和前攝影蓋,在箱體頂部設有移動式光源盒,在箱體底部設有LED脫影板,LED脫影板放置在底板上;移動式光源盒包括上蓋,上蓋內設有光源,上蓋部設有磨沙透光片,磨沙透光片將光源封閉在上蓋內;所述LED脫影

壓縮模式圖樣重疊檢測方法與裝置與流程

本發明涉及通信領域,特別涉及一種壓縮模式圖樣重疊檢測方法與裝置。背景技術:在寬帶碼分多址(WCDMA,WidebandCodeDivisionMultipleAccess)系統頻分復用(FDD,FrequencyDivisionDuplex)模式下,為了進行異頻硬切換、FDD到時分復用(TDD,Ti

個性化檯曆的製作方法

專利名稱::個性化檯曆的製作方法技術領域::本實用新型涉及一種檯曆,尤其涉及一種既顯示月曆、又能插入照片的個性化檯曆,屬於生活文化藝術用品領域。背景技術::公知的立式檯曆每頁皆由月曆和畫面兩部分構成,這兩部分都是事先印刷好,固定而不能更換的。畫面或為風景,或為模特、明星。功能單一局限性較大。特別是畫

一種實現縮放的視頻解碼方法

專利名稱:一種實現縮放的視頻解碼方法技術領域:本發明涉及視頻信號處理領域,特別是一種實現縮放的視頻解碼方法。背景技術: Mpeg標準是由運動圖像專家組(Moving Picture Expert Group,MPEG)開發的用於視頻和音頻壓縮的一系列演進的標準。按照Mpeg標準,視頻圖像壓縮編碼後包

基於加熱模壓的纖維增強PBT複合材料成型工藝的製作方法

本發明涉及一種基於加熱模壓的纖維增強pbt複合材料成型工藝。背景技術:熱塑性複合材料與傳統熱固性複合材料相比其具有較好的韌性和抗衝擊性能,此外其還具有可回收利用等優點。熱塑性塑料在液態時流動能力差,使得其與纖維結合浸潤困難。環狀對苯二甲酸丁二醇酯(cbt)是一種環狀預聚物,該材料力學性能差不適合做纖

一種pe滾塑儲槽的製作方法

專利名稱:一種pe滾塑儲槽的製作方法技術領域:一種PE滾塑儲槽一、 技術領域 本實用新型涉及一種PE滾塑儲槽,主要用於化工、染料、醫藥、農藥、冶金、稀土、機械、電子、電力、環保、紡織、釀造、釀造、食品、給水、排水等行業儲存液體使用。二、 背景技術 目前,化工液體耐腐蝕貯運設備,普遍使用傳統的玻璃鋼容

釘的製作方法

專利名稱:釘的製作方法技術領域:本實用新型涉及一種釘,尤其涉及一種可提供方便拔除的鐵(鋼)釘。背景技術:考慮到廢木材回收後再加工利用作業的方便性與安全性,根據環保規定,廢木材的回收是必須將釘於廢木材上的鐵(鋼)釘拔除。如圖1、圖2所示,目前用以釘入木材的鐵(鋼)釘10主要是在一釘體11的一端形成一尖

直流氧噴裝置的製作方法

專利名稱:直流氧噴裝置的製作方法技術領域:本實用新型涉及ー種醫療器械,具體地說是ー種直流氧噴裝置。背景技術:臨床上的放療過程極易造成患者的局部皮膚損傷和炎症,被稱為「放射性皮炎」。目前對於放射性皮炎的主要治療措施是塗抹藥膏,而放射性皮炎患者多伴有局部疼痛,對於止痛,多是通過ロ服或靜脈注射進行止痛治療

新型熱網閥門操作手輪的製作方法

專利名稱:新型熱網閥門操作手輪的製作方法技術領域:新型熱網閥門操作手輪技術領域:本實用新型涉及一種新型熱網閥門操作手輪,屬於機械領域。背景技術::閥門作為流體控制裝置應用廣泛,手輪傳動的閥門使用比例佔90%以上。國家標準中提及手輪所起作用為傳動功能,不作為閥門的運輸、起吊裝置,不承受軸向力。現有閥門

用來自動讀取管狀容器所載識別碼的裝置的製作方法

專利名稱:用來自動讀取管狀容器所載識別碼的裝置的製作方法背景技術:1-本發明所屬領域本發明涉及一種用來自動讀取管狀容器所載識別碼的裝置,其中的管狀容器被放在循環於配送鏈上的文檔匣或託架裝置中。本發明特別適用於,然而並非僅僅專用於,對引入自動分析系統的血液樣本試管之類的自動識別。本發明還涉及專為實現讀