張美玲 竇佩佩
摘 要:移動(dòng)通信中的f9算法是信令消息的完整性驗(yàn)證算法,它通過內(nèi)核算法計(jì)算出信息的消息認(rèn)證碼,內(nèi)核算法的安全性決定了f9算法的安全性。針對(duì)這個(gè)特性,提出了以IDEA為內(nèi)核算法的f9算法,并與原內(nèi)核為KASUMI的f9算法在加密速度上進(jìn)行了比較。實(shí)驗(yàn)結(jié)果表明內(nèi)核為IDEA的f9算法在加密速度上有了明顯的提高。
【關(guān)鍵詞】移動(dòng)通信 f9算法 IDEA 速度測(cè)試
目前,移動(dòng)通信正在向4G通信平滑過渡,4G通信系統(tǒng)備受廣泛研究,4G的發(fā)展是繼 3G 標(biāo)準(zhǔn)的另一個(gè)階段。移動(dòng)通信提供了多媒體業(yè)務(wù)、數(shù)據(jù)業(yè)務(wù)、以及多種信息服務(wù)。人們?cè)谑褂眠@些服務(wù)的同時(shí),大量敏感數(shù)據(jù)通過無線信道傳送或者存儲(chǔ)在無線平臺(tái)上,因此這些業(yè)務(wù)的大量出現(xiàn)對(duì)移動(dòng)通信網(wǎng)絡(luò)的安全性提出了更高的要求。3G系統(tǒng)中的安全方案主要是實(shí)現(xiàn)用戶間安全通信,為特定的業(yè)務(wù)類型而設(shè)計(jì),其中f9算法是信令消息的完整性驗(yàn)證算法,用于對(duì)移動(dòng)站和網(wǎng)絡(luò)間發(fā)送的控制信令信息進(jìn)行完整性驗(yàn)證。f9算法的研究對(duì)4G系統(tǒng)的網(wǎng)絡(luò)安全有很大的作用,能幫助4G移動(dòng)通信機(jī)制更加健壯。
1 f9算法簡(jiǎn)介
f9算法通過KASUMI算法生成完整性消息認(rèn)證碼(MAC-I),對(duì)用戶終端(UE)和無線網(wǎng)絡(luò)控制器(RNC)之間的無線鏈路上的信令數(shù)據(jù)進(jìn)行完整性保護(hù)和并對(duì)信令數(shù)據(jù)來源進(jìn)行認(rèn)證。f9算法是二進(jìn)制消息認(rèn)證MAC產(chǎn)生模塊,在主密鑰的控制下,采用密碼分組鏈接模式CBC,產(chǎn)生的消息認(rèn)證碼用來對(duì)通信數(shù)據(jù)的來源和完整性進(jìn)行認(rèn)證。
2 KASUMI算法
KASUMI算法主要用來構(gòu)建3G系統(tǒng)中的安全算法f8和f9。它是基于日本三菱公司的分組密碼MISTY算法進(jìn)行改進(jìn)的。KASUMI算法是一個(gè)采用Feistel結(jié)構(gòu)的分組加密算法,密鑰長(zhǎng)度為128比特,對(duì)一個(gè)64比特的輸入分組進(jìn)行八輪的迭代運(yùn)算,產(chǎn)生長(zhǎng)度為64比特的輸出。輪函數(shù)包括一個(gè)輸入輸出為32比特的非線性混合函數(shù)FO和一個(gè)輸入輸出為32比特的線性混合函數(shù)FL。函數(shù)FO由一個(gè)輸入輸出為16比特的非線性混合函數(shù)FI進(jìn)行3輪重復(fù)運(yùn)算而構(gòu)成。而函數(shù)FI是由使用非線性的S-盒S7和S9構(gòu)成的4輪結(jié)構(gòu)。
3 以IDEA算法為f9算法的內(nèi)核算法
3.1 IDEA算法簡(jiǎn)介
IDEA算法是分組長(zhǎng)度為64位,密鑰長(zhǎng)度為128位的分組密碼算法,加密算法與解密算法相同。輸入的64-位數(shù)據(jù)分組被分成4個(gè)16-位子分組:X1,X2,X3,X4。這4個(gè)子分組成為算法的第一輪的輸入,總共有8輪。在每一輪中,這4個(gè)子分組相互相異或,相加,相乘,且與6個(gè)16-位子密鑰相異或,相加,相乘。在輪與輪間,第二和第三個(gè)子分組交換。最后在輸出變換中4個(gè)子分組與4個(gè)子密鑰進(jìn)行運(yùn)算。
該算法用了52個(gè)子密鑰(8輪中的每一輪需要6個(gè),其他4個(gè)用與輸出變換)。首先,將128-位密鑰分成8個(gè)16-位子密鑰。這些是算法的第一批8個(gè)子密鑰(第一輪六個(gè),第二輪的頭兩個(gè))。然后,密鑰向左環(huán)移25位后再分成8個(gè)子密鑰。開始4個(gè)用在第二輪,后面4個(gè)用在第三輪。密鑰再次向左環(huán)移25位產(chǎn)生另外8個(gè)子密鑰,如此進(jìn)行直到算法結(jié)束。
3.2 內(nèi)核為IDEA的f9算法實(shí)現(xiàn)
由于IDEA算法理論設(shè)計(jì)上能抵抗差分攻擊和線性攻擊,具有很高的安全性,軟硬件實(shí)現(xiàn)容易,算法處理速度快,滿足3GPP中安全算法的要求,所以IDEA算法可以作為f9的內(nèi)核算法。IDEA算法和KASUMI算法的明文分組長(zhǎng)度和密鑰長(zhǎng)度相同,所以IDEA算法應(yīng)用在f9算法中的參數(shù)設(shè)置也是一致的。
3.2.1 輸入輸出參數(shù)
f9算法在輸入?yún)?shù)完整性序列號(hào)COUNT、方向標(biāo)識(shí)DIRECTION、隨機(jī)數(shù)FRESH、主密鑰IK和認(rèn)證消息MESSAGE的作用下,生成消息認(rèn)證碼MAC-I。其參數(shù)如表1所示。
3.2.2 初始化設(shè)置
設(shè)置寄存器變量A=0,B=0,分別為64bit;KM為128bit常數(shù),設(shè)置為0123456789ABCDEF0123456789ABCDEF;PS = COUNT ||FRESH||MESSAGE||DIRECTION[0]||1||0...0。PS為輸入?yún)?shù)COUNT,F(xiàn)RESH, MESSAGE和DIRECTION并聯(lián)在一起,其后再放一個(gè)“1”,跟著在“1”后面填充0,使PS的位數(shù)為64的整數(shù)倍數(shù)。
3.2.3 消息認(rèn)證碼
消息認(rèn)證碼由以下流程生成:
(1)先將PS分成若干個(gè)長(zhǎng)度為64bit的分組PSn,0 (2)計(jì)算寄存器A的值:A=IDEA(A⊕PSn,IK) (3)計(jì)算寄存器B的值:B =B⊕A (4)計(jì)算B = IDEA(B,IK⊕KM) (5)取得32bit的消息認(rèn)證碼為B的左邊32個(gè)bit:MAC-I[i] = B[i] (i=0…31),右邊的32個(gè)bit即B[32] ...B[63]被舍棄。 4 速度測(cè)試比較 本實(shí)驗(yàn)采用的機(jī)器型號(hào)為:Intel處理器主頻為3.3GHz;內(nèi)存為4G;操作系統(tǒng)為Windows 7;機(jī)器型號(hào)為Core i3-3220。在Microsoft Visual C++ 6.0開發(fā)工具中用CTimeSpan類在加密程序的開始和結(jié)束用來獲取時(shí)間,兩個(gè)時(shí)間之差就是程序所用時(shí)間。本文做了五次測(cè)試,采用五個(gè)不同的主密鑰,如表2所示,每次測(cè)試來加密不同的數(shù)據(jù)量,最后將五次實(shí)驗(yàn)求得平均值。 為了比較內(nèi)核為KASUMI算法和IDEA算法的f9軟件實(shí)現(xiàn)的加密速度,采用的是相同的參數(shù)設(shè)置,相同的機(jī)器環(huán)境、相同的明文以及相同的五種主密鑰。使用兩種不同內(nèi)核算法的f9在五種主密鑰下加密9種不同的數(shù)據(jù)量所用的時(shí)間對(duì)比見圖1所示(單位為毫秒)。
從圖1可以看出,隨著數(shù)據(jù)量的增加,內(nèi)核為IDEA的f9算法,比起原始內(nèi)核為KASUMI的f9算法,加密速度有很大的提高,所用的平均時(shí)間比以前少了2s左右。從理論上講,采用IDEA為內(nèi)核算法的f9方案從實(shí)現(xiàn)效率角度來看是可行。這就為3G無線鏈路上數(shù)據(jù)保護(hù)的安全性研究提供了可行性依據(jù)。
5 結(jié)束語
內(nèi)核算法是f9算法的重要組成部分,f9算法是通過內(nèi)核算法計(jì)算出信息的消息認(rèn)證碼,內(nèi)核算法的安全性直接決定了f9算法的安全性。本文研究了內(nèi)核為IDEA的f9算法,并與原始內(nèi)核KASUMI的f9算法在加密速度上進(jìn)行了比較。實(shí)驗(yàn)結(jié)果表明內(nèi)核為IDEA比原始KASUMI的f9算法在加密速度上有了明顯的提高。這就為移動(dòng)通信無線鏈路上數(shù)據(jù)保護(hù)的安全性研究和分組密碼IDEA算法充當(dāng)f9的內(nèi)核算法的可能性提供了理論依據(jù)。
參考文獻(xiàn)
[1]唐成永.4G時(shí)代的信息安全威脅[J].信息與電腦,2015.
[2]朱里奇.第三代移動(dòng)通信系統(tǒng)(3G)安全性研究[D].武漢:華中科技大學(xué),2004.
[3]3GPP TS 35.201.Specification of 3GPP confidentiality and integrity algorithm:f8 and f9 specification[S],2009.
[4]3GPP TS 35.202.Specification of 3GPP confidentiality and integrity algorithm:KASUMI specification[S],2007.
[5]Lai X.On the Design and Security of Block Ciphers.ETH Series in Information Processing(1).Hartung-gorre Verlag,Konstanz,1992.
[6]Bruce Schneier 著,吳世忠等譯.應(yīng)用密碼學(xué)-協(xié)議、算法與C語言程序[M].北京:機(jī)械工業(yè)出版社,2000.
[7]3GPP TS 33.105.3G Security Cryptographic Algorithm Requirement[S].2001.
[8]劉丹 張亞新等編著. Visual C++從入門到精通(第二版)[M].北京:化學(xué)工業(yè)出版社,2011.
作者簡(jiǎn)介
張美玲(1981-),女,河南省滑縣人。軍事學(xué)碩士研究生學(xué)歷?,F(xiàn)為石河子大學(xué)信息科學(xué)與技術(shù)學(xué)院講師。研究方向?yàn)?密碼通信技術(shù)。
竇佩佩(1988-),女,陜西省鳳翔縣人。軍事學(xué)碩士研究生學(xué)歷。現(xiàn)為石河子大學(xué)信息科學(xué)與技術(shù)學(xué)院講師。研究方向?yàn)?密碼加解密算法研究。
作者單位
石河子大學(xué)信息科學(xué)與技術(shù)學(xué)院 新疆維吾爾自治區(qū)石河子市 832000