一種基于芯片的安全檢測(cè)方法和系統(tǒng)的制作方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明屬于芯片檢測(cè)領(lǐng)域,尤其涉及一種基于芯片的安全檢測(cè)方法和系統(tǒng)。
【背景技術(shù)】
[0002]目前,單純從數(shù)學(xué)上來(lái)破解某一成熟的密碼體制已經(jīng)很難,但是這并不代表著對(duì)某一芯片或某一具體密碼算法也很難破解。當(dāng)前為破解芯片而采用的主要攻擊方式有三種:非侵入式攻擊、半侵入式攻擊和侵入式攻擊;利用放射線進(jìn)行錯(cuò)誤注入就可屬于非侵入式攻擊。
[0003]錯(cuò)誤注入攻擊是誘發(fā)芯片內(nèi)部的比特翻轉(zhuǎn),如通過對(duì)芯片內(nèi)部的晶體管進(jìn)行放射線的照射以向該晶體管注入電子而導(dǎo)致該晶體管發(fā)生比特翻轉(zhuǎn);比特翻轉(zhuǎn)會(huì)將芯片帶入一個(gè)不確定的運(yùn)行狀態(tài),引入錯(cuò)誤運(yùn)行流程而導(dǎo)致算法出錯(cuò);進(jìn)而可根據(jù)芯片輸出的結(jié)果進(jìn)行破解密碼。錯(cuò)誤注入攻擊的實(shí)施代價(jià)不高,但攻擊成功率較高,成為破解芯片的主要手段之一。
[0004]隨著國(guó)內(nèi)金卡工程的持續(xù)推進(jìn),智能卡的防錯(cuò)誤注入攻擊的技術(shù)有所發(fā)展,如在芯片中安裝傳感器,通過該傳感器能監(jiān)測(cè)到單種指定射線的照射(錯(cuò)誤注入)并報(bào)警。因此,現(xiàn)有技術(shù)針對(duì)芯片進(jìn)行的安全檢測(cè),也只是針對(duì)單種的該指定射線進(jìn)行檢測(cè);但是難免存在其它射線,通過該射線進(jìn)行錯(cuò)入注入以成功破解密碼。
【發(fā)明內(nèi)容】
[0005]本發(fā)明的目的在于提供一種基于芯片的安全檢測(cè)方法和系統(tǒng),旨在解決現(xiàn)有技術(shù)僅單一射線對(duì)芯片進(jìn)行錯(cuò)誤注入的安全檢測(cè),仍然存在安全風(fēng)險(xiǎn)的問題。
[0006]—方面,一種基于芯片的安全檢測(cè)方法,所述基于芯片的安全檢測(cè)方法包括:
[0007]由控制裝置控制射線發(fā)生源產(chǎn)生至少兩種射線;
[0008]通過集束器將所述射線發(fā)生源發(fā)射的至少兩種射線集合;
[0009]通過集合的射線對(duì)芯片進(jìn)行錯(cuò)誤注入,以使得所述芯片發(fā)生比特翻轉(zhuǎn)并輸出數(shù)據(jù);
[0010]根據(jù)所述芯片輸出的數(shù)據(jù)進(jìn)行密碼分析。
[0011]—方面,一種基于芯片的安全檢測(cè)系統(tǒng),所述基于芯片的安全檢測(cè)系統(tǒng)包括:
[0012]控制裝置;
[0013]射線發(fā)生源,用于由控制裝置控制產(chǎn)生至少兩種射線;
[0014]集束器,用于將所述射線發(fā)生源產(chǎn)生的至少兩種射線集合,通過集合的射線對(duì)芯片進(jìn)行錯(cuò)誤注入,以使得所述芯片發(fā)生比特翻轉(zhuǎn)并輸出數(shù)據(jù);
[0015]密碼分析模塊,用于根據(jù)所述芯片輸出的數(shù)據(jù)進(jìn)行密碼分析。
[0016]本發(fā)明的有益效果是:控制裝置射線發(fā)生源產(chǎn)生多種射線,通過集束器將所述射線發(fā)生源發(fā)射的至少兩種射線集合,通過集合的射線對(duì)芯片進(jìn)行錯(cuò)誤注入;進(jìn)行錯(cuò)誤注入的同時(shí),接收芯片輸出的數(shù)據(jù),對(duì)接收到的數(shù)據(jù)進(jìn)行密碼分析。這樣,如果分析出的密碼為正確密碼,則需更改用于對(duì)該芯片加密的算法;如果分析出的密碼不為該正確密碼,通過當(dāng)前使用的加密算法對(duì)該芯片加密是安全的,可安全使用該芯片。
【附圖說(shuō)明】
[0017]為了更清楚地說(shuō)明本發(fā)明實(shí)施例中的技術(shù)方案,下面將對(duì)實(shí)施例或現(xiàn)有技術(shù)描述中所需要使用的附圖作簡(jiǎn)單地介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的一些實(shí)施例,對(duì)于本領(lǐng)域普通技術(shù)人員來(lái)講,在不付出創(chuàng)造性勞動(dòng)性的前提下,還可以根據(jù)這些附圖獲得其他的附圖。
[0018]圖1是本發(fā)明實(shí)施例提供的基于芯片的安全檢測(cè)方法的流程圖;
[0019]圖2是本發(fā)明實(shí)施例提供的基于芯片的安全檢測(cè)方法中步驟S3的具體流程圖;
[0020]圖3是本發(fā)明實(shí)施例提供的基于芯片的安全檢測(cè)系統(tǒng)的第一種架構(gòu)圖;
[0021]圖4是本發(fā)明實(shí)施例提供的基于芯片的安全檢測(cè)系統(tǒng)的第二種架構(gòu)圖;
[0022]圖5是本發(fā)明實(shí)施例提供的基于芯片的安全檢測(cè)系統(tǒng)的第三種架構(gòu)圖。
【具體實(shí)施方式】
[0023]為了使本發(fā)明的目的、技術(shù)方案及優(yōu)點(diǎn)更加清楚明白,以下結(jié)合附圖及實(shí)施例,對(duì)本發(fā)明進(jìn)行進(jìn)一步詳細(xì)說(shuō)明。應(yīng)當(dāng)理解,此處所描述的具體實(shí)施例僅僅用以解釋本發(fā)明,并不用于限定本發(fā)明。為了說(shuō)明本發(fā)明所述的技術(shù)方案,下面通過具體實(shí)施例來(lái)進(jìn)行說(shuō)明。
[0024]圖1示出了本發(fā)明實(shí)施例提供的基于芯片的安全檢測(cè)方法的工作流程,為了便于描述,僅不出了與本發(fā)明實(shí)施例相關(guān)的部分。
[0025]本發(fā)明實(shí)施例提供的基于芯片的安全檢測(cè)方法,如圖1所示,所述基于芯片的安全檢測(cè)方法包括以下步驟:si,由控制裝置控制射線發(fā)生源產(chǎn)生至少兩種射線;S2,通過集束器將所述射線發(fā)生源發(fā)射的至少兩種射線集合;S3,通過集合的射線對(duì)芯片進(jìn)行錯(cuò)誤注入,以使得所述芯片發(fā)生比特翻轉(zhuǎn)并輸出數(shù)據(jù);S4,根據(jù)所述芯片輸出的數(shù)據(jù)進(jìn)行密碼分析。
[0026]本發(fā)明實(shí)施例同時(shí)使用多種射線對(duì)芯片進(jìn)行錯(cuò)誤注入,進(jìn)行安全監(jiān)測(cè);因此,需要多個(gè)射線發(fā)生源分別生成不同種射線,即每個(gè)射線發(fā)生源生成一種射線。每個(gè)射線發(fā)生源都接受控制裝置的控制,具體地,控制裝置控制射線發(fā)生源生成固定頻率和固定強(qiáng)度的射線,其中,該固定頻率和該固定強(qiáng)度都是由控制裝置指定的。這樣,不同射線發(fā)射源可能對(duì)應(yīng)生成不同種類的射線,或者,不同射線發(fā)射源可能對(duì)應(yīng)生成同種類但不同頻率和/或強(qiáng)度的射線。作為本發(fā)明一種【具體實(shí)施方式】,預(yù)先根據(jù)芯片的不同類型和芯片的抗錯(cuò)誤注入(抗比特反轉(zhuǎn))的能力,對(duì)每種射線分別選用不同強(qiáng)度進(jìn)行實(shí)驗(yàn)測(cè)試,篩選出更能夠?qū)е卤忍胤D(zhuǎn)的射線種類和對(duì)應(yīng)的強(qiáng)度。本發(fā)明實(shí)施例優(yōu)選的射線包括X射線、α射線以及Y射線;上述三種射線都具有較好的電離能力和穿透能力,較容易誘發(fā)芯片(如芯片內(nèi)部的晶體管)的比特翻轉(zhuǎn)。
[0027]進(jìn)而在步驟S2中,為使用多種射線同時(shí)對(duì)芯片進(jìn)行錯(cuò)誤注入,集束器接收不同射線(不同射線發(fā)生源生成的),集束器對(duì)接收到的不同射線進(jìn)行集合,集合成一束射線,集合成的射線具有多種波長(zhǎng)、多種強(qiáng)度或多種頻率。
[0028]進(jìn)而在步驟S3中,通過集合成的射線對(duì)芯片進(jìn)行局部或全部照射,即通過集合的射線對(duì)芯片的局部或全部進(jìn)行錯(cuò)誤注入;芯片中接受到照射的地方可能會(huì)發(fā)生比特翻轉(zhuǎn),如照射到的晶體管會(huì)發(fā)生電子丟失或增加而導(dǎo)致比特翻轉(zhuǎn)。進(jìn)而,從芯片的輸出端會(huì)輸出數(shù)據(jù)(由比特組成的數(shù)據(jù))。
[0029]進(jìn)而在步驟S4中,在對(duì)所述芯片進(jìn)行錯(cuò)誤注入的同時(shí),通過密碼分析模塊接收所述芯片輸出的數(shù)據(jù);密碼分析模塊對(duì)接收到的數(shù)據(jù)進(jìn)行分析,分析出所述芯片的可能密碼。
[0030]繼而,判斷分析出的可能密碼是否正確;如果分析出的可能密碼為正確密碼(該正確密碼為:對(duì)該芯片使用當(dāng)前算法加密而得到的密碼),則代表:如果本發(fā)明實(shí)施例使用的某種射線對(duì)芯片進(jìn)行錯(cuò)誤注入,可能能夠正確分析出該芯片的密碼;因此,需要對(duì)用于對(duì)該芯片加密的當(dāng)前算法進(jìn)行改進(jìn)或重新設(shè)計(jì)加密算法,接著判斷分析出的可能密碼是否正確。
[0031]如果分析出的可能密碼不為所述正確密碼,則代表:通過本發(fā)明實(shí)施例使用的每種射線對(duì)芯片進(jìn)行錯(cuò)誤注入,均不能夠正確分析出該芯片的密碼;因此,使用當(dāng)前算法對(duì)該芯片加密得到的密碼是安全的,使用該當(dāng)前算法對(duì)該芯片能夠保證芯片的安全,代表通過安全檢測(cè)。
[0032]圖2示出了本發(fā)明實(shí)施例提供的基于芯片的安全檢測(cè)方法中步驟S3的具體流程,為了便于描述,僅示出了與本發(fā)明實(shí)施例相關(guān)的部分。
[0033]在本發(fā)明一實(shí)施例中,如圖2所示,通過集合的射線對(duì)芯片進(jìn)行錯(cuò)誤注入的步驟具體為:S31,將所述芯片固定于精密機(jī)械位置操控臺(tái)上;S32,由所述控制裝置控制所述精密機(jī)械位置操控臺(tái)移動(dòng)所述芯片,通過所述集合的射線對(duì)所述芯片遍歷照射。
[0034]在本實(shí)施例中,芯片的固定和移動(dòng)均是由精密機(jī)械位置操控臺(tái)操控的。具體地,需要對(duì)某個(gè)芯片進(jìn)行安全檢測(cè)時(shí),首先將該芯片固定在精密機(jī)械位置操控臺(tái)上,進(jìn)而,控制裝置可通過該精密機(jī)械位置操控臺(tái)操控該芯片的移動(dòng);當(dāng)然,該精密機(jī)械位置操控臺(tái)操控該芯片移動(dòng)的移動(dòng)方式以及移動(dòng)步長(zhǎng)均不做限定,可根據(jù)安全檢測(cè)需要而定;但優(yōu)選的是,控制裝置通過該精密機(jī)械位置操控臺(tái)操控該芯片進(jìn)行小步長(zhǎng)移動(dòng),移動(dòng)的范圍滿足:集束器發(fā)射的所述集合的射線能夠?qū)υ撔酒M(jìn)行遍歷照射(即對(duì)該芯片遍歷地進(jìn)行錯(cuò)誤注入)。
[0035]在本發(fā)明一具體實(shí)施例中,給出了步驟SI的一種具體可能,由控制裝置控制射線發(fā)生源產(chǎn)生至少兩種射線的步驟具體為:由所述控制裝置控制X射線發(fā)生源產(chǎn)生第一頻率和第一強(qiáng)度的X射線,由所述控制裝置控制Cl射線發(fā)生源產(chǎn)生第二頻率和第二強(qiáng)度的α射線。對(duì)應(yīng)地給出了步驟S2的一種具體可能,所述通過集束器將所述射線發(fā)生源發(fā)射的至少兩種射線集合的步驟具體為:通過所述集束器將所述X射線發(fā)生源產(chǎn)生的X射線和所