一種保護(hù)傳輸數(shù)據(jù)和存儲(chǔ)數(shù)據(jù)的方法及裝置的制造方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及信息安全技術(shù)領(lǐng)域,特別涉及一種保護(hù)傳輸數(shù)據(jù)和存儲(chǔ)數(shù)據(jù)的方法及
目-Ο
【背景技術(shù)】
[0002]隨著社會(huì)信息化程度的不斷提高,現(xiàn)代計(jì)算機(jī)與通信系統(tǒng)的電子設(shè)備中普遍使用了專(zhuān)用集成電路,芯片作為常見(jiàn)的專(zhuān)用集成電路被廣泛應(yīng)用于從單個(gè)器件到大型復(fù)雜系統(tǒng)的安全解決方案。如圖1所示,芯片一般由CPU、存儲(chǔ)器、總線(xiàn)、協(xié)處理器以及其他應(yīng)用模塊組成,存儲(chǔ)器用于存儲(chǔ)程序和數(shù)據(jù),總線(xiàn)則是CPU和其他模塊之間通信傳輸?shù)臉蛄?。由于芯片集成度較高,其中的存儲(chǔ)器會(huì)涉及數(shù)據(jù)、程序等敏感信息,而總線(xiàn)上傳輸?shù)男畔⒁彩敲舾械?,這就對(duì)數(shù)據(jù)存儲(chǔ)、傳輸?shù)陌踩蕴岢隽溯^高的要求。
[0003]與此同時(shí),隨著技術(shù)的發(fā)展,各種專(zhuān)用攻擊技術(shù)也在不斷發(fā)展。通過(guò)去除芯片封裝、版圖重構(gòu)、FIB、Probing等方式,攻擊者可以分析出有關(guān)設(shè)計(jì)信息和存儲(chǔ)結(jié)構(gòu),對(duì)總線(xiàn)數(shù)據(jù)進(jìn)行篡改、監(jiān)聽(tīng),甚至直接讀出存儲(chǔ)器的信息進(jìn)行分析。常見(jiàn)的保護(hù)方法主要是存儲(chǔ)器在存儲(chǔ)數(shù)據(jù)時(shí)對(duì)數(shù)據(jù)進(jìn)行擾亂。
[0004]但是現(xiàn)有技術(shù)的常見(jiàn)的保護(hù)方法只是在存儲(chǔ)器存儲(chǔ)數(shù)據(jù)時(shí)對(duì)數(shù)據(jù)進(jìn)行擾亂,但沒(méi)有對(duì)總線(xiàn)上傳輸數(shù)據(jù)的安全性進(jìn)行保護(hù)。那么攻擊者可以通過(guò)對(duì)總線(xiàn)數(shù)據(jù)的攻擊獲得敏感信息,或者攻擊者可以對(duì)總線(xiàn)上的數(shù)據(jù)進(jìn)行篡改,這對(duì)于芯片來(lái)說(shuō)是嚴(yán)重的安全隱患。
【發(fā)明內(nèi)容】
[0005]為了解決現(xiàn)有技術(shù)中對(duì)總線(xiàn)上傳輸?shù)臄?shù)據(jù)沒(méi)有進(jìn)行安全性保護(hù)的技術(shù)問(wèn)題,本發(fā)明提出一種保護(hù)傳輸數(shù)據(jù)和存儲(chǔ)數(shù)據(jù)的方法及裝置。
[0006]一種保護(hù)傳輸數(shù)據(jù)和存儲(chǔ)數(shù)據(jù)的方法,包括:
[0007]將總線(xiàn)上待傳輸?shù)脑紨?shù)據(jù)和/或待入存儲(chǔ)器中的原始數(shù)據(jù)進(jìn)行加擾處理;
[0008]對(duì)加擾處理后的原始數(shù)據(jù)計(jì)算第一校驗(yàn)值;
[0009]將所述第一校驗(yàn)值和所述加擾處理后的原始數(shù)據(jù)進(jìn)行傳輸和/或存儲(chǔ)。
[0010]優(yōu)選地,該方法還包括:
[0011]接收到來(lái)自總線(xiàn)上的加擾處理后的原始數(shù)據(jù)和第一校驗(yàn)值;
[0012]計(jì)算該加擾處理后的原始數(shù)據(jù)的第二校驗(yàn)值;
[0013]若該第一校驗(yàn)值與所述第二校驗(yàn)值相同,則對(duì)加擾處理后的原始數(shù)據(jù)進(jìn)行解擾得到原始數(shù)據(jù)。
[0014]優(yōu)選地,該方法還包括:
[0015]從存儲(chǔ)器中讀取出加擾處理后的原始數(shù)據(jù)和第一校驗(yàn)值;
[0016]計(jì)算該加擾處理后的原始數(shù)據(jù)的第二校驗(yàn)值;
[0017]若該第一校驗(yàn)值與所述第二校驗(yàn)值相同,則對(duì)加擾處理后的原始數(shù)據(jù)進(jìn)行解擾得到原始數(shù)據(jù)。
[0018]優(yōu)選地,該方法還包括:
[0019]若該第一校驗(yàn)值與所述第二校驗(yàn)值不相同,則發(fā)出報(bào)警信息。
[0020]優(yōu)選地,所述加擾處理包括DES或3DES ;所述第一校驗(yàn)值和第二校驗(yàn)值通過(guò)CRC校驗(yàn)方式計(jì)算得出。
[0021]一種保護(hù)傳輸數(shù)據(jù)和存儲(chǔ)數(shù)據(jù)的裝置,包括:
[0022]保護(hù)單元,用于將總線(xiàn)上待傳輸?shù)脑紨?shù)據(jù)和/或待入存儲(chǔ)器中的原始數(shù)據(jù)進(jìn)行加擾處理;
[0023]校驗(yàn)單元,用于對(duì)加擾處理后的原始數(shù)據(jù)計(jì)算第一校驗(yàn)值;
[0024]執(zhí)行單元,用于將所述第一校驗(yàn)值和所述加擾處理后的原始數(shù)據(jù)進(jìn)行傳輸和/或存儲(chǔ)。
[0025]優(yōu)選地,所述執(zhí)行單元,還用于接收到來(lái)自總線(xiàn)上的加擾處理后的原始數(shù)據(jù)和第一校驗(yàn)值;
[0026]所述校驗(yàn)單元,還用于計(jì)算該加擾處理后的原始數(shù)據(jù)的第二校驗(yàn)值,并確定該第一校驗(yàn)值與所述第二校驗(yàn)值是否相同;
[0027]所述保護(hù)單元,還用于在校驗(yàn)單確定第一校驗(yàn)值與第二校驗(yàn)值相同時(shí),對(duì)加擾處理后的原始數(shù)據(jù)進(jìn)行解擾得到原始數(shù)據(jù)。
[0028]優(yōu)選地,所述執(zhí)行單元,還用于從存儲(chǔ)器中讀取出加擾處理后的原始數(shù)據(jù)和第一校驗(yàn)值;
[0029]所述校驗(yàn)單元,還用于計(jì)算該加擾處理后的原始數(shù)據(jù)的第二校驗(yàn)值,并確定該第一校驗(yàn)值與所述第二校驗(yàn)值是否相同;
[0030]所述保護(hù)單元,還用于在校驗(yàn)單確定第一校驗(yàn)值與第二校驗(yàn)值相同時(shí),對(duì)加擾處理后的原始數(shù)據(jù)進(jìn)行解擾得到原始數(shù)據(jù)。
[0031]優(yōu)選地,該裝置還包括:報(bào)警單元,用于在校驗(yàn)單元確定該第一校驗(yàn)值與所述第二校驗(yàn)值不相同時(shí),發(fā)出報(bào)警信息。
[0032]優(yōu)選地,所述保護(hù)單元的加擾處理包括DES或3DES ;所述校驗(yàn)單元通過(guò)CRC校驗(yàn)方式計(jì)算得出第一校驗(yàn)值和第二校驗(yàn)值。
[0033]本實(shí)施例提供的上述方案不僅對(duì)存儲(chǔ)器存儲(chǔ)數(shù)據(jù)的機(jī)密性進(jìn)行保護(hù),還關(guān)注總線(xiàn)上傳輸?shù)臄?shù)據(jù)的完整性和總線(xiàn)傳輸數(shù)據(jù)的安全性。通過(guò)加擾這些數(shù)據(jù)的技術(shù)手段可以保證數(shù)據(jù)是非明文形式進(jìn)行傳輸/存儲(chǔ)的,通過(guò)校驗(yàn)可以發(fā)現(xiàn)數(shù)據(jù)是否被攻擊者篡改過(guò),如若有篡改會(huì)發(fā)出報(bào)警信息。這不僅保護(hù)了數(shù)據(jù)的機(jī)密性,也保證了數(shù)據(jù)的完整性。
【附圖說(shuō)明】
[0034]附圖用來(lái)提供對(duì)本發(fā)明的進(jìn)一步理解,并且構(gòu)成說(shuō)明書(shū)的一部分,與本發(fā)明的實(shí)施例一起用于解釋本發(fā)明,并不構(gòu)成對(duì)本發(fā)明的限制。在附圖中:
[0035]為了更清楚地說(shuō)明本發(fā)明實(shí)施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對(duì)實(shí)施例或現(xiàn)有技術(shù)描述中所需要使用的附圖作簡(jiǎn)單地介紹,顯而易見(jiàn)地,下面描述中的附圖僅僅是本發(fā)明的一些實(shí)施例,對(duì)于本領(lǐng)域普通技術(shù)人員來(lái)講,在不付出創(chuàng)造性勞動(dòng)性的前提下,還可以根據(jù)這些附圖獲得其他的附圖。
[0036]圖1為現(xiàn)有技術(shù)中芯片的結(jié)構(gòu)示意圖;
[0037]圖2為本發(fā)明實(shí)施例1提供的一種保護(hù)傳輸數(shù)據(jù)和存儲(chǔ)數(shù)據(jù)的方法的一種流程示意圖;
[0038]圖3為本發(fā)明實(shí)施例1提供的一種保護(hù)傳輸數(shù)據(jù)和存儲(chǔ)數(shù)據(jù)的方法的另一種流程不意圖;
[0039]圖4為本發(fā)明實(shí)施例2提供的一種保護(hù)傳輸數(shù)據(jù)和存儲(chǔ)數(shù)據(jù)的裝置的結(jié)構(gòu)示意圖。
【具體實(shí)施方式】
[0040]下面將結(jié)合本發(fā)明實(shí)施例中的附圖,對(duì)本發(fā)明實(shí)施例中的技術(shù)方案進(jìn)行清楚、完整地描述,顯然,所描述的實(shí)施例僅僅是本發(fā)明一部分實(shí)施例,而不是全部的實(shí)施例?;诒景l(fā)明中的實(shí)施例,本領(lǐng)域普通技術(shù)人員在沒(méi)有作出創(chuàng)造性勞動(dòng)前提下所獲得的所有其他實(shí)施例,都屬于本發(fā)明保護(hù)的范圍。并且,以下各實(shí)施例均為本發(fā)明的可選方案,實(shí)施例的排列順序及實(shí)施例的編號(hào)與其優(yōu)選執(zhí)行的順序無(wú)關(guān)。
[0041]實(shí)施例1
[0042]根據(jù)本發(fā)明實(shí)施例,提供了一種保護(hù)傳輸數(shù)據(jù)和存儲(chǔ)數(shù)據(jù)的方法,該方法適合部署在芯片上,如圖2所示包括:
[0043]101,將總線(xiàn)上待傳輸?shù)脑紨?shù)據(jù)和/或待入存儲(chǔ)器中的原始數(shù)據(jù)進(jìn)行加擾處理;
[0044]具體而言,輸入總線(xiàn)上待傳輸?shù)脑紨?shù)據(jù)和/或待存入存儲(chǔ)器中的原始數(shù)據(jù)。并對(duì)原始數(shù)據(jù)進(jìn)行處理,經(jīng)過(guò)處理的數(shù)據(jù)是擾亂無(wú)規(guī)則的密文。
[0045]102,對(duì)加擾處理后的原始數(shù)據(jù)計(jì)算第一校驗(yàn)值;
[0046]103,將第一校驗(yàn)值和加擾處理后的原始數(shù)據(jù)進(jìn)行傳輸和/或存儲(chǔ)。
[0047]具體而言,將經(jīng)過(guò)步驟102處理的原始數(shù)據(jù)進(jìn)行傳輸和/或存儲(chǔ),最終傳輸/存儲(chǔ)的原始數(shù)據(jù)為:經(jīng)加擾處理的原始數(shù)據(jù)+校驗(yàn)值。
[0048]本實(shí)施例提供的方法主要是在進(jìn)行總線(xiàn)傳輸和存儲(chǔ)時(shí)對(duì)數(shù)據(jù)的完整性和安全性進(jìn)行保護(hù)。具體實(shí)施方法是:待傳輸或存儲(chǔ)的數(shù)據(jù)首先經(jīng)過(guò)保護(hù)處理,然后通過(guò)校驗(yàn)計(jì)算被處理數(shù)據(jù)的校驗(yàn)值,經(jīng)處理的數(shù)據(jù)連同校驗(yàn)值一起被傳輸或存儲(chǔ)。其中數(shù)據(jù)保護(hù)單元用于對(duì)數(shù)據(jù)進(jìn)行擾亂/還原,可以采用DES (Data Encrypt1n Standard,數(shù)據(jù)加密算法)、3DES(三重DES)等加密算法;數(shù)據(jù)校驗(yàn)單元用于計(jì)算數(shù)據(jù)的校驗(yàn)值,可以采用循環(huán)冗余校驗(yàn)碼(Cyclic Redundancy Check, CRC)校驗(yàn)等方式。
[0049]相應(yīng)地,針對(duì)已經(jīng)加擾的原始數(shù)據(jù)的接收或讀取方式本實(shí)施例還繼續(xù)提供了如下方法:
[0050]如圖3所示,包括:
[0051]201,接收到來(lái)自總線(xiàn)上的加擾處理后的原始數(shù)據(jù)和第一校驗(yàn)值和/或從存儲(chǔ)器中讀取出加擾處理后的原始數(shù)據(jù)和第一校驗(yàn)值;
[0052]接收/讀取到的數(shù)據(jù)為:經(jīng)加擾處理的原始數(shù)據(jù)+校驗(yàn)值。
[0053]202,計(jì)算該加擾處理后的原始數(shù)據(jù)的第二校驗(yàn)值;若該第一校驗(yàn)值與第二校驗(yàn)值