《電子技術應用》
您所在的位置:首頁 > 通信與網絡 > 業界動態 > ZigBee標準的密鑰協商機制分析

ZigBee標準的密鑰協商機制分析

2008-07-17
作者:周公博, 韓振鐸, 胡寧寧

??? 摘 要: 在大多數無線傳感網絡" title="無線傳感網絡">無線傳感網絡(WSN)的應用中,用戶對WSN的安全性要求都很高,而ZigBee標準具有高可靠性" title="高可靠性">高可靠性的特點,這種高可靠性就建立在安全協商協議的基礎上。對ZigBee標準的密鑰協商機制進行了詳細分析,并利用測試向量對該機制進行了測試,同時介紹了ZigBee的組網方式和安全服務平臺。
??? 關鍵詞: ZigBee? 安全? 密鑰協商? 無線傳感網絡

?

??? 隨著網絡和通信技術的發展,人們對無線通信技術的要求越來越高,在追求低價格的同時,還要求低功耗" title="低功耗">低功耗、低復雜度、高可靠性。2004年12月,ZigBee工作組正式公布了ZigBee1.0標準。使用該標準組建短距離低速無線個域網LR—WPAN(Low Rate—Wireless Personal Area Network)不僅具有低成本、低功耗、低速率、低復雜度的特點,而且還具有可靠性高、組網簡單和靈活的優勢。成千上萬個具有ZigBee結構的微型傳感器構成了自治的無線傳感器網絡,主要應用于工業控制、軍事偵察、環境科學、醫療健康、空間探索、智能建筑等各種復雜環境中進行檢測、診斷、目標定位和跟蹤[1]
??? 信息安全是現代通信中一個至關重要的問題,是信息網絡正常運行的基礎,ZigBee技術提供可選的安全架構,保證了無線傳感網絡的可靠性。
??? 本文將介紹ZigBee標準的組網方式、安全結構和在安全協議層次上的實現模式。
1 ZigBee技術及其網絡結構
??? ZigBee無線通信技術工作在2.4GHz的ISM頻段上,傳輸速率為20kbps~250kbps,傳輸距離為10m~75m,主要應用于自動控制、傳感和遠程控制領域。它依據802.15.4標準,在數千個微小的傳感器之間相互協調實現通信。這些傳感器只需要很少的能量,就能以接力的方式通過無線電波將數據從一個傳感器發送到另一個傳感器,所以它們的通信效率非常高。但ZigBee技術的較低數據速率以及較小通信范圍的特點決定了它只適合承載數據流量較小的業務[2]
??? 為了實現低功耗,ZigBee網絡中定義了兩種類型的設備:一種是全功能設備FFD(Full Function Device)稱為主設備。它承擔網絡協調者的功能,可與網絡中任何類型的設備通信。如果采用安全機制" title="安全機制">安全機制,網絡協調者又可成為信任中心(Trust center);另一種是簡化功能設備RFD(Reduced Function Device)稱為從設備。它不能作為網絡協調者,只能與主設備通信。圖1是ZigBee技術主要采用的三種網絡結構。

??????????????????????
2 ZigBee技術安全架構
??? ZigBee設備之間的通信使用IEEE 802.15.4無線標準。該標準指定兩層:物理層(PHY)和媒介存取控制層(MAC),而ZigBee則負責構建網絡層(NWK)和應用層(APL)。PHY層提供基本的物理無線通信能力;MAC層提供設備間的可靠性授權和一跳通信連接服務;NWK層提供用于構建不同網絡拓撲結構的路由和多跳功能;APL層包括一個應用支持子層(APS)、 ZigBee設備對象(ZDO)和應用。ZDO負責所有設備的管理,APS提供一個用于ZDO和ZigBee應用的基礎。
??? 該體系結構包括協議棧三層安全機制。MAC、NWK和APS負責各自幀的安全傳輸。APS子層提供建立和保持安全關系的服務。ZDO管理安全性策略和設備的安全性結構。圖2給出了ZigBee協議棧的完整視圖[3]

????????????????????????  
3 ZigBee標準的密鑰協商機制
??? ZigBee標準在安全協議層面上應用基于對稱密鑰的密鑰協商協議,并要求該對稱密鑰必須為帶有密鑰確認機制的完全對稱密鑰,而提供密鑰確認的則是消息鑒權編碼機制。圖3是該密鑰協商機制的消息傳輸情況。

??????????????????????????????
  圖中U表示協議的發起設備(Initiator),V表示協議的響應設備(Responder),該機制通過兩次變換協商密鑰數據,U和V分別使用發起設備變換和響應設備變換協商密鑰數據。發起設備與響應設備本質上沒有區別,只是發起設備發送第一條交換消息而已。
??? 如果使用共享秘密密鑰作為輸入,當U執行發起設備變換而V執行響應設備變換時,U和V就計算相同的密鑰數據。
3.1 變換的組成部分
??? 發起設備變換與響應設備變換都使用Challenge生成原語" title="原語">原語、Challenge確認原語、秘密密鑰生成(SKG)原語、密鑰派生函數和一個消息鑒權編碼(MAC)機制。
3.1.1 Challenge生成原語與確認原語
??? Challenge生成與確認,實際上是設置所發送消息的大小與判別所接收到的信息的大小,即Challenge域的參數D=(minchallenge, maxchallenge)。生成原語產生參數D的兩個值,在大多數機制中D為一個定值,如D=128,此時minchallenge=maxchallenge=128。而確認原語則判別所收到的Challenge的參數D是否在預先設置的值域內,若不在,則拒絕該Challenge。
3.1.2 秘密密鑰生成(SKG)原語
??? 秘密密鑰是兩個ZigBee實體之間共享的密鑰,SKG原語是從分別屬于兩個實體的兩個Challenge中獲取秘密密鑰的,且這兩個Challenge的域參數D是相同的。若兩實體都正確地執行了此原語,則兩實體就能獲得相同的共享秘密值。
3.1.3? 密鑰派生函數
??? 密鑰派生函數從共享秘密值中計算密鑰數據,它不僅用于密鑰協商機制,還可用于非對稱的加密機制。此函數實質上由一個簡單的hash函數組成[4]
3.1.4 消息鑒權編碼(MAC)機制
??? 消息鑒權編碼機制主要包括兩個變換:標記變換和標記校驗變換。密鑰協商機制使用MAC機制提供密鑰確認,ZigBee標準使用密鑰hash消息鑒權機制(HMAC),且所用hash函數是Matyas-Meyer-Oseas hash函數,該函數帶有一個消息摘要[4]
3.2 密鑰協商機制的前提條件
??? ZigBee設備之間在進行密鑰協商前,必須滿足以下條件:
??? (1)每個ZigBee實體都有一個可信的系統Challenge域參數D的拷貝。
??? (2)每個ZigBee實體都可獲得一個長度為keylen的位串Key作為密鑰。實體決定本身各個部分獲得密鑰的情況。
??? (3)每個ZigBee實體都要有唯一的標識符。所有標識符串的長度必須相同,用entlen參數表示。
??? (4)每個ZigBee實體自己決定將使用哪個消息鑒權編碼機制。所選消息鑒權編碼機制使用的密鑰的長度由mackeylen參數表示。
??? (5)選擇一個帶有密鑰生成函數的密碼hash函數。
??? (6)選擇一個專用消息鑒權編碼機制,該機制含有帶有標志變換的秘密密鑰生成原語。該密鑰長度用keylen表示。
??? (7)選擇一個固定的字節表示方式表示二進制字符串。
3.3 發起設備變換
??? U執行發起設備變換,可獲得一個可信的V標識符的拷貝和一個與V共享的靜態秘密密鑰的可信拷貝。
此變換的輸入包括:生成密鑰數據的長度keydatalen;位串SharedData的長度shareddatalen(可選),其中SharedData由一些U和V共享的數據構成;位串Text2(可選),它由從U到V的一些附加數據組成。
??? U按如下步驟執行變換來獲得密鑰數據:
??? (1)使用Challenge生成原語生成一個符合Challenge 域參數D的ChallengeQEU,并把QEU發送到V。
??? (2)從V接收ChallengeQEV′,若沒接收到此值,輸出“invalid”并中止協議協商。
??? (3)從V接收可選位串Text1和標記MacTag1′。若這些值未接收到,輸出“invalid”并中止協議協商。
??? (4)核實QEV′是否為Challenge域參數D內的有效
??? Challenge,若確認原語拒絕此Challenge,輸出“invalid”并中止協議協商。
??? (5)使用SKG原語從U的Q1=QEU和V的Q2=QEV′的Challenge中獲得共享秘密位串Z,并把它作為共享密鑰Key,若SKG原語輸出“invalid”,則該變換輸出“invalid”并中止協議協商。
??? (6)使用密鑰派生函數和所建立的hash函數從共享的秘密值Z和共享數據SharedData中獲得密鑰數據KKeyData,長度為mackeylen+keydatalen。
??? (7)把KKeyData的最左端mackeylen解析為MAC密鑰MacKey,并且將剩余位作為密鑰數據KeyData。
??? (8) 由字節0216、V的標識符、U的標識符、位串QEV′’、位串QEU和Text1(若存在)構建位字符串:
???

??? (9)使用MAC機制的適當標記檢驗轉換校核MacTag1′是否為密鑰Mackey下MacData1的標記符。若標記檢驗轉換輸出“invalid”,則變換輸出“invalid”并中止協議協商。
??? (10)由字節0316、U的標識符、V的標識符、位串QEU對應的U的Challenge、位串QEV′對應的V的Challenge和可選位串Text2構建位字符串:
???

??? (11)在MacData2的基礎上,使用標記轉換和適當的MAC機制計算標記符MacTag2:
???

??? (12)若標記轉換輸出為“invalid”,則變換輸出“invalid”
??? 并中止協議協商。若存在MacTag2,則發送MacTag2和Text2到V。
??? 若上述步驟中任一次確認失敗,則輸出“invalid”且拒絕位串KeyData和Text1;否則,輸出“valid”,接受位串KeyData為與V共享的長度為keydatalen的密鑰數據,同時接受V作為位串Text1的源。
3.4 響應設備變換
??? V執行響應設備變換,可獲得一個可信的U標識符的拷貝和一個與U共享的靜態秘密密鑰的可信拷貝。
此變換的輸入包括:一個屬于U的ChallengeQEU′、生成密鑰數據的長度keydatalen、位串SharedData的長度shareddatalen(可選),其中,SharedData由一些U和V共享的數據組成,位串Text1(可選)由從V到U的一些附加數據組成。
V按如下步驟執行變換,來獲得密鑰數據:
??? (1)核實QEU′是否為Challenge域參數D內的有效
Challenge,若確認原語拒絕此Challenge,則輸出“invalid”并中止協議協商。
??? (2)使用Challenge生成原語生成在Challenge域參數D內的ChallengeQEV,并把它發送到U。
??? (3)使用SKG原語從U的Q1=QEU′和V的Q2=QEV的Challenge中獲得共享秘密位串Z,并把它作為共享密鑰Key,若SKG原語輸出“invalid”, 則該變換輸出“invalid”并中止協議協商。
??? (4)使用密鑰派生函數和所建立的hash 函數從共享的秘密值Z和共享數據SharedData中獲得密鑰數據KKeyData,長度為mackeylen+keydatalen。
??? (5)把KKeyData的最左端mackeylen解析為MAC密鑰MacKey,并且將剩余位作為密鑰數據KKeyData。
??? (6)由字節0216、V的標識符、U的標識符、位串QEV′、位串QEU′和Text1(若存在)構建位字符串:
???

??? (7)在MacData1的基礎上,使用標記轉換和適當的MAC機制計算標記符MacTag1
???

??? 若標記轉換輸出為“invalid”,則變換輸出“invalid”并中止協議協商。若存在MacTag1,則發送MacTag1和Text1到U。
??? (8)從U接收可選位串Text2和MacTag2′標記。若這些值未接收到,輸出“invalid”并中止協議協商。
??? (9)由字節0316、U的標識符、V的標識符、位串QEU′對應的U的Challenge、位串QEV對應的V的Challenge和可選位串Text2構建位字符串:
???

??? (10)使用MAC機制的適當標記檢驗轉換校核MacTag2′是否為密鑰MacKey下MacData2的標記符。若標記檢驗轉換輸出“invalid”,則變換輸出“invalid”并中止協議協商。
??? 若上述步驟中任一次確認失敗,則輸出“invalid”且拒絕位串和;否則,輸出“valid”,接受位串KeyData為與U共享的長度為keydatalen的密鑰數據,同時接受U作為位串[Text2]的源。
4 向量測試
??? 針對上述密鑰協商機制,用向量測試的方式驗證該機制的可行性。這些向量在最開始時是相互獨立且不確定的。
預設前提條件如下:
??? (1)U=55 73 65 72 20 55 0D 0A; V= 55 73 65 72 20 56 0D 0A。
??? (2)Key= C0 C1 C2 C3 C4 C5 C6 C7 C8 C9 CA CB CC CD CE CF;keylen=128bit。
??? (3)SharedData=D0 D1 D2 D3 D4 D5;shareddatalen=48 bit。
??? (4)選擇Matyas-Meyer-Oseas hash函數作為所用的
hash函數。
??? (5)選擇基于Matyas-Meyer-Oseas hash函數的HMAC
??? 機制[5]作為MAC機制。
??? 發起設備變換和響應設備變換最終都輸出“valid”,并接受位串KeyData= 72 57 7D 02 CC E1 39 33 1A BF F4 0B C5 6E A3 7F為與對方共享的長度為128bit的密鑰數據。
??? ZigBee技術在短距離、低數據量的無線通信中有著其他技術所不具有的優勢,而安全性服務是保證ZigBee技術立足市場的前提。在ZigBee聯盟公開的ZigBee 1.0標準規范說明中,著重強調了ZigBee所能提供的安全性服務,后續的增強版本中又再次加強了安全性服務。本文詳細分析的是安全協議層次上的協商機制,在安全性的其他層次上值得進一步研究,如數據加密、安全服務等。
參考文獻
[1]?AKYILDIZ L,SU W,SANKARASUBRAMANIAM Y,et al. ?A survey on sensor networks[J]. IEEE Communications
?Magazine,2002,40(8).
[2]?任秀麗. 基于ZigBee技術的無線傳感網的安全分析[J].計算機科學, 2006,33(10).
[3]?ZigBee specification. [EB/OL]? http://www.ZigBee.org.2005-06-27.
[4] ANSI X9.63-2001. Public key cryptography for the financial services industry-key agreement and key transport?using elliptic curve cryptography[S]. American Bankers?Association. http://www.ansi.org.2001-10-20.
[5]?The keyed-hash message authentication code: Federal?information processing standards publication 198[S]. US?Department of Commerce/N.I.S.T.,Springfield, Virginia,?http://csrc.nist.gov.2002-03-06.

本站內容除特別聲明的原創文章之外,轉載內容只為傳遞更多信息,并不代表本網站贊同其觀點。轉載的所有的文章、圖片、音/視頻文件等資料的版權歸版權所有權人所有。本站采用的非本站原創文章及圖片等內容無法一一聯系確認版權者。如涉及作品內容、版權和其它問題,請及時通過電子郵件或電話通知我們,以便迅速采取適當措施,避免給雙方造成不必要的經濟損失。聯系電話:010-82306118;郵箱:aet@chinaaet.com。
亚洲一区二区欧美_亚洲丝袜一区_99re亚洲国产精品_日韩亚洲一区二区
亚洲精选久久| 国产精品日韩一区| 这里是久久伊人| 欧美日韩一区二区在线观看视频| 亚洲性感激情| 亚洲欧美日韩国产一区| 国产一区二区三区四区hd| 久热爱精品视频线路一| 亚洲日韩欧美一区二区在线| 亚洲乱码精品一二三四区日韩在线 | 国产精品免费观看在线| 久久成人一区| 亚洲精品亚洲人成人网| 亚洲网站在线播放| 好吊一区二区三区| 欧美日韩亚洲在线| 国产精品jvid在线观看蜜臀| 久久综合久久久| 久久一本综合频道| 亚洲主播在线观看| 亚洲三级视频| 一区二区欧美日韩视频| 久久国产日本精品| 一本色道久久综合亚洲精品不| 国产日韩欧美高清| 欧美日本中文字幕| 欧美主播一区二区三区美女 久久精品人| 亚洲国产精品成人一区二区 | 国产午夜精品全部视频在线播放 | 欧美精品www在线观看| 午夜在线视频一区二区区别| 亚洲七七久久综合桃花剧情介绍| 亚洲视频在线一区观看| 亚洲先锋成人| 亚洲国产中文字幕在线观看| 国产日韩在线视频| 激情久久五月天| 国产精品美女久久久久久2018| 国产精品久久久久久久久借妻 | 亚洲欧美在线免费| 99精品视频一区| 久久精品国产在热久久| 亚洲先锋成人| 久久国产66| 日韩视频在线免费观看| 久久不射中文字幕| 亚洲区免费影片| 一本色道久久综合狠狠躁篇的优点 | 亚洲午夜精品在线| 久久不射中文字幕| 一区二区三区高清在线| 欧美一区免费视频| 在线亚洲一区二区| 亚洲国产欧美另类丝袜| 欧美一区二区免费观在线| 亚洲一级黄色片| 欧美在线免费一级片| 日韩午夜剧场| 久久国产毛片| 欧美日本高清视频| 国产欧美日韩伦理| 亚洲精品影视在线观看| 亚洲高清视频在线观看| 国产中文一区二区| 国产亚洲电影| 亚洲精品激情| 久久疯狂做爰流白浆xx| 亚洲天堂黄色| 久久亚洲春色中文字幕| 国产精品国产福利国产秒拍| 国内揄拍国内精品少妇国语| 夜夜夜精品看看| 亚洲国产三级在线| 午夜精品999| 欧美日本一区二区三区| 国产亚洲欧美日韩在线一区| 亚洲乱码国产乱码精品精天堂| 香蕉久久夜色精品国产| 亚洲一区二区三区免费视频| 亚洲国产精品视频一区| 亚洲欧美综合另类中字| 欧美电影在线免费观看网站| 牛牛国产精品| 欧美福利小视频| 国产欧美日韩一区| 99精品热6080yy久久| 99这里只有久久精品视频| 欧美一区在线直播| 亚洲欧美日韩国产一区二区| 午夜精品一区二区在线观看| 欧美ab在线视频| 国产一区二区按摩在线观看| 一区二区三区高清在线| 日韩午夜视频在线观看| 麻豆91精品| 欧美日韩国产va另类| 欧美视频网站| 国产精品区一区二区三区| 亚洲激情女人| 亚洲欧洲精品一区二区三区波多野1战4 | 久久久久免费| 欧美成人精品1314www| 国产区精品在线观看| 亚洲一二三四久久| 亚洲综合日韩在线| 欧美午夜理伦三级在线观看| 亚洲欧洲精品一区二区三区不卡| 亚洲免费播放| 亚洲日本一区二区三区| 久久尤物电影视频在线观看| 国产三级欧美三级日产三级99| 亚洲一区二区在线播放| 亚洲一区黄色| 欧美日韩午夜剧场| 亚洲美女毛片| 正在播放欧美视频| 欧美日韩国产在线播放| 亚洲日本中文字幕| 日韩视频中文字幕| 欧美激情一区二区三区在线视频观看 | 国产精品午夜av在线| 亚洲一区二区在线播放| 午夜精品久久久久久久99樱桃| 欧美性片在线观看| 亚洲一区二区三区视频播放| 亚洲一区在线直播| 国产精品久久九九| 亚洲女优在线| 久久久一二三| 亚洲国产精品一区二区第四页av| 亚洲国产精品99久久久久久久久| 老司机精品福利视频| 亚洲高清网站| 在线视频一区观看| 国产精品久久久久99| 亚洲综合三区| 最新国产成人在线观看| 欧美电影美腿模特1979在线看| 亚洲国产精品一区二区三区| 99国产一区| 国产精品免费观看视频| 欧美一区久久| 欧美大片一区| 99精品免费| 欧美一级淫片播放口| 精品动漫3d一区二区三区免费版 | 亚洲精品欧美精品| 欧美日韩亚洲视频| 亚洲欧美国内爽妇网| 久久久久久久97| 亚洲国产午夜| 亚洲综合色视频| 黄色成人av在线| 亚洲精品在线免费| 欧美性猛交99久久久久99按摩| 亚洲欧美在线视频观看| 99国产麻豆精品| 国产精品www网站| 午夜伦欧美伦电影理论片| 久久男人资源视频| 日韩视频一区二区三区在线播放免费观看 | 久久亚洲电影| 亚洲精品中文字幕在线| 午夜精品在线看| 亚洲国产精品va在线观看黑人| 中文在线资源观看网站视频免费不卡 | 国产欧美精品国产国产专区| 亚洲激情在线视频| 欧美吻胸吃奶大尺度电影| 香港成人在线视频| 欧美刺激性大交免费视频| 亚洲色无码播放| 久久一区二区三区四区| 夜夜嗨av色一区二区不卡| 久久久久久国产精品mv| 日韩亚洲欧美中文三级| 久久久噜噜噜久久狠狠50岁| 亚洲精品一区二区三区四区高清| 欧美一区二视频| 亚洲精品视频免费| 久久青草福利网站| 99视频日韩| 美脚丝袜一区二区三区在线观看| 在线亚洲欧美视频| 欧美成年人视频网站欧美| 亚洲网站在线看| 欧美激情网站在线观看| 黑人巨大精品欧美黑白配亚洲| 亚洲精品免费电影| 国产乱人伦精品一区二区| 亚洲免费视频成人| 欧美激情精品久久久六区热门| 亚洲欧美国产一区二区三区| 欧美久久久久久| 亚洲第一精品电影| 女仆av观看一区| 午夜精品久久久久久久99樱桃 | 中国成人在线视频| 欧美金8天国| 亚洲第一页中文字幕|