藍(lán)牙技術(shù)中加密算法研究論文

時(shí)間:2022-11-17 04:12:00

導(dǎo)語:藍(lán)牙技術(shù)中加密算法研究論文一文來源于網(wǎng)友上傳,不代表本站觀點(diǎn),若需要原創(chuàng)文章可咨詢客服老師,歡迎參考。

藍(lán)牙技術(shù)中加密算法研究論文

摘要此文主要討論藍(lán)牙技術(shù)中的加密算法和安全措施,并進(jìn)一步提出

了對于藍(lán)牙加密算法所存在的問題的解決方案。

關(guān)鍵字藍(lán)牙流加密分組加密DESAES

1引言

隨著計(jì)算機(jī)網(wǎng)絡(luò)技術(shù)的迅速發(fā)展,網(wǎng)絡(luò)中的信息安全問題越來越受到廣泛關(guān)注。信息安全主要涉及到用戶身份驗(yàn)證、訪問控制、數(shù)據(jù)完整性、數(shù)據(jù)加密等問題。網(wǎng)絡(luò)安全產(chǎn)品大量涌現(xiàn)。雖然各種網(wǎng)絡(luò)安全產(chǎn)品的功能多種多樣,但它們無一例外地要使用加密技術(shù)。一個(gè)好的加密算法首先表現(xiàn)在它的安全性上,一個(gè)不安全的算法會(huì)使使用它的網(wǎng)絡(luò)變得更加脆弱;其次要考慮它在軟硬件方面實(shí)現(xiàn)的難易度,不易實(shí)現(xiàn)的加密算法是不現(xiàn)實(shí)的;第三要看使用此加密算法會(huì)不會(huì)降低數(shù)據(jù)傳輸速率。

藍(lán)牙技術(shù)是一種新興的無線網(wǎng)絡(luò)標(biāo)準(zhǔn),它基于芯片提供短距離范圍的無線跳頻通信。它注定會(huì)成為一項(xiàng)通用的低成本無線技術(shù),可適用于一系列范圍廣泛的數(shù)據(jù)通信應(yīng)用。藍(lán)牙標(biāo)準(zhǔn)定義了一系列安全機(jī)制,從而為近距離無線通信提供了基本的保護(hù)。它要求每個(gè)藍(lán)牙設(shè)備都要實(shí)現(xiàn)密鑰管理、認(rèn)證以及加密等功能。此外藍(lán)牙技術(shù)所采用的跳頻數(shù)據(jù)通信方式本身也是一個(gè)防止竊聽的有效安全手段。藍(lán)牙加密過程中所用到的加密算法是E0流密碼。但是這種算法存在有一些缺點(diǎn),128位密鑰長度的E0流加密在某些情況下可通過0(2^64)方式破解。所以對于大多數(shù)需要將保密放在首位來考慮的應(yīng)用來說,僅僅采用藍(lán)牙提供的數(shù)據(jù)安全性是不夠的。

2藍(lán)牙標(biāo)準(zhǔn)中的安全措施

藍(lán)牙技術(shù)中,物理層數(shù)據(jù)的安全性主要是采用了跳頻擴(kuò)展頻譜,由于藍(lán)牙技術(shù)采用了跳頻技術(shù)從而使得竊聽變得極困難。藍(lán)牙射頻工作在2.4Hz頻段。在北美和歐洲的大部分國家,藍(lán)牙設(shè)備工作與從2.402到2.480Hz的頻帶,整個(gè)頻帶被分為79個(gè)1MHz帶寬的子信道。FHSS依靠頻率的變化來對抗干擾。如果射頻單元在某個(gè)頻率遇到干擾,則會(huì)在下一步跳到另一頻率點(diǎn)時(shí)重傳受到干擾的信號(hào),因此總的干擾可變得很低。

為了得到完整的傳輸數(shù)據(jù),藍(lán)牙技術(shù)使用以下三種糾錯(cuò)方案:1/3比例前向糾錯(cuò)碼(FEC),2/3比例前向糾錯(cuò)碼(FEC),數(shù)據(jù)的自動(dòng)重發(fā)請求(ARQ)方案。

藍(lán)牙技術(shù)產(chǎn)品的認(rèn)證和加密服務(wù)一般由鏈路層提供,認(rèn)證采用口令-應(yīng)答方式進(jìn)行。在連接過程中往往需要一兩次認(rèn)證。為了確保通信安全,對藍(lán)牙技術(shù)產(chǎn)品進(jìn)行認(rèn)證是十分必要的,通過認(rèn)證之后,可以允許用戶自行增添可信任的藍(lán)牙技術(shù)設(shè)備,例如,用戶自己的筆記本電腦經(jīng)過認(rèn)證之后,能夠確保只有用戶自己的這臺(tái)筆記本電腦,才可以借助用戶自己的移動(dòng)電話手機(jī)進(jìn)行通信。

若對于通信有更高的安全要求,那么通信中的藍(lán)牙技術(shù)產(chǎn)品就不必局限于采用物理層的提供,還可以采用更高級(jí)別的傳輸層和應(yīng)用層安全機(jī)制,以確保基于藍(lán)牙技術(shù)產(chǎn)品的通信更加安全可靠。

3藍(lán)牙技術(shù)中的加密算法

在鏈路層中,藍(lán)牙系統(tǒng)提供了認(rèn)證、加密和密鑰管理等功能,每一個(gè)用戶都有一個(gè)標(biāo)識(shí)碼(PIN),藍(lán)牙設(shè)備中所用的PIN碼的長度可以在1到16個(gè)字節(jié)之間變化。通常4個(gè)字節(jié)的PIN碼已經(jīng)可以滿足一般應(yīng)用,但是更高安全級(jí)別的應(yīng)用將需要更長的碼字。PIN碼可以是藍(lán)牙設(shè)備提供的一個(gè)固定碼,也可以由用戶任意指定,標(biāo)識(shí)碼(PIN)會(huì)被一個(gè)128位鏈路密鑰來進(jìn)行單雙向認(rèn)證。一旦認(rèn)證完畢,鏈路層會(huì)以不同長度的密鑰來加密。如圖1。

PINPIN

認(rèn)證

鏈路密鑰

鏈路密鑰

加密

加密密鑰Kc

加密密鑰Kc

申請者校驗(yàn)者

圖1:藍(lán)牙中鏈路層的加密過程

藍(lán)牙技術(shù)在加密過程中所采用的加密算法如下表1。

表1:藍(lán)牙加密過程中所用的加密算法

3.1認(rèn)證算法

在認(rèn)證過程中,用于藍(lán)牙認(rèn)證的E1認(rèn)證函數(shù)來計(jì)算出一個(gè)安全認(rèn)證碼或被稱為MAC(媒體訪問控制地址)。E1所采用的算法是SAFER+,SAFER+算法是參與1997年美國國家標(biāo)準(zhǔn)技術(shù)研究所(NIST)征集AES(AdvancedEncryptionStandard)的候選算法之一。SAFER+是基于現(xiàn)有的64位分組密碼的SAFER-SK128,因此它的安全性可以說是經(jīng)過了時(shí)間的考驗(yàn)。

E1函數(shù)的輸入是linkkey,AU_RAND及BD_ADDR,它的定義如下:

E1:

在藍(lán)牙技術(shù)中,認(rèn)證采用口令-應(yīng)答方式。驗(yàn)證方要求申請者鑒別隨機(jī)數(shù)AU_RAND并返回計(jì)算結(jié)果SRES,若雙方的計(jì)算結(jié)果相等則認(rèn)證成功,并保留ACO(AuthenticatedCipheringOffset)值。若某次認(rèn)證失敗,則必須等待一定的時(shí)間間隔才能進(jìn)行再次認(rèn)證

3.2加密算法

在藍(lán)牙技術(shù)中,用戶信息可采用分組有效載荷的加密進(jìn)行保護(hù),但識(shí)別碼和分組頭不加密。有效載荷的加密采用E0流密碼來實(shí)現(xiàn)。E0將對每一有效載荷重新同步。流密碼系統(tǒng)E0由三部分組成。第一部分執(zhí)行初始化(生成有效載荷字),第二部分生成密鑰流,第三部分完成加密和解密,如圖2。

有效載荷字明碼文本/密碼文本

Kc

地址

時(shí)鐘Z密碼文本/明碼文本

RAND

圖2藍(lán)牙的E0流加密

有效載荷字發(fā)生器非常簡單,它僅僅以適當(dāng)序列對輸入的位進(jìn)行組合,然后將它們轉(zhuǎn)移到用于密鑰流發(fā)生器的四位LFSR中。加密機(jī)采用了四個(gè)線性反饋移位寄存器(LFSR),依次為LFSR1、LFSR2、LFSR3、LFSR4,其長度分別為25,31,33,39比特。LFSR的性質(zhì):加密機(jī)把四個(gè)LFSR的輸出結(jié)果輸入到一個(gè)有限狀態(tài)機(jī)中,經(jīng)有限狀態(tài)機(jī)的組合運(yùn)算輸出密鑰流序列,若在初始化階段則輸出一個(gè)隨機(jī)的初始化值。加密算法使用Kc、BD_ADDR、主時(shí)鐘CLK26-1及RAND這些參數(shù)。時(shí)鐘CLK26-1按時(shí)隙遞增,在任兩次發(fā)送中,CLK26-1至少有一位是不同的,因此在每次初始化后都將產(chǎn)生新的密鑰流。對占用多個(gè)時(shí)隙的分組來說,CLK26-1為分組所占的第一個(gè)時(shí)隙的時(shí)鐘值。

第二部分是該密碼系統(tǒng)的主要部分,并也將用于初始化過程中。密鑰流取自于Massey和Rueppel流密碼發(fā)生器的方法來生成。

最后就是流加密算法的加密過程。將數(shù)據(jù)流與密碼算法生成二進(jìn)制流比特進(jìn)行異或運(yùn)算。對于加密規(guī)則,流密碼算法用于將加密位按位模2并加到數(shù)據(jù)流上,然后通過無線接口進(jìn)行傳輸。對每一分組的有效載荷的加密是單獨(dú)進(jìn)行的,它發(fā)生在CRC校驗(yàn)之后,F(xiàn)EC編碼之前。由于加密是對稱的,解密使用完全和加密相同的密鑰和相同的方法實(shí)現(xiàn)。

4藍(lán)牙標(biāo)準(zhǔn)中加密算法存在的問題

藍(lán)牙所采用的E0流密碼算法的本身就有一些弱點(diǎn)。流密碼算法主要的缺點(diǎn)在于若一個(gè)偽隨機(jī)序列發(fā)生錯(cuò)誤便會(huì)使整個(gè)密文發(fā)生錯(cuò)誤,致使在解密過程中無法還原回明文。流加密算法系統(tǒng)的安全完全依靠密鑰流發(fā)生器的內(nèi)部機(jī)制。如果它的輸出是無窮無盡的0序列,那么密文就是明文,這樣整個(gè)系統(tǒng)就一文不值;如果它的輸出是一個(gè)周期性的16-位模式,那么該算法僅是一個(gè)可忽略安全性的異或運(yùn)算;如果輸出的是一系列無盡的隨機(jī)序列(是真正的隨機(jī),非偽隨機(jī)),那么就有一次一密亂碼本和非常完美的安全。實(shí)際的流密碼算法的安全性依賴于簡單的異或運(yùn)算和一次一密亂碼本。密鑰流發(fā)生器產(chǎn)生的看似隨機(jī)的密鑰流實(shí)際上是確定的,在解密的時(shí)候能很好的將其再現(xiàn)。密鑰流發(fā)生器輸出的密鑰越接近于隨機(jī),對密碼分析者來說就越困難。然而,這種隨機(jī)的密鑰流卻不容易得到。

在藍(lán)牙E0流加密中用到的LFSR易受到相關(guān)攻擊和分割解決攻擊,且用軟件實(shí)現(xiàn)效率非常低。在實(shí)現(xiàn)過程中要避免稀疏的反饋多項(xiàng)式,因?yàn)樗鼈円自獾较嚓P(guān)攻擊,但稠密的反饋多項(xiàng)式效率也很低。事實(shí)上LFSR算法用軟件實(shí)現(xiàn)并不比DES快。

以上的這些問題會(huì)讓人認(rèn)為藍(lán)牙的安全體系是高度不可靠的,然而一個(gè)不可忽略的事實(shí)是:通過藍(lán)牙連接傳輸?shù)臄?shù)據(jù)一般來說并不是非常重要的。目前藍(lán)牙標(biāo)準(zhǔn)考慮到的安全技術(shù)只適用于規(guī)模較小的網(wǎng)絡(luò),如果網(wǎng)絡(luò)結(jié)點(diǎn)較多,拓?fù)鋸?fù)雜(如AdHoc網(wǎng)絡(luò)),現(xiàn)有的基于點(diǎn)對點(diǎn)的密鑰分配和認(rèn)證機(jī)制不能滿足需求。藍(lán)牙所提供的數(shù)據(jù)安全性措施對小型應(yīng)用來說看起來已足夠了,但任何敏感數(shù)據(jù)或會(huì)產(chǎn)生問題的數(shù)據(jù)都不應(yīng)直接通過藍(lán)牙傳輸。為了使藍(lán)牙技術(shù)應(yīng)用得更廣泛,我們可采用另外更強(qiáng)勁的加密算法,如DES算法。

5DES解決方案

5.1DES簡介

1977年1月,美國政府采納了由IBM研制的作為非絕密信息的正式標(biāo)準(zhǔn)乘積密碼。這激勵(lì)了一大批生產(chǎn)廠家實(shí)現(xiàn)這個(gè)在保密產(chǎn)業(yè)中成為數(shù)據(jù)加密標(biāo)準(zhǔn)DES(dataencrytionstandard)的加密算法。此算法有一個(gè)64比特的密鑰作為參數(shù)。明文按64比特分組加密,生成64比特的密文。

由于DES是一種塊加密方法,這意味著加密過程是針對一個(gè)數(shù)據(jù)塊一個(gè)數(shù)據(jù)塊地進(jìn)行的。在DES算法中,原始信息被分成64位的固定長度數(shù)據(jù)塊,然后利用56位的加密密鑰通過置換和組合方法生成64位的加密信息。解密用的密鑰與加密密鑰相同,只是解密步驟正好相反。DES傳送數(shù)據(jù)的一般形式是以代入法密碼格式按塊傳送數(shù)據(jù)。DES采用的加密方法,一次加密一位或一個(gè)字節(jié),形成密碼流。密碼流具有自同步的特點(diǎn),被傳送的密碼文本中發(fā)生錯(cuò)誤和數(shù)據(jù)丟失,將只影響最終的明碼文本的一小段(64位),這稱為密碼反饋。

與藍(lán)牙流密碼算法不同,數(shù)學(xué)上可以證明分組加密算法是完全安全的。DES塊密碼是高度隨機(jī)的、非線性的,生成的加密密文與明文和密鑰的每一位都相關(guān)。DES的可用加密密鑰數(shù)量多達(dá)72x1015個(gè)。應(yīng)用于每一明文信息的密鑰都是從這一巨大數(shù)量的密鑰中隨機(jī)產(chǎn)生的。DES算法已被廣泛采用并被認(rèn)為是非常可靠的。

5.2藍(lán)牙中用DES取代E0流密碼

如圖1,在兩個(gè)藍(lán)牙設(shè)備經(jīng)過認(rèn)證并已生成了加密密鑰Kc后就可進(jìn)行加密了。因?yàn)镵c可在8~128比特變化,而DES加密算法使用長度為56比特的密鑰加密長度為64比特的明文從而獲得64比特的密文,所以這里可取Kc的長度為56比特。用DES加密藍(lán)牙數(shù)據(jù)分組的過程如下:

a)將來自藍(lán)牙分組分割成64比特的明文段。其中的一段記為x=DIN[63:0],先通過一個(gè)固定的初始置換IP,將x的比特置換為x0。即:x0=IP(x)=L0R0,這里L(fēng)0是x0的前32比特,R0是x0的后32比特。

b)進(jìn)行16輪完全相同的運(yùn)算,在這里是數(shù)據(jù)與密鑰相結(jié)合,例計(jì)算LiRi,。

Li=Ri-1

Ri=Lif(Ri-1,Ki)

其中Ki是來自密鑰Kc=Key[63:0]的比特的一個(gè)置換結(jié)果。而f函數(shù)是實(shí)現(xiàn)代替、置換及密鑰異或的函數(shù)。

c)對R16L16進(jìn)行初始置換IP的逆置換IP,獲得密文y=DOUT[63:0],即y=IP(R16L16)。最后一次迭代后,左邊和右邊未交換,將R16L16作為IP的輸入,目的是使算法可同時(shí)用于加密和解密。

無論是硬件還是軟件,此DES加密方案都易實(shí)現(xiàn)。其中DES的硬件實(shí)現(xiàn)如圖3。此硬件加密方案采用低成本的可編程邏輯器件和現(xiàn)成可用的用于高級(jí)加密處理的智力產(chǎn)權(quán)(IP)產(chǎn)品實(shí)現(xiàn)。目前,大批量時(shí)只用10美元即可購買到10萬系統(tǒng)門的可編程邏輯器件。這些器件還允許在設(shè)計(jì)中增加其它功能,如高級(jí)錯(cuò)誤糾正。因此可編程邏輯器件可大幅度降低系統(tǒng)級(jí)的成本。

用軟件(這里選用C語言)來實(shí)現(xiàn)該加密算法。為了算法實(shí)現(xiàn)的方便,這里刪去了初始置換和末置換。

將此加密算法嵌入藍(lán)牙協(xié)議中的基帶部分以取代E0流密碼算法,可允許藍(lán)牙技術(shù)安全地應(yīng)用到范圍廣泛的安全性具有最重要地位的應(yīng)用中去。這些應(yīng)用包括:金融電子交易:ATM、智能卡,安全電子商務(wù)交易,安全辦公通信,安全視頻監(jiān)視系統(tǒng),數(shù)字機(jī)頂盒,高清晰度電視(HDTV),其它消費(fèi)電子設(shè)備等領(lǐng)域。

另外,對藍(lán)牙加密這個(gè)過程中,可發(fā)現(xiàn)DES加密算法在近距離無線局域網(wǎng)的特定環(huán)境下存在一些問題。進(jìn)而優(yōu)化算法,最終可為應(yīng)用于各種近距離無線網(wǎng)絡(luò)通信的加密算法的選擇提供有實(shí)際意義的參考依據(jù)。

6結(jié)束語

藍(lán)牙是一項(xiàng)將會(huì)改變我們通信方式的令人激動(dòng)的新技術(shù)。然而,藍(lán)牙技術(shù)在標(biāo)準(zhǔn)化過程中都未曾完整地考慮安全問題。作為以無線信道為傳輸媒體的通信網(wǎng)絡(luò),藍(lán)牙網(wǎng)絡(luò)相對于固定網(wǎng)絡(luò)更容易受到攻擊。對于數(shù)據(jù)安全性處于首要地位的應(yīng)用來說,實(shí)現(xiàn)高水平的數(shù)據(jù)安全性是必須的。目前藍(lán)牙標(biāo)準(zhǔn)所采用的E0流密碼算法存在著很多弊端,而DES和RSA算法相對來說更安全,而且較易實(shí)現(xiàn)。

參考文獻(xiàn)

[1]金純許光辰等編著《藍(lán)牙技術(shù)》[M](北京)電子工業(yè)出版社2001年3月

[2]于躍韓永飛藍(lán)牙技術(shù)的安全性[J]《電信技術(shù)》2001年第9期

[3]Andrew《ComputerNetwork》[M]S.TanenbaunPrenticeHall1998

[4]VainioJ.,BluetoothSecurity,www.niksula.cs.hut.fi/~jiitv/bluesec.html05-25-2000

[5]Bluetooth,TheBluetoothSpecification,v.1.0B

/developer/specification/specification.asp

[6]賴溪松韓亮張真誠著《計(jì)算機(jī)密碼學(xué)及其應(yīng)用》[M](北京)國防工業(yè)出版社2001年7月

[7]盧鐵城編著《信息加密技術(shù)》[M](成都)四川科學(xué)技術(shù)出版1989年10月