• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看

      ?

      藍(lán)牙安全機(jī)制在密碼學(xué)上的應(yīng)用

      2013-12-31 00:00:00高建明
      網(wǎng)友世界 2013年10期

      【摘 要】分析了藍(lán)牙加密機(jī)制中的加密算法,包括這些算法的背景、原理以及工作流程,探討了藍(lán)牙認(rèn)證、藍(lán)牙安全配對協(xié)議的應(yīng)用、藍(lán)牙安全技術(shù)在PIN碼破譯攻擊等藍(lán)牙安全機(jī)制在密碼學(xué)上的應(yīng)用。

      【關(guān)鍵詞】加密算法;AFER+;認(rèn)證協(xié)議

      藍(lán)牙是用在無線網(wǎng)絡(luò),表示不同的無線通信設(shè)備在不同的操作平臺上能進(jìn)行無線通信的技術(shù)。藍(lán)牙技術(shù)允許不同廠家生產(chǎn)的無限裝置在不同的操作系統(tǒng)下進(jìn)行通信,其技術(shù)特點(diǎn)是能耗低,計(jì)算量小,適合簡單、小型的通信裝置。如今許多便捷式設(shè)備都有藍(lán)牙功能,如PDA、手提電腦、手機(jī)及各式嵌入式系統(tǒng)等。由于受計(jì)算能力的限制,藍(lán)牙密碼技術(shù)只能使用不需要許多計(jì)算資源密碼算法。

      1.藍(lán)牙加密算法運(yùn)行機(jī)制

      藍(lán)牙是在PICO網(wǎng)上實(shí)現(xiàn)的一個(gè)自組織和自配置的動態(tài)無線網(wǎng),它允許新設(shè)備動態(tài)加入和動態(tài)離開網(wǎng)內(nèi)設(shè)備,同時(shí)不需要使用固定的通信設(shè)施和無線網(wǎng)切入點(diǎn)。一個(gè)PICO網(wǎng)一般可以支持8個(gè)通信設(shè)備使用在同一個(gè)頻道通信,PICO網(wǎng)內(nèi)所有的設(shè)備是對等的,可直接進(jìn)行通信。

      藍(lán)牙使用SAFER+分組加密算法認(rèn)證設(shè)備,SAFER+即SAFER的改進(jìn)版。SAFER是“安全與快速加密程序”的縮寫,它是由JAMES L.MASSEY于1993年設(shè)計(jì)的,SAFER是FEISTEL密碼體系的一種具體實(shí)施,其分組大小為64比特,而且同AES一樣允許三種長度的密鑰,分別為256比特、192比特和128比特。藍(lán)牙使用密鑰長度為128比特的SAFER+,記為SAFER+K-128。

      與任何FEISTEL密碼體系相同,SAFER+K-128包含一個(gè)子鑰產(chǎn)生算法及加密和解密算法。SAFER+K-128加密算法由8輪相同的運(yùn)算和一個(gè)輸出轉(zhuǎn)換組成,共需要17個(gè)子鑰:每輪運(yùn)算過程中各需要兩個(gè)子鑰,而輸出轉(zhuǎn)換則需要一個(gè)子鑰。SAFER+子鑰:

      令K=x1x2x3……xk為k字節(jié)二元字符串,并令X[i]表示第i個(gè)字節(jié)xi,X[i:j]表示子串xi……xj,其中0≤i≤j≤k,令K=k0k1……k15為128比特密鑰,每個(gè)ki長1字節(jié),i=0,1,……15,令k16=k0k1…… k15。

      令X為一個(gè)字節(jié),令LSk(X)表示對X執(zhí)行k次左循環(huán)運(yùn)算后得到新的字符串。SAFER+按以下方式產(chǎn)生128比特子鑰K1K2……K17:首先令K1=K,然后令Ke←k0k1……k15 k16

      并按以下方式生成其余子鑰Ki(i=2,……,17):首先對Ke中每個(gè)字節(jié)做LS3運(yùn)算即連續(xù)做3次循環(huán)的方式依次選取16字節(jié)的二元字符串。令Li為按上面方式從第i-1次選取中得到的字符串,i=2,3……,17。令Bi為一個(gè)長為16字節(jié)的常數(shù)字符串,在此處稱為偏移向量。

      2.藍(lán)牙算法

      藍(lán)牙用SAFER+和一個(gè)經(jīng)過修改的SAFER+算法構(gòu)造E1,并用修改后的SAFER+算法構(gòu)造E21和E22,修改后的SAFER+算法與原算法的不同點(diǎn)在于它將第一輪運(yùn)算的輸入Y1和第三輪運(yùn)算的輸入Y3用和8運(yùn)算,給出新的Y3,這樣做的目的是使得修改后的算法不可逆。

      Y3[2j-2]←Y3[2j-2]Y1[2j-2]

      Y3[2j-1]←Y3[2j-1]Y1[2j-1]

      記Ar表示SAFER+加密算法,Aˊr表示修改后的SAFER+加密算法

      令K為16字節(jié)長的密鑰,ρ為16字節(jié)二元字符串,α為6字節(jié)地址,定義T如下:

      T[0]=K[0]8233,T[1]=K[1]229 T[2]=K[2]8233,T[3]=K[3]193

      用擴(kuò)張函數(shù)E將α循環(huán)擴(kuò)張成16字節(jié)長的二元字符串,定義如下:

      E(α)=α‖α‖α[0:3]

      E1將r、K和α作為輸入,其輸出為一個(gè)16字節(jié)的二元字符串,定義如下:

      E1(K,ρ,α)=A’r(T,[Ar(K,ρ)ρ]8E(α)

      3.藍(lán)牙安全機(jī)制在密碼學(xué)上的應(yīng)用

      3.1 藍(lán)牙認(rèn)證

      每臺藍(lán)牙設(shè)備都有一個(gè)L字節(jié)長度的PIN碼,其中1≤L≤16。即為藍(lán)牙設(shè)備DA和DB建立安全配對,其中DA為通信發(fā)起者,雙方必須具有相同的PIN碼,它可以預(yù)先存在設(shè)備中或由用戶輸入得到。另外,每個(gè)設(shè)備還具備一個(gè)6比特長的地址,記為BD_ADDR。藍(lán)牙產(chǎn)生一把初始密鑰Kinit和一把鏈接KAB,用于設(shè)備之間認(rèn)證。

      (1)初始鏈接密鑰

      當(dāng)DA與DB發(fā)起通信時(shí),DA首先產(chǎn)生一個(gè)16字節(jié)的偽隨機(jī)二元字符串,記為IN_RANDA,并將其以明文形式發(fā)送給DB。DA和DB同時(shí)按以下方式各自計(jì)算初始密鑰Kinit。

      Kinit=E(PIN,IN_RANDA,BD_ADDRB)。

      藍(lán)牙設(shè)備DA和DB產(chǎn)生初始密鑰Kinit后各自計(jì)算鏈接密鑰KAB。首先DA產(chǎn)生一個(gè)16字節(jié)偽隨機(jī)二元字符串LK_RANDA,DB則產(chǎn)生一個(gè)16字節(jié)偽隨機(jī)二元字符串LK_RANDB。然后DA將LK_RANDAKinit發(fā)送之DB,DB將LK_RANDB發(fā)送給DA。因此DA得到LK_RANDB,DB得到LK_RANDA,DA和DB各自按下面所列的方式計(jì)算KAB:

      KAB=E(LK_RANDA,BD_ADDRA) E(LK_RANDB,

      BD_ADDRB)

      (2)設(shè)備認(rèn)證

      藍(lán)牙設(shè)備應(yīng)用挑戰(zhàn)-回應(yīng)機(jī)制認(rèn)證設(shè)備。如果設(shè)備DA需要認(rèn)證設(shè)備DB,則DA首先產(chǎn)生一個(gè)16字節(jié)的偽隨機(jī)二元字符串AU_RANDA,并將其作為挑戰(zhàn)序列以明文形式發(fā)送給DB。DB收到此信息后按以下方式計(jì)算一個(gè)4字符的簽字回應(yīng),記為SRES:

      SRESA=E(KAB,AU_RANDA,BD_ADDRB)[0:3]

      然后DB將SRESA發(fā)送給DA,DA從SRESA中驗(yàn)證DA具有相同鏈接密鑰KAB,從而認(rèn)證DB。

      3.2 藍(lán)牙安全技術(shù)在PIN碼破譯攻擊應(yīng)用

      藍(lán)牙認(rèn)證協(xié)議容易遭受PIN碼破譯攻擊,攻擊方法與2DES中間人攻擊相似。若攻擊者竊聽到了設(shè)備DA和設(shè)備DB之間的所有配對和認(rèn)證通信,攻擊者可以用蠻力攻擊用下列方法破譯藍(lán)牙設(shè)備PIN碼。首先攻擊者窮舉所有248可能的PIN碼,對每個(gè)被枚舉的PIN碼,記為PIN’。攻擊者從第一條信息中獲得IN_RANDA及設(shè)備DB的地址BD_ADDRB,計(jì)算該初始密鑰的候選者:

      K’INIT=E(PIN’,IN_RANDA,BD_ADDRB)

      然后攻擊者用K’INIT分別與第2條信息和第3條信息做異或加運(yùn)算,得LK_RAND’A

      及LK_RAND’B,然后計(jì)算鏈接密鑰的候選者K’AB=E(LK_RAND’A,BD_ADDRA) E(LK_RAND’B,BD_ADDRB)。攻擊者用K’AB和最后的4條信息可以驗(yàn)證其PIN’是否真是設(shè)備DA和DB使用的PIN碼。具體做法是從第4條信息獲取AU_RANDA。然后用K’AB和BD_ADDRB計(jì)算如下:

      SRES’A=E(AU_RANDA,K’AB,BD_ADDRB)[0:3]

      最后驗(yàn)證SRES’A是否與第五條信息中的SRESA相等,如果是的話,則PIN’是設(shè)備DA和DB所使用PIN碼的幾率會很大。然后攻擊者用第6條和第7條信息對此進(jìn)行確認(rèn)。PIN碼越短,破譯時(shí)間就越短,比如在電腦上破譯4比特PIN碼,只需不到一秒鐘的時(shí)間,而藍(lán)牙設(shè)備通常使用4比特PIN碼,在實(shí)際應(yīng)用中應(yīng)該避免使用短的PIN碼。

      4.總結(jié)

      藍(lán)牙系統(tǒng)提供了幾種內(nèi)在的安全機(jī)制,從而在一個(gè)比較廣泛的范圍內(nèi)保證了藍(lán)牙系統(tǒng)的安全性,然而隨著藍(lán)牙的逐步成功,它將擴(kuò)展為更高的無線通信標(biāo)準(zhǔn),而將成為無線局域網(wǎng)標(biāo)準(zhǔn)的競爭者,那么就必須完善原有的安全性體系或重建新安全性體系。雖然藍(lán)牙是一項(xiàng)改變通信方式的新技術(shù),但就所傳數(shù)據(jù)的安全性和完整性而言,藍(lán)牙將面臨更大的挑戰(zhàn),故需要進(jìn)一步深入研究探討,以期待更完善的藍(lán)牙無線網(wǎng)絡(luò)技術(shù)規(guī)范早日問世。

      參考文獻(xiàn):

      [1]蔡元貞.藍(lán)牙技術(shù)在智能化圖書館中的應(yīng)用[J].中國科技信息,2006(12).

      [2]周敬利,譚剛,徐雪飛.藍(lán)牙網(wǎng)絡(luò)的安全機(jī)制[J].計(jì)算機(jī)仿真,2003(05).

      [3]楊敏,杜瑞穎.密碼編碼學(xué)與網(wǎng)絡(luò)安全原理與實(shí)踐[M].北京:電子工業(yè)出版社,2012.

      [4]王建鋒.藍(lán)牙技術(shù)的應(yīng)用及發(fā)展前景[J].鄭州航空工業(yè)管理學(xué)院學(xué)報(bào),2003(02).

      [5]劉電霆,王蘭萍,牛秦洲,沈卓君.藍(lán)牙技術(shù)及其應(yīng)用[J].桂林工學(xué)院學(xué)報(bào),2003(04).

      基金項(xiàng)目:浙江省教育廳2011年基金資助項(xiàng)目(項(xiàng)目編號:y201122728)。

      作者簡介:高建明(1975—),男,浙江紹興人,現(xiàn)供職于浙江越秀外國語學(xué)院,研究方向:計(jì)算機(jī)網(wǎng)絡(luò)、網(wǎng)絡(luò)安全、人工神經(jīng)網(wǎng)絡(luò)。

      高州市| 当雄县| 威远县| 前郭尔| 成武县| 南川市| 安远县| 陆川县| 克东县| 荣昌县| 民乐县| 安康市| 多伦县| 长丰县| 钦州市| 柞水县| 原平市| 龙南县| 师宗县| 绥棱县| 桦甸市| 天峨县| 西充县| 新丰县| 肥西县| 伊吾县| 启东市| 慈溪市| 阿尔山市| 荔浦县| 顺平县| 旬阳县| 太康县| 正定县| 疏附县| 两当县| 志丹县| 广饶县| 体育| 革吉县| 平罗县|