藍牙技術(shù)的安全性
1 概論
藍牙技術(shù)基于芯片,提供短距離范圍的無線跳頻通信。它有很低的電源要求,并且可以被嵌入到任何數(shù)字設(shè)備之中。具有藍牙芯片的數(shù)字設(shè)備,比如便攜計算機、手機、PDA,可以通過藍牙移動網(wǎng)絡(luò)進行通信。幾年內(nèi),藍牙將會出現(xiàn)在電視機、Hi-Fis、VCR和微波爐等設(shè)備之中。
藍牙采用的無線跳頻技術(shù)使人們誤認為藍牙的安全機制已經(jīng)解決。可是實際上,無線跳頻技術(shù)對于竊聽者和截取者不是一個技術(shù)障礙。目前的藍牙芯片和設(shè)備并不具備數(shù)據(jù)的保密、數(shù)據(jù)的完整性和用戶身份認證等安全措施。
同其他無線通信網(wǎng)絡(luò)一樣,藍牙網(wǎng)絡(luò)也是一個開放的網(wǎng)絡(luò)?;ヂ?lián)網(wǎng)在設(shè)計之初,由于沒有考慮安全機制的設(shè)計,時至今日仍然面對著許多安全問題。第一代移動通信同樣沒有設(shè)計安全機制,致使第一代可移動通信設(shè)備可以被仿造和監(jiān)聽。第二代移動通信GSM網(wǎng)絡(luò)雖然使用了加密算法對用戶進行鑒別,但是加密算法比較弱,已經(jīng)十分容易被破譯,在互聯(lián)網(wǎng)上就可以下載破譯軟件;對語音信號沒有有效的加密措施,不但手機上沒有加密措施,機站間也沒有加密措施。
目前,互聯(lián)網(wǎng)和第三代移動通信以及WAP都采用PKI技術(shù)及公開密鑰算法和對稱密鑰算法的混合使用來保證可鑒別性、數(shù)據(jù)完整性和保密性以及通信的不可否定性。
現(xiàn)在,藍牙技術(shù)在SIG討論藍牙協(xié)議2.0版本的同時,工業(yè)界已實施藍牙協(xié)議的1.0版和1.0B版。目前,基于1.0B版的協(xié)議棧進入使用階段,各種藍牙設(shè)備業(yè)已面世或在研發(fā)之中。
藍牙技術(shù)在誕生之初,并沒有考慮其安全性的問題。雖然現(xiàn)在已提供128位的芯片號作為設(shè)備的鑒權(quán)號,可是它在通信中可以被篡改和冒用。
SIG最近開始重視藍牙的安全問題,并且初步提出了藍牙安全的模式1、模式2和模式3。由于模式3的詳細安全方案仍在討論中,本文主要以模式2為基點討論藍牙的安全性。
2 藍牙的安全結(jié)構(gòu)
藍牙技術(shù)已經(jīng)成為全球電信和電子技術(shù)發(fā)展的焦點。新開發(fā)的應(yīng)用藍牙技術(shù)的產(chǎn)品也層出不窮。藍牙技術(shù)正在被廣泛地應(yīng)用于計算機網(wǎng)絡(luò)、手機、PDA和其他領(lǐng)域。 藍牙芯片是藍牙設(shè)備的基礎(chǔ)。西方國家已生產(chǎn)了基于不同技術(shù)(CMOS、絕緣體硅片等)的藍牙芯片。藍牙芯片的價格已在下降,在近兩年內(nèi)將達到人們普遍可以接受的水平。一個基于藍牙技術(shù)的移動網(wǎng)絡(luò)終端可以由藍牙芯片及所嵌入的硬件設(shè)備、藍牙的核心協(xié)議棧、藍牙的支持協(xié)議棧和應(yīng)用層協(xié)議4部分組成。
一個基于藍牙技術(shù)的安全的移動網(wǎng)絡(luò)終端還包括安全管理系統(tǒng)。一個基于藍牙技術(shù)的安全的移動網(wǎng)絡(luò)終端的系統(tǒng)結(jié)構(gòu)如圖1所示。
西方國家的公司有的在芯片上開發(fā)LMP(鏈接管理協(xié)議),有的將LMP固化在芯片之中。
3 協(xié)議棧和安全管理系統(tǒng)
國際標準規(guī)定了3種藍牙設(shè)備的安全模式:模式1,現(xiàn)有的大多數(shù)基于藍牙的設(shè)備,不采用信息安全管理和不執(zhí)行安全保護及處理;模式2,藍牙設(shè)備采用信息安全管理并執(zhí)行安全保護和處理,這種安全機制建立在L2CAP中和它之上的協(xié)議中;模式3,藍牙設(shè)備采用信息安全管理和執(zhí)行安全保護及處理,這種安全機制建立在芯片中和LMP(鏈接管理協(xié)議)。
鑒于藍牙芯片的現(xiàn)狀,采用模式3將需要對現(xiàn)有的藍牙芯片進行重新設(shè)計并且要增加和增強芯片的功能,不利于降低芯片價格。西方藍牙技術(shù)的生產(chǎn)商都在考慮采用模式2。
模式2的安全機制允許在不同的協(xié)議上增強安全性。L2CAP可以增強藍牙安全性,RFCOMM可以增強藍牙設(shè)備撥號上網(wǎng)的安全性,OBEX可以增強傳輸和同步的安全性。
藍牙的安全機制支持鑒別和加密。鑒別和認證可以是雙向的,密鑰的建立是通過雙向的鏈接來實現(xiàn)的。鑒別和加密可以在物理鏈接中實現(xiàn)(例如,基帶級),也可以通過上層的協(xié)議來實現(xiàn)。
4 安全的技術(shù)實施
(1)DH方案
使用DH算法建立雙方加密信息所用的密鑰,其工作流程如下。
在第一次通信中,當(dāng)通信狀態(tài)已經(jīng)確立后,發(fā)送方通過無線跳頻信號傳送A給接收方。
A=g^x mod p 接收方在收到A之后,發(fā)送B給發(fā)送方。
B=g^y mod p 然后,發(fā)送方和接收方做以下計算:
key=g^xy mod p 由于雙方都具有了key,當(dāng)雙方作進一步通信時,它們可以對發(fā)送文件或數(shù)據(jù)M作加密。 C=key(M) 接收方可以使用同樣的key得到明文。
M=key(C)
DH方案有它的缺點,即主要是對用戶沒有作身份認證。
(2)RSA方案
RSA方案可以有效地解決用戶的身份認證和密鑰的確立,其工作流程如下。
A和B是藍牙無線通信的使用者,A和B在同一個CA(電子證書機構(gòu))拿到自己的電子證書,其中包括自己的公鑰和有效等。它們也擁有CA的證書。
A和B通信時:
第一步,A將自己的證書送給B,B驗證A的證書。
第二步,確認A的證書后,B將自己的證書送給A。
第三步,A確認B的證書后,用B的公鑰加密。一個用于數(shù)據(jù)加密的對稱密鑰,它的運算如下:
C=(key)PBmodN
其中N=p.q,p和q是兩個大的素數(shù),N是模,PB是公鑰。
第四步,B收到C之后,做以下運算:
key=CRBmodN RB是B的密鑰。
第五步,在第四步結(jié)束后,雙方都擁有key,雙方的通信就可以用key來加密C=(M)key,由于只有A和B知道key,所以加密后的C只有A和B可以解密。
該協(xié)議棧和安全管理系統(tǒng)可以建立在任何基于RFCOMM的藍牙設(shè)備上。它的目標是建立一套安全的藍牙通信機制。
在鑒別和認證的過程中,以前的一些藍牙設(shè)備可以實現(xiàn)設(shè)備的鑒別。該例子可以實現(xiàn)對用戶身份的鑒別,它還有以下其他優(yōu)點。
1)不僅可以對設(shè)備認證,還可以對用戶的身份認證,防止冒用和偽造設(shè)備。在L2CAP或RFCOMM中調(diào)用函數(shù)MDH(element,Root,modnln,VAR1,VAR2,VAR)建立兩方共享的密鑰和實現(xiàn)對用戶的認證。
2)加密可靠和安全,加密方法靈活。加密功能可以由EXBX、RFCOMM或L2CAP調(diào)用安全管理系統(tǒng)的EA(Date、Key、VAR1)實現(xiàn),由CA(Date、Key、VAR1)實現(xiàn)解密。
3)數(shù)據(jù)的完整性。系統(tǒng)可以檢測干擾和傳輸信號的改變。在任何一級協(xié)議中,通過調(diào)用MAC(Data、Key、VAR1、VAR2)可以發(fā)現(xiàn)無線信號所受到的干擾和改變。
5 結(jié)論
藍牙技術(shù)正在引起越來越廣泛的重視,在工業(yè)和家庭方面的應(yīng)用也越來越多。它的安全性隨著它的應(yīng)用將被使用者重視,設(shè)計和規(guī)劃藍牙的安全已成為刻不容緩的任務(wù)。本文的目的旨在拋磚引玉,引發(fā)業(yè)內(nèi)專家的討論和參考,將藍牙技術(shù)開發(fā)得更完善和更實用。
評論