欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

一種加密芯片安全性能測試方法和裝置制造方法

文檔序號:7805239閱讀:161來源:國知局
一種加密芯片安全性能測試方法和裝置制造方法
【專利摘要】本發(fā)明適用于測試領(lǐng)域,提供了一種加密芯片安全性能測試方法和裝置,該方法包括:根據(jù)所述加密芯片的加密算法,確定加密算法中錯誤注入攻擊的被攻擊參數(shù);查找在所述加密芯片中與計算所述被攻擊參數(shù)相關(guān)的敏感寄存器并插入掃描鏈;使被攻擊芯片工作在測試模式下,由掃描輸出所述被攻擊參數(shù)的掃描輸出結(jié)果確定加密芯片的安全性。本發(fā)明實施例由于采用掃描鏈插入到與被攻擊參數(shù)相關(guān)的敏感寄存器,從而能夠獲取被攻擊參數(shù)的變化,從而更加直觀的判斷是否產(chǎn)生有效的錯誤,有效提高加密芯片安全性的測試效率。
【專利說明】一種加密芯片安全性能測試方法和裝置
【技術(shù)領(lǐng)域】
[0001]本發(fā)明屬于測試領(lǐng)域,尤其涉及一種加密芯片安全性能測試方法和裝置。
【背景技術(shù)】
[0002]隨著通信技術(shù)的發(fā)展,信息安全也顯得越來越重要。雖然芯片中有復(fù)雜的加解密算法和密鑰保護機制,但是,芯片仍然容易受到誘導(dǎo)錯誤攻擊,從而造成芯片中的數(shù)據(jù)內(nèi)容的泄露。
[0003]為避免芯片受到誘導(dǎo)錯誤攻擊時的數(shù)據(jù)泄露,比如私鑰的泄露,需要對安全芯片內(nèi)的加密電路的安全性和穩(wěn)定性進行測試。其中,錯誤注入攻擊就是一種廣泛使用的、用來評估加密芯片的容錯能力以及、故障對加密芯片影響的安全性能測試方法。
[0004]加密芯片的錯誤注入攻擊原理是:通過人為的注入一定的錯誤,根據(jù)錯誤傳輸機理和加解密的結(jié)果分析出密鑰信息的方法。其中,常見的用于注入的誘導(dǎo)錯誤包括:電壓和時鐘突變錯誤、激光誘導(dǎo)錯誤、X射線和離子束注入錯誤。
[0005]然而,由于現(xiàn)在的錯誤注入技術(shù)在時間及空間上的不確定性,一方面不能有效的將注入的錯誤產(chǎn)生的內(nèi)部變化反映在輸出結(jié)果,另一方面,在實際應(yīng)用中,僅憑輸出的加解密結(jié)果,很難分析判斷出產(chǎn)生錯誤的機制。從而使得現(xiàn)有的加密芯片測試方法的測試效率較低。

【發(fā)明內(nèi)容】

[0006]本發(fā)明實施例的目的在于提供一種加密芯片的安全性能測試方法,以解決現(xiàn)有技術(shù)的加密芯片的測試過程中,注入的錯誤所產(chǎn)生的內(nèi)部變化不能反應(yīng)在輸出結(jié)果,僅憑輸出加解密結(jié)果,很難分析判斷產(chǎn)生錯誤的機制,導(dǎo)致現(xiàn)有加密芯片的測試效率低的問題。
[0007]本發(fā)明實施例是這樣實現(xiàn)的,一種加密芯片安全性能測試方法,所述方法包括:
[0008]根據(jù)所述加密芯片的加密算法,確定加密算法中錯誤注入攻擊的被攻擊參數(shù);
[0009]根據(jù)所述錯誤注入攻擊的被攻擊參數(shù),查找在所述加密芯片中與計算所述被攻擊參數(shù)相關(guān)的敏感寄存器;
[0010]在計算所述被攻擊參數(shù)相關(guān)的敏感寄存器插入掃描鏈;
[0011]根據(jù)輸入的測試向量以及所述錯誤注入攻擊,掃描輸出所述被攻擊參數(shù)的掃描輸出結(jié)果;
[0012]將被攻擊的掃描輸出結(jié)果與期望的掃描輸出結(jié)果比較,根據(jù)比較結(jié)果確定加密芯片的安全性。
[0013]本發(fā)明實施例的另一目的在于提供一種加密芯片安全性能測試裝置,所述裝置包括:
[0014]被攻擊參數(shù)確定單元,根據(jù)所述加密芯片的加密算法,確定加密算法中錯誤注入攻擊的被攻擊參數(shù);
[0015]敏感寄存器查找單元,用于根據(jù)所述錯誤注入攻擊的被攻擊參數(shù),查找在所述加密芯片中與計算所述被攻擊參數(shù)相關(guān)的敏感寄存器;
[0016]掃描鏈插入單元,用于在計算所述被攻擊參數(shù)相關(guān)的敏感寄存器插入掃描鏈;
[0017]結(jié)果輸出單元,用于根據(jù)輸入的測試向量以及所述錯誤注入攻擊,掃描輸出所述被攻擊參數(shù)的掃描輸出結(jié)果;
[0018]安全性確定單元,用于將被攻擊的掃描輸出結(jié)果與期望的掃描輸出結(jié)果比較,根據(jù)比較結(jié)果確定加密芯片的安全性。
[0019]在本發(fā)明實施例中,根據(jù)芯片的加密算法確定注入的錯誤攻擊的被攻擊參數(shù),并根據(jù)所述被攻擊參數(shù),查找在計算所述被攻擊參數(shù)所使用的相關(guān)的寄存器,稱之為敏感寄存器,并將敏感寄器中插入到掃描鏈中,掃描輸出被攻擊參數(shù)因注入的錯誤攻擊而產(chǎn)生的變化結(jié)果,并將被攻擊參數(shù)的輸出結(jié)果與期望的掃描輸出結(jié)果比較,確定加密芯片的安全性。本發(fā)明實施例由于將敏感寄存器插入到掃描鏈中,從而能夠獲取被攻擊參數(shù)的變化,從而更加直觀的判斷是否產(chǎn)生有效的錯誤,有效提高加密芯片安全性的測試效率。
【專利附圖】

【附圖說明】
[0020]圖1是本發(fā)明實施例提供的加密芯片安全性能測試方法的實現(xiàn)流程圖;
[0021]圖2是本發(fā)明實施例提供的加密芯片安全性能測試的結(jié)構(gòu)示意圖;
[0022]圖3是本發(fā)明實施例提供的加密芯片安全性能測試裝置的結(jié)構(gòu)示意圖;
【具體實施方式】
[0023]為了使本發(fā)明的目的、技術(shù)方案及優(yōu)點更加清楚明白,以下結(jié)合附圖及實施例,對本發(fā)明進行進一步詳細說明。應(yīng)當(dāng)理解,此處所描述的具體實施例僅僅用以解釋本發(fā)明,并不用于限定本發(fā)明。
[0024]本發(fā)明實施例所述加密芯片安全性能測試方法,可用于加密芯片設(shè)計階段的安全評估,也可用于加密芯片的實際測試。
[0025]在設(shè)計階段的安全評估過程中,在門級網(wǎng)表中人為引入錯誤的情況下,通過仿真可以得到錯誤攻擊所產(chǎn)生的針對被攻擊參數(shù)的掃描輸出結(jié)果,根據(jù)所述結(jié)果與期望的掃描輸出結(jié)果比較,即可得到設(shè)計階段的加密算法是否符合安全性要求。
[0026]在實際測試過程中,可以根據(jù)預(yù)先在芯片中插入的、位于敏感寄存器處的掃描鏈,得到被攻擊參數(shù)的變化結(jié)果,根據(jù)掃描鏈的輸出結(jié)果進行比較分析,可以測出芯片是否符合安全要求。下面結(jié)合實施例具體說明。
[0027]如圖1示出了本發(fā)明實施例提供的加密芯片安全性能測試方法的實現(xiàn)流程,詳述如下:
[0028]在步驟SlOl中,根據(jù)所述加密芯片的加密算法,確定加密算法中錯誤注入攻擊的被攻擊參數(shù)。
[0029]具體的,由于本發(fā)明實施例可用于加密芯片的設(shè)計階段,也可用于加密芯片的測試階段,因此,本發(fā)明實施例中所述的加密芯片,在芯片的加密設(shè)計階段也可稱為對芯片的加密設(shè)計(芯片是需要經(jīng)過設(shè)計,并且經(jīng)過流片生產(chǎn)的成品),在芯片的測試階段稱為加密芯片,為便于描述,統(tǒng)稱為加密芯片。
[0030]本發(fā)明實施例中所述的芯片加密算法,并不局限于一種加密算法,可以為對稱加密算法AES、DES,也可以為非對稱加密算法RSA、ECC,當(dāng)然,還可以為其它類型的算法,如國家商用的密碼算法等。
[0031]其中,AES加密算法(其英文全稱為Advanced Encryption Standard,中文全稱為高級加密標(biāo)準(zhǔn)),基于排列和置換運算。排列是對數(shù)據(jù)重新進行安排,置換是將一個數(shù)據(jù)單元替換為另一個。AES使用幾種不同的方法來執(zhí)行排列和置換運算。
[0032]AES是一個迭代的、對稱密鑰分組的密碼,它可以使用128、192和256位密鑰,并且用128位(16字節(jié))分組加密和解密數(shù)據(jù)。與公共密鑰密碼使用密鑰對不同,對稱密鑰密碼使用相同的密鑰加密和解密數(shù)據(jù)。通過分組密碼返回的加密數(shù)據(jù)的位數(shù)與輸入數(shù)據(jù)相同。迭代加密使用一個循環(huán)結(jié)構(gòu),在該循環(huán)中重復(fù)置換和替換輸入數(shù)據(jù)。
[0033]所述DES (英文全稱為Data Encryption Algorithm,中文全稱為數(shù)據(jù)加密算法),是一種對稱加密算法,是使用最廣泛的密鑰系統(tǒng),特別是在保護金融數(shù)據(jù)的安全。
[0034]DES使用一個56位的密鑰以及附加的8位奇偶校驗位(每組的第8位作為奇偶校驗位),產(chǎn)生最大64位的分組大小。這是一個迭代的分組密碼,使用稱為Feistel的技術(shù),其中將加密的文本塊分成兩半。使用子密鑰對其中一半應(yīng)用循環(huán)功能,然后將輸出與另一半進行“異或”運算;接著交換這兩半,這一過程會繼續(xù)下去,但最后一個循環(huán)不交換。DES使用16輪循環(huán),使用異或,置換,代換,移位操作四種基本運算。
[0035]所述RSA,即公開密鑰密碼體制。所謂的公開密鑰密碼體制就是使用不同的加密密鑰與解密密鑰,是一種“由已知加密密鑰推導(dǎo)出解密密鑰在計算上是不可行的”密碼體制。
[0036]在公開密鑰密碼體制中,加密密鑰(即公開密鑰)是公開信息,而解密密鑰(即秘密密鑰)是需要保密的。加密算法和解密算法也都是公開的。雖然秘密密鑰是由公開密鑰決定的,但卻不能根據(jù)公開密鑰計算出秘密密鑰。
[0037]所述ECC (英文全稱為Elliptic Curves Cryptography,中文全稱為橢圓曲線密碼編碼學(xué))加密算法,ECC算法的數(shù)學(xué)理論非常深奧和復(fù)雜,在工程應(yīng)用中比較難于實現(xiàn),但它的單位安全強度相對較高。
[0038]所述根據(jù)加密芯片的加密算法,確定加密算法中錯誤注入攻擊的被攻擊參數(shù),根據(jù)不同的加密算法,所述被攻擊參數(shù)也不相同,如對于CRT(英文全稱為=Chineseremainder theorem,中文全稱為:中國剩余定理)RSA加密算法中,只要其中一個冪運算(Sp*SQ)發(fā)生錯誤,就可以成功的推算出密鑰。因此,對于RSA-CRT加密算法中的被攻擊參數(shù),即可以是SP,也可以是SQ。
[0039]對于其它的加密算法,也可以根據(jù)加密算法所對應(yīng)的錯誤攻擊注入?yún)?shù),相應(yīng)的確定被攻擊參數(shù)。
[0040]在步驟S102中,根據(jù)所述錯誤注入攻擊的被攻擊參數(shù),查找在所述加密芯片中與計算所述被攻擊參數(shù)相關(guān)的敏感寄存器。
[0041]具體的,所述注入的錯誤攻擊,可以包括但不局限于重離子錯誤攻擊、激光照射錯誤攻擊、X射線錯誤攻擊等。
[0042]所述查找在所述加密芯片中與計算所述被攻擊參數(shù)相關(guān)的敏感寄存器,可以根據(jù)被攻擊參數(shù)的表達式,得到與計算所述被攻擊參數(shù)相關(guān)的因子,該相關(guān)的因子定義的寄存器存儲空間即為敏感寄存器。
[0043]在步驟S103中,在計算所述被攻擊參數(shù)相關(guān)的敏感寄存器插入掃描鏈。[0044]具體的,根據(jù)安全可測性設(shè)計工具(DFST,英文全稱為Design for SafeTestability),在計算所述被攻擊參數(shù)相關(guān)的敏感寄存器中插入掃描鏈。
[0045]所述掃描鏈,(英文全稱為:Scan chain)是可測試性設(shè)計的一種實現(xiàn)技術(shù)。它通過植入移位寄存器,使得測試人員可以從外部控制和觀測電路內(nèi)部觸發(fā)器的信號值。
[0046]在步驟S104中,根據(jù)輸入的測試向量以及所述錯誤注入攻擊,掃描輸出所述被攻擊參數(shù)的掃描輸出結(jié)果。
[0047]所述測試向量,可以使用自動測試向量工具,比如TeraMax,生成測試向量。
[0048]在步驟S105中,將被攻擊的掃描輸出結(jié)果與期望的掃描輸出結(jié)果比較,根據(jù)比較結(jié)果確定加密芯片的安全性。
[0049]所述敏感寄存器,為與被攻擊參數(shù)的計算相關(guān)的寄存器,其它未與被攻擊參數(shù)計算相關(guān)的寄存器,以及密鑰寄存器不需要插入掃描鏈。
[0050]這樣做的好處在于,一方面可以避免因掃描鏈的插入而導(dǎo)致芯片的密鑰泄露,另一方面誘導(dǎo)錯誤注入實驗下,在測試模式下通過掃描測試即可快速判斷該安全芯片的安全程度。
[0051]其中,將被攻擊的掃描輸出結(jié)果與期望的掃描輸出結(jié)果比較,根據(jù)比較結(jié)果確定加密芯片的安全性步驟包括:
[0052]將被攻擊的掃描輸出結(jié)果與期望的掃描輸出結(jié)果比較,判斷兩者是否相同;
[0053]如果相同,則所述加密芯片的安全性通過測試驗證;
[0054]如果不相同,則所述加密芯片未能通過安全性測試。
[0055]所述期望的掃描輸出結(jié)果,即加密芯片在接收測試向量輸入時,被攻擊參數(shù)輸出的正常結(jié)果。
[0056]下面通過具體的非對稱加密算法1024位的CRT-RSA加密算法為例進行具體說明,應(yīng)當(dāng)理解,CRT-RSA只是其中一種實施方式,本領(lǐng)域一般技術(shù)人員還可以想到其它與此相類似的設(shè)計方式,均應(yīng)在本發(fā)明的保護范圍。
[0057]設(shè)a和b是預(yù)先計算好的值,P和q為兩個素數(shù),n = p*q, d為私鑰參數(shù),且:
【權(quán)利要求】
1.一種加密芯片安全性能測試方法,其特征在于,所述方法包括: 根據(jù)所述加密芯片的加密算法,確定加密算法中錯誤注入攻擊的被攻擊參數(shù); 根據(jù)所述錯誤注入攻擊的被攻擊參數(shù),查找在所述加密芯片中與計算所述被攻擊參數(shù)相關(guān)的敏感寄存器; 在計算所述被攻擊參數(shù)相關(guān)的敏感寄存器插入掃描鏈; 根據(jù)輸入的測試向量以及所述錯誤注入攻擊,掃描輸出所述被攻擊參數(shù)的掃描輸出結(jié)果; 將被攻擊的掃描輸出結(jié)果與期望的掃描輸出結(jié)果比較,根據(jù)比較結(jié)果確定加密芯片的安全性。
2.根據(jù)權(quán)利要求1所述方法,其特征在于,所述加密算法為對稱加密算法或者非對稱加密算法。
3.根據(jù)權(quán)利要求1或2所述方法,其特征在于,所述芯片的加密算法為CRT-RSA加密算法,所述根據(jù)所述加密芯片的加密算法,確定加密算法中錯誤注入攻擊的被攻擊參數(shù)包括: 根據(jù)CRT-RSA加密的簽名表達式:s = a.sp+b.sq(modn),確定所述CRT-RSA加密算法中錯誤注入攻擊的被攻擊參數(shù)為Sp或Sq,其中,
4.根據(jù)權(quán)利要求1所述方法,其特征在于,將被攻擊的掃描輸出結(jié)果與期望的掃描輸出結(jié)果比較,根據(jù)比較結(jié)果確定加密芯片的安全性步驟包括: 將被攻擊的掃描輸出結(jié)果與期望的掃描輸出結(jié)果比較,判斷兩者是否相同; 如果相同,則所述加密芯片的安全性通過測試驗證; 如果不相同,則所述加密芯片未能通過安全性測試。
5.根據(jù)權(quán)利要求1所述方法,其特征在于,所述在計算所述被攻擊參數(shù)相關(guān)的敏感寄存器插入掃描鏈步驟具體為: 根據(jù)可測性設(shè)計工具,將所查找的敏感寄存器插入到掃描鏈中。(該步驟僅用于對插入掃描鏈,查找敏感寄存器的過程在其它步驟中有限定)。
6.一種加密芯片安全性能測試裝置,其特征在于,所述裝置包括: 被攻擊參數(shù)確定單元,根據(jù)所述加密芯片的加密算法,確定加密算法中錯誤注入攻擊的被攻擊參數(shù); 敏感寄存器查找單元,用于根據(jù)所述錯誤注入攻擊的被攻擊參數(shù),查找在所述加密芯片中與計算所述被攻擊參數(shù)相關(guān)的敏感寄存器; 掃描鏈插入單元,用于在計算所述被攻擊參數(shù)相關(guān)的敏感寄存器插入掃描鏈; 結(jié)果輸出單元,用于根據(jù)輸入的測試向量以及所述錯誤注入攻擊,掃描輸出所述被攻擊參數(shù)的掃描輸出結(jié)果; 安全性確定單元,用于將被攻擊的掃描輸出結(jié)果與期望的掃描輸出結(jié)果比較,根據(jù)比較結(jié)果確定加密芯片的安全性。
7.根據(jù)權(quán)利要求6所述裝置,其特征在于,所述加密算法為對稱加密算法或者非對稱加密算法。
8.根據(jù)權(quán)利要求6或7所述裝置,其特征在于,所述芯片的加密算法為CRT-RSA加密算法,所述被攻擊參數(shù)確定單元具體用于: 根據(jù)CRT-RSA加密的簽名表達式:s = a.sp+b.sq(modn),確定所述CRT-RSA加密算法中錯誤注入攻擊的被攻擊參數(shù)為Sp或Sq,其中,Sii=In1 {mod P),sq - m'.(modi/),dp =
9.根據(jù)權(quán)利要求6所述裝置,其特征在于,所述安全性確定單元包括: 比較子單元,用于將被攻擊的掃描輸出結(jié)果與期望的掃描輸出結(jié)果比較,判斷兩者是否相同; 第一驗證子單元,用于如果相同,則所述加密芯片的安全性通過測試驗證; 第二驗證子單元,用于如果不相同,則所述加密芯片未能通過安全性測試。
10.根據(jù)權(quán)利要求6所述裝置,其特征在于,所述掃描鏈插入單元具體用于:根據(jù)可測性設(shè)計工具,將所查找的敏感寄存器插入到掃描鏈中。
【文檔編號】H04L9/00GK103997402SQ201410240453
【公開日】2014年8月20日 申請日期:2014年5月30日 優(yōu)先權(quán)日:2014年5月30日
【發(fā)明者】邵翠萍, 李慧云, 徐國卿 申請人:中國科學(xué)院深圳先進技術(shù)研究院
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
阿城市| 孟连| 方正县| 上栗县| 尼勒克县| 浮山县| 宁波市| 资溪县| 启东市| 西乌珠穆沁旗| 怀远县| 天门市| 泾源县| 科技| 贵南县| 嵊泗县| 射阳县| 香河县| 行唐县| 深圳市| 台安县| 旬阳县| 灌云县| 宣城市| 黎平县| 印江| 陵川县| 汕头市| 宜章县| 福贡县| 平定县| 吉林市| 额尔古纳市| 尤溪县| 东乌珠穆沁旗| 白山市| 印江| 玉门市| 阜南县| 黄龙县| 乐业县|