本發(fā)明涉及通訊技術(shù)領(lǐng)域,更具體的涉及一種LTE系統(tǒng)中的保護數(shù)據(jù)完整性的方法及裝置。
背景技術(shù):
經(jīng)過三十多年的飛速發(fā)展,蜂窩網(wǎng)絡(luò)系統(tǒng)已經(jīng)發(fā)展到了第四代,即LTE(英文為:Long Term Evolution,中文為:長期演進)系統(tǒng)。蜂窩網(wǎng)的安全性問題正在得到越來越多的關(guān)注,而且相對于以前,因為無線網(wǎng)絡(luò)在空氣中傳播信息,因此傳輸?shù)男畔⒑苋菀妆唤俪植⒈淮鄹幕騻卧?,所以攻擊移動網(wǎng)絡(luò)所消耗的代價正在變的越來越小。
保護數(shù)據(jù)的完整性可以保護數(shù)據(jù)避免被篡改或偽造,從而提高通信過程中數(shù)據(jù)傳輸?shù)陌踩院涂煽啃浴?/p>
在公鑰密碼領(lǐng)域,數(shù)據(jù)的完整性保護由數(shù)字簽名來完成;在對稱密碼領(lǐng)域,數(shù)據(jù)的完整性保護由MAC(英文為:MessageAuthentication Code,中文為:消息認證碼)來完成。由于數(shù)字簽名的計算速度慢、效率低,因此在一些計算資源相對較少的環(huán)境下,一般通過MAC來保護數(shù)據(jù)的完整性。而LTE系統(tǒng)中計算資源較少,因此使用MAC來保護數(shù)據(jù)的完整性。
LTE系統(tǒng)中現(xiàn)有的數(shù)據(jù)完整保護方法基于MAC生成算法EIA1,但該算法具有線性性質(zhì),攻擊者可以利用該性質(zhì)進行偽造攻擊,即如果在兩次信息傳輸過程中使用相同的密鑰流,攻擊者就可通過利用兩次傳輸?shù)男畔⒑图用芎笏a(chǎn)生消息認證碼,偽造出新的信息和其對應(yīng)的MAC,并且能夠通過接收方的驗證,從而達到偽造攻擊的目的。
綜上所述,現(xiàn)有的數(shù)據(jù)完整保護方法存在抵抗偽造攻擊能力差,從而導致不能保護數(shù)據(jù)完整性的問題。
技術(shù)實現(xiàn)要素:
本發(fā)明實施例提供一種LTE系統(tǒng)中的保護數(shù)據(jù)完整性的方法及裝置,用以解決現(xiàn)有的數(shù)據(jù)完整保護方法存在抵抗偽造攻擊能力差,從而導致不能保護數(shù)據(jù)完整性的問題。
本發(fā)明實施例提供一種LTE系統(tǒng)中的保護數(shù)據(jù)完整性的方法,包括:
終端生成具有I比特長數(shù)據(jù)的密鑰流K,將所述密鑰流K按照由低位到高位的排序依次分為P、Q和OTP三部分;將待保護數(shù)據(jù)M分成n份,根據(jù)所述數(shù)據(jù)M分成n份的數(shù)量,所述P,所述Q,所述OTP和所述數(shù)據(jù)M,通過公式(1)確定第一消息認證碼;
將所述密鑰流K,所述第一消息認證碼和所述數(shù)據(jù)M發(fā)送至基站;
所述基站將所述數(shù)據(jù)M分成n份,根據(jù)接收到的所述密鑰流K和所述數(shù)據(jù)M,通過公式(2)確定第二消息認證碼;將所述第二消息認證碼和所述第一消息認證碼包括的每一位數(shù)值進行比對,若每一位數(shù)值都相等,則確定基站接受到的數(shù)據(jù)具有完整性;
公式(1)如下所示:
公式(2)如下所述:
其中,MAC為第一消息認證碼,MACnew為第二消息認證碼,LEN的值為數(shù)據(jù)M的長度,“+”表示異或運算,[]0..31表示截取中括號中所得值的低32比特數(shù)據(jù),i∈[0,n-1],M0為數(shù)據(jù)M的第一份,Mi表示第i+1份數(shù)據(jù),表示整數(shù)環(huán)232上的加法,表示有限域264上的乘法,Ti為前i+1份消息(M0,M1,M2...Mi)被加密后的數(shù)據(jù)。
本發(fā)明實施例還提供一種LTE系統(tǒng)中的保護數(shù)據(jù)完整性的裝置,包括:
消息生成單元,用于生成具有I比特長數(shù)據(jù)的密鑰流K,將所述密鑰流K按照由低位到高位的排序依次分為P、Q和OTP三部分;將待保護數(shù)據(jù)M分成n份,根據(jù)所述數(shù)據(jù)M分成n份的數(shù)量,所述P,所述Q,所述OTP和所述數(shù)據(jù)M,通過公式(1)確定第一消息認證碼;
消息發(fā)送單元,用于將所述密鑰流K,所述第一消息認證碼和所述數(shù)據(jù)M發(fā)送至基站;
消息對比單元,用于將所述數(shù)據(jù)M分成n份,根據(jù)接收到的所述密鑰流K和所述數(shù)據(jù)M,通過公式(2)確定第二消息認證碼;將所述第二消息認證碼和所述第一消息認證碼包括的每一位數(shù)值進行比對,若每一位數(shù)值都相等,則確定基站接受到的數(shù)據(jù)具有完整性;
公式(1)如下所示:
公式(2)如下所述:
其中,MAC為第一消息認證碼,MACnew為第二消息認證碼,LEN的值為數(shù)據(jù)M的長度,“+”表示異或運算,[]0..31表示截取中括號中所得值的低32比特數(shù)據(jù),i∈[0,n-1],M0為數(shù)據(jù)M的第一份,Mi表示第i+1份數(shù)據(jù),表示整數(shù)環(huán)232上的加法,表示有限域264上的乘法,Ti為前i+1份消息(M0,M1,M2...Mi)被加密后的數(shù)據(jù)。
本發(fā)明實施例提供一種LTE系統(tǒng)中的保護數(shù)據(jù)完整性的方法及裝置,包括:終端生成具有I比特長數(shù)據(jù)的密鑰流K,將所述密鑰流K按照由低位到高位的排序依次分為P、Q和OTP三部分;將待保護數(shù)據(jù)M分成n份,根據(jù)所述數(shù)據(jù)M分成n份的數(shù)量,所述P,所述Q,所述OTP和所述數(shù)據(jù)M,通過公式確定第一消息認證碼;將所述密鑰流K,所述第一消息認證碼和所述數(shù)據(jù)M發(fā)送至基站;所述基站將所述數(shù)據(jù)M分成n份,根據(jù)接收到的所述密鑰流K和所述數(shù)據(jù)M,通過公式確定第二消息認證碼;將所述第二消息認證碼和所述第一消息認證碼包括的每一位數(shù)值進行比對,若每一位數(shù)值都相等,則確定基站接受到的數(shù)據(jù)具有完整性;其中,MAC為第一消息認證碼,MACnew為第二消息認證碼,LEN的值為數(shù)據(jù)M的長度,“+”表示異或運算,[]0..31表示截取中括號中所得值的低32比特數(shù)據(jù),i∈[0,n-1],M0為數(shù)據(jù)M的第一份,Mi表示第i+1份數(shù)據(jù),表示整數(shù)環(huán)232上的加法,表示有限域264上的乘法,Ti為前i+1份消息(M0,M1,M2...Mi)被加密后的數(shù)據(jù)。在本發(fā)明實施例中,由于破壞EIA1的線性性質(zhì),從而達到可以使LTE系統(tǒng)抵抗偽造攻擊的目的,增加了LTE系統(tǒng)的安全性,保護了用戶數(shù)據(jù)的完整性。從而解決了現(xiàn)有的數(shù)據(jù)完整保護方法存在抵抗偽造攻擊能力差,導致不能保護數(shù)據(jù)完整性的問題。
附圖說明
為了更清楚地說明本發(fā)明實施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對實施例或現(xiàn)有技術(shù)描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的一些實施例,對于本領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動的前提下,還可以根據(jù)這些附圖獲得其他的附圖。
圖1為本發(fā)明實施例提供的一種LTE系統(tǒng)中的保護數(shù)據(jù)完整性的方法流程示意圖;
圖2為本發(fā)明實施例提供的一種LTE系統(tǒng)中的保護數(shù)據(jù)完整性的裝置結(jié)構(gòu)示意圖。
具體實施方式
下面將結(jié)合本發(fā)明實施例中的附圖,對本發(fā)明實施例中的技術(shù)方案進行清楚、完整地描述,顯然,所描述的實施例僅僅是本發(fā)明一部分實施例,而不是全部的實施例。基于本發(fā)明中的實施例,本領(lǐng)域普通技術(shù)人員在沒有做出創(chuàng)造性勞動前提下所獲得的所有其他實施例,都屬于本發(fā)明保護的范圍。
圖1為本發(fā)明實施例提供的一種LTE系統(tǒng)中的保護數(shù)據(jù)完整性的方法流程示意圖,該方法可以應(yīng)用在數(shù)據(jù)傳送過程中。
如圖1所示,本發(fā)明實施例提供的一種LTE系統(tǒng)中的保護數(shù)據(jù)完整性的方法,包括下列步驟:
步驟101,終端生成具有I比特長數(shù)據(jù)的密鑰流K,將所述密鑰流K按照由低位到高位的排序依次分為P、Q和OTP三部分;將待保護數(shù)據(jù)M分成n份,根據(jù)所述數(shù)據(jù)M分成n份的數(shù)量,所述P,所述Q,所述OTP和所述數(shù)據(jù)M,通過公式(1)確定第一消息認證碼;
步驟102,將所述密鑰流K,所述第一消息認證碼和所述數(shù)據(jù)M發(fā)送至基站;
步驟103,所述基站將所述數(shù)據(jù)M分成n份,根據(jù)接收到的所述密鑰流K和所述數(shù)據(jù)M,通過公式(2)確定第二消息認證碼;將所述第二消息認證碼和所述第一消息認證碼包括的每一位數(shù)值進行比對,若每一位數(shù)值都相等,則確定基站接受到的數(shù)據(jù)具有完整性;
公式(1)如下所示:
公式(2)如下所述:
其中,MAC為第一消息認證碼,MACnew為第二消息認證碼,LEN的值為數(shù)據(jù)M的長度,“+”表示異或運算,[]0..31表示截取中括號中所得值的低32比特數(shù)據(jù),i∈[0,n-1],M0為數(shù)據(jù)M的第一份,Mi表示第i+1份數(shù)據(jù),表示整數(shù)環(huán)232上的加法,表示有限域264上的乘法,Ti為前i+1份消息(M0,M1,M2...Mi)被加密后的數(shù)據(jù)。
在本發(fā)明實施例中,終端可以是手機,可以是計算機,在本發(fā)明實施例中,對終端的具體要素不做任何限定。
在步驟101中,終端生成具有I比特長數(shù)據(jù)的秘鑰流K,并將該密鑰流K按照由低位到高位的排序依次分為P、Q和OTP三部分,其中,P、Q和OTP三部分所包括的數(shù)據(jù)的比特長長度不一致。
舉例來說,手機系統(tǒng)隨機選取128比特長的初始值和128比特長的初始密鑰,作為Snow3G算法的輸入,輸出的160比特長的值作為密鑰流K。進一步地,將生成的160比特長的密鑰流K由低位到高位依次截斷成P、Q和OTP三部分,其中P、Q都是64比特長,OTP是32比特長。
需要說明的是,在本發(fā)明實施例中,對秘鑰流K所包括的數(shù)據(jù)I的具體比特長長度不做限定。
在實際應(yīng)用中,在終端生成密鑰流K之后,會將該秘鑰流K發(fā)送給基站。
進一步地,終端將需要保護的數(shù)據(jù)M分成n份,其中,M數(shù)據(jù)分成的n份,每個n數(shù)據(jù)包括的比特長長度均相等,在實際應(yīng)用中,當存在第n份數(shù)據(jù)包括的數(shù)據(jù)的比特長長度和其它份數(shù)據(jù)包括的數(shù)據(jù)的比特長長度不相等時,則在該第n份數(shù)據(jù)的高位補0,直到該第n份數(shù)據(jù)包括的數(shù)據(jù)的比特長長度和其它份數(shù)據(jù)包括的數(shù)據(jù)的比特長長度相等。
舉例來說,手機系統(tǒng)把需要保護的數(shù)據(jù)M分成n份,每份長度為64比特;如果第n份不足64比特,則在高位補0,直到64-bit;其中,Mi表示第i+1份數(shù)據(jù),i∈[0,n-1]。
進一步地,根據(jù)待數(shù)據(jù)M分成n份的數(shù)量,密鑰流K分成的P,Q,OTP和數(shù)據(jù)M,通過公式(1),可以確定終端發(fā)送的第一消息認證碼。
其中,MAC為第一消息認證碼,LEN的值為數(shù)據(jù)M的長度,“+”表示異或運算,[]0..31表示截取中括號中所得值的低32比特數(shù)據(jù)。
進一步地,公式(1)內(nèi)的Tn-1可以參考下列公式(3)確定:
其中,i∈[0,n-1],M0為數(shù)據(jù)M的第一份,Mi表示第i+1份數(shù)據(jù),表示整數(shù)環(huán)232上的加法,表示有限域264上的乘法,Ti為前i+1份消息(M0,M1,M2...Mi)被加密后的數(shù)據(jù)。
在步驟102中,終端將確定的第一消息認證碼和數(shù)據(jù)M發(fā)送至基站。
在步驟103中,基站依次接收到終端發(fā)送的密鑰流K,第一消息認證碼和數(shù)據(jù)M。
和終端對密鑰流K的處理方法一致,基站將接收到的密鑰流K由低位到高位依次截斷成P、Q和OTP三部分。舉例來說,基站將從終端接收到的密鑰流K由低位到高位依次截斷成P、Q和OTP三部分,其中P、Q都是64比特長,OTP是32比特長。
進一步地,將接收到的數(shù)據(jù)M分成n份,其中,基站將接收到的數(shù)據(jù)M分成n份的方法和終端將數(shù)據(jù)M分成n份的方法一致。
進一步地,基站根據(jù)上述對秘鑰流K和數(shù)據(jù)M的處理方法,通過公式(2)確定第二消息認證碼。
其中,MACnew為第二消息認證碼,LEN的值為數(shù)據(jù)M的長度,“+”表示異或運算,[]0..31表示截取中括號中所得值的低32比特數(shù)據(jù)。
進一步地,公式(2)內(nèi)的Tn-1可以參考下列公式(3)確定:
其中,i∈[0,n-1],M0為數(shù)據(jù)M的第一份,Mi表示第i+1份數(shù)據(jù),表示整數(shù)環(huán)232上的加法,表示有限域264上的乘法,Ti為前i+1份消息(M0,M1,M2...Mi)被加密后的數(shù)據(jù)。
基站將通過公式(2)確定的第二消息認證碼和第一消息認證碼上的每一位數(shù)值進行比對,若每一位上的數(shù)值都相等,則可以確定基站接收到的終端發(fā)送的數(shù)據(jù)M具有完整性,相反地,若第二消息認證碼和第一消息認證碼上存在某個數(shù)位上的數(shù)值不相等,則確定基站接收到的終端發(fā)送的數(shù)據(jù)M不完整。
綜上所述,在本發(fā)明實施例中,由于破壞EIA1的線性性質(zhì),從而達到可以使LTE系統(tǒng)抵抗偽造攻擊的目的,增加了LTE系統(tǒng)的安全性,保護了用戶數(shù)據(jù)的完整性。從而解決了現(xiàn)有的數(shù)據(jù)完整保護方法存在抵抗偽造攻擊能力差,導致不能保護數(shù)據(jù)完整性的問題。
基于同一發(fā)明構(gòu)思,本發(fā)明實施例提供了一種LTE系統(tǒng)中的保護數(shù)據(jù)完整性的裝置,由于該裝置解決技術(shù)問題的原理與一種LTE系統(tǒng)中的保護數(shù)據(jù)完整性的方法相似,因此該裝置的實施可以參見方法的實施,重復之處不再贅述。
圖2為本發(fā)明實施例提供的一種LTE系統(tǒng)中的保護數(shù)據(jù)完整性的裝置結(jié)構(gòu)示意圖,具體地,包括:
消息生成單元21,用于生成具有I比特長數(shù)據(jù)的密鑰流K,將所述密鑰流K按照由低位到高位的排序依次分為P、Q和OTP三部分;將待保護數(shù)據(jù)M分成n份,根據(jù)所述數(shù)據(jù)M分成n份的數(shù)量,所述P,所述Q,所述OTP和所述數(shù)據(jù)M,通過公式(1)確定第一消息認證碼;
消息發(fā)送單元22,用于將所述密鑰流K,所述第一消息認證碼和所述數(shù)據(jù)M發(fā)送至基站;
消息對比單元23,用于將所述數(shù)據(jù)M分成n份,根據(jù)接收到的所述密鑰流K和所述數(shù)據(jù)M,通過公式(2)確定第二消息認證碼;將所述第二消息認證碼和所述第一消息認證碼包括的每一位數(shù)值進行比對,若每一位數(shù)值都相等,則確定基站接受到的數(shù)據(jù)具有完整性;
公式(1)如下所示:
公式(2)如下所述:
其中,MAC為第一消息認證碼,MACnew為第二消息認證碼,LEN的值為數(shù)據(jù)M的長度,“+”表示異或運算,[]0..31表示截取中括號中所得值的低32比特數(shù)據(jù),i∈[0,n-1],M0為數(shù)據(jù)M的第一份,Mi表示第i+1份數(shù)據(jù),表示整數(shù)環(huán)232上的加法,表示有限域264上的乘法,Ti為前i+1份消息(M0,M1,M2...Mi)被加密后的數(shù)據(jù)。
優(yōu)選地,所述消息生成單元21還用于:
將所述密鑰流K發(fā)送至基站。
應(yīng)當理解,以上一種LTE系統(tǒng)中的保護數(shù)據(jù)完整性的裝置包括的單元僅為根據(jù)該設(shè)備裝置實現(xiàn)的功能進行的邏輯劃分,實際應(yīng)用中,可以進行上述單元的疊加或拆分。并且該實施例提供的一種LTE系統(tǒng)中的保護數(shù)據(jù)完整性的裝置所實現(xiàn)的功能與上述實施例提供的一種LTE系統(tǒng)中的保護數(shù)據(jù)完整性的分析方法一一對應(yīng),對于該裝置所實現(xiàn)的更為詳細的處理流程,在上述方法實施例一中已做詳細描述,此處不再詳細描述。=
本領(lǐng)域內(nèi)的技術(shù)人員應(yīng)明白,本發(fā)明的實施例可提供為方法、系統(tǒng)、或計算機程序產(chǎn)品。因此,本發(fā)明可采用完全硬件實施例、完全軟件實施例、或結(jié)合軟件和硬件方面的實施例的形式。而且,本發(fā)明可采用在一個或多個其中包含有計算機可用程序代碼的計算機可用存儲介質(zhì)(包括但不限于磁盤存儲器、CD-ROM、光學存儲器等)上實施的計算機程序產(chǎn)品的形式。
本發(fā)明是參照根據(jù)本發(fā)明實施例的方法、設(shè)備(系統(tǒng))、和計算機程序產(chǎn)品的流程圖和/或方框圖來描述的。應(yīng)理解可由計算機程序指令實現(xiàn)流程圖和/或方框圖中的每一流程和/或方框、以及流程圖和/或方框圖中的流程和/或方框的結(jié)合??商峁┻@些計算機程序指令到通用計算機、專用計算機、嵌入式處理機或其他可編程數(shù)據(jù)處理設(shè)備的處理器以產(chǎn)生一個機器,使得通過計算機或其他可編程數(shù)據(jù)處理設(shè)備的處理器執(zhí)行的指令產(chǎn)生用于實現(xiàn)在流程圖一個流程或多個流程和/或方框圖一個方框或多個方框中指定的功能的裝置。
這些計算機程序指令也可存儲在能引導計算機或其他可編程數(shù)據(jù)處理設(shè)備以特定方式工作的計算機可讀存儲器中,使得存儲在該計算機可讀存儲器中的指令產(chǎn)生包括指令裝置的制造品,該指令裝置實現(xiàn)在流程圖一個流程或多個流程和/或方框圖一個方框或多個方框中指定的功能。
這些計算機程序指令也可裝載到計算機或其他可編程數(shù)據(jù)處理設(shè)備上,使得在計算機或其他可編程設(shè)備上執(zhí)行一系列操作步驟以產(chǎn)生計算機實現(xiàn)的處理,從而在計算機或其他可編程設(shè)備上執(zhí)行的指令提供用于實現(xiàn)在流程圖一個流程或多個流程和/或方框圖一個方框或多個方框中指定的功能的步驟。
盡管已描述了本發(fā)明的優(yōu)選實施例,但本領(lǐng)域內(nèi)的技術(shù)人員一旦得知了基本創(chuàng)造性概念,則可對這些實施例作出另外的變更和修改。所以,所附權(quán)利要求意欲解釋為包括優(yōu)選實施例以及落入本發(fā)明范圍的所有變更和修改。
顯然,本領(lǐng)域的技術(shù)人員可以對本發(fā)明進行各種改動和變型而不脫離本發(fā)明的精神和范圍。這樣,倘若本發(fā)明的這些修改和變型屬于本發(fā)明權(quán)利要求及其等同技術(shù)的范圍之內(nèi),則本發(fā)明也意圖包含這些改動和變型在內(nèi)。