楊年鵬,龍昭華,蔣貴全,馬 艷
(重慶郵電大學 計算機系統(tǒng)結(jié)構(gòu)研究所,重慶400065)
物聯(lián)網(wǎng)是將各類傳感器和現(xiàn)有的互聯(lián)網(wǎng)相互銜接的一項新生技術(shù),以信息感知為特征的物聯(lián)網(wǎng)被稱為是繼計算機、互聯(lián)網(wǎng)與移動通信網(wǎng)之后的世界通信信息產(chǎn)業(yè)第三次浪潮[1]。物聯(lián)網(wǎng)的概念最早是在1999年美國召開的移動計算和網(wǎng)絡(luò)國際會議上提出的,只是當時受限于無線網(wǎng)絡(luò)、硬件及傳感設(shè)備的發(fā)展并未引起重視。2005年11月17日,在突尼斯舉行的信息社會世界峰會 (WSIS)上,國際電信聯(lián)盟 (ITU)發(fā)布了 《ITU互聯(lián)網(wǎng)報告2005:物聯(lián)網(wǎng)》,正式提出了物聯(lián)網(wǎng)的概念。報告中指出物聯(lián)網(wǎng)是通過RFID和智能計算等技術(shù)實現(xiàn)全世界設(shè)備互連的網(wǎng)絡(luò),從輪胎到牙刷,所有的物品都在物聯(lián)網(wǎng)的通信范圍內(nèi),開啟了一個新的網(wǎng)絡(luò)通信時代[2]。
目前,物聯(lián)網(wǎng)已逐漸被人們認識和應用,它將人們和身邊無數(shù)物品聯(lián)系起來,使物品成為網(wǎng)絡(luò)用戶的一份子,并給人們帶來諸多便利。但是也必須注意到物聯(lián)網(wǎng)的使用會帶來巨大的安全隱患,這些安全隱患將引起嚴重的安全事故,如人身安全、交通安全等。因此在物聯(lián)網(wǎng)時代,安全問題面臨著前所未有的挑戰(zhàn),如何建立安全、可靠的物聯(lián)網(wǎng)是一個亟待解決的問題。本文在通用的物聯(lián)網(wǎng)體系結(jié)構(gòu)的基礎(chǔ)上,重點分析了物聯(lián)網(wǎng)中無線傳感器的安全接入,結(jié)合我國的虎符TePA——三元對等鑒別架構(gòu)[3],提出了一種物聯(lián)網(wǎng)傳感器節(jié)點的安全接入機制,并采用了基于橢圓曲線密碼算法 (ECC)的數(shù)字簽名方案 (ECDSA)來保障數(shù)據(jù)的機密性和完整性[4-5]。
體系結(jié)構(gòu)是指導具體機制分析與設(shè)計的首要前提。作為各種不同無線通信技術(shù)與網(wǎng)絡(luò)結(jié)構(gòu)不斷融合的網(wǎng)絡(luò),物聯(lián)網(wǎng)的體系結(jié)構(gòu)應該滿足最大化的互聯(lián)、互通和互操作性的需求,與此同時還應當能夠防御大范圍內(nèi)的網(wǎng)絡(luò)攻擊并考慮到空間和能源等方面的問題。
結(jié)合物聯(lián)網(wǎng)的自身特點和功能的不同,物聯(lián)網(wǎng)的體系結(jié)構(gòu)大致分為感知層、網(wǎng)絡(luò)層和應用層等3個層次[6-8],如圖1所示。
圖1 物聯(lián)網(wǎng)體系結(jié)構(gòu)
(1)第一層是感知層,它的任務是全面感知外界信息,利用各種傳感器和多跳自組織傳感器網(wǎng)絡(luò),協(xié)作感知,采集和識別網(wǎng)絡(luò)覆蓋區(qū)域中被感知對象的信息。該層的典型設(shè)備包括RFID裝置、各類傳感器、圖像捕捉裝置 (攝像頭)、全球定位系統(tǒng) (GPS)、激光掃描儀等。
(2)第二層是網(wǎng)絡(luò)層,它主要用于把感知層收集到的信息安全可靠快速地傳輸?shù)礁鱾€地方,實現(xiàn)物品遠距離,大范圍的通信。網(wǎng)絡(luò)層主要是網(wǎng)絡(luò)基礎(chǔ)設(shè)施:包括互聯(lián)網(wǎng)、移動通信網(wǎng)和一些專業(yè)網(wǎng) (如國家電力專用網(wǎng))。
(3)第三層是應用層,它根據(jù)用戶需求,建立相應的業(yè)務模型,運行相應的應用系統(tǒng),完成信息的分析處理和控制決策,最大程度地為用戶提供豐富的特定服務,最終達到物與物、人與物之間的連接、識別和控制。
由于物聯(lián)網(wǎng)的開放性、異構(gòu)性、可擴展性等特點,物聯(lián)網(wǎng)安全威脅存在于各個層面[9-10],因此迫切需要建立物聯(lián)網(wǎng)安全機制,實現(xiàn)安全通信的基本保障。
傳統(tǒng)的無線傳感器網(wǎng)絡(luò)大多屬于無中心控制網(wǎng)絡(luò),因此一般來說不可能采用基于第三方的鑒別機制。但在物聯(lián)網(wǎng)中,無線傳感器節(jié)點識別和采集外界信息,然后將這些感知信息傳輸?shù)教幚砥脚_進行處理,這就需要一個或多個與外部網(wǎng)連接的中心傳感節(jié)點,稱之為網(wǎng)關(guān)節(jié)點,故可以考慮采用虎符TePA鑒別機制。
虎符TePA——三元對等鑒別架構(gòu)是我國科技研究人員自主創(chuàng)新的一種信息安全領(lǐng)域普適性的實體鑒別方法。它提出的五次傳遞和調(diào)用可信第三方的機制,適用于實體間的雙重雙向身份鑒別,可用于訪問控制、身份鑒別、數(shù)字簽名、可信計算等安全系統(tǒng)中[3]。
在該鑒別機制中,有3個實體元素 (A、B、C),實體A和實體B是完全信任第三方C的。A,B同時擁有C的有效公鑰,C擁有A和B的有效公鑰。在通信前,A和B需要通過可信第三方C來驗證雙方的公鑰。通過3個實體之間五次消息的交互,完成鑒別過程。圖2為由A發(fā)起的鑒別機制。
圖2 鑒別機制結(jié)構(gòu)
鑒別流程如下:
(1)A->B:A將身份信息和可選信息發(fā)送給B;(2)B->A:B將身份信息和可選信息發(fā)送給A;(3)A->C:將A的身份消息,B的身份消息和其它信息發(fā)送給可信第三方C驗證;
(4)C->A:C根據(jù)A和B的身份信息進行驗證并將驗證結(jié)果發(fā)送A;
(5)A->B:A根據(jù)C的驗證結(jié)果鑒別B的身份;并將C的驗證結(jié)果發(fā)送給B,進行A的身份鑒別。
作為物聯(lián)網(wǎng)的基礎(chǔ)單元,負責前端無線接入的傳感器在感知層面能否安全的采集信息,成為物聯(lián)網(wǎng)感知任務成敗的關(guān)鍵。由于無線傳感網(wǎng)絡(luò)本身具有網(wǎng)絡(luò)規(guī)模龐大、動態(tài)的拓撲結(jié)構(gòu)和資源有限等特點,使其安全性問題尤為突出[11]。基于以上考慮,本文專門針對物聯(lián)網(wǎng)中的無線傳感網(wǎng)絡(luò),提出基于虎符TePA的物聯(lián)網(wǎng)安全接入機制。
圖3顯示了物聯(lián)網(wǎng)在不同層次的一些安全措施:如應用層的訪問控制和安全審計等技術(shù)來保證安全;網(wǎng)絡(luò)層的加密認證、信令和協(xié)議過濾等技術(shù)來確保數(shù)據(jù)安全的傳輸;感知層中采用本文提出的安全接入機制來保證無線傳感器網(wǎng)絡(luò)的安全。圖3中無線傳感器網(wǎng)絡(luò)中的網(wǎng)關(guān)節(jié)點,普通節(jié)點(Node)與新加入第三方的可信任機構(gòu)的CA (certificate authority)構(gòu)成了虎符TePA安全架構(gòu)的三要素。
圖3 基于虎符TePA的互聯(lián)網(wǎng)安全接入架構(gòu)
在本機制中,CA扮演了非常重要的角色,它是整個體系中各方都承認的一個值得信賴的第三方機構(gòu),是Sink和Node信息交換的基礎(chǔ),是整個信任鏈的起點。作為網(wǎng)關(guān),Sink將無線傳感器網(wǎng)絡(luò)與外部網(wǎng)絡(luò)連接通信。為防范偽裝的Sink破壞通信環(huán)境,需要加強對Sink的真?zhèn)芜M行身份鑒別。因此除了單向鑒別Node的身份外,Sink的身份也必須得到驗證,這也就保證了物聯(lián)網(wǎng)感知層的安全接入。
作為虎符TePA應用在無線通信領(lǐng)域的第一個實例,WAPI協(xié)議采用了基于數(shù)字證書的安全接入機制[12]。數(shù)字證書是一種經(jīng)證書授權(quán)中心簽名的、包含公開密鑰及用戶相關(guān)信息的文件,是網(wǎng)絡(luò)用戶的數(shù)字身份憑證。通過信任第三方對數(shù)字證書進行驗證,可以唯一確定用戶身份及其合法性,基于數(shù)字證書的鑒別機制安全等級比較高,安全性比較好。但是傳統(tǒng)數(shù)字證書的存儲管理和傳輸認證等對系統(tǒng)資源要求較高,這并不適用于當前資源受限的無線傳感器網(wǎng)絡(luò)。基于上述原因,本機制采用了基于身份標識的安全接入機制。這將大大減輕CA的負擔,同樣也降低了Sink和Node的空間和能量消耗。
為了增強安全性,采用了基于橢圓曲線密碼算法(ECC)的數(shù)字簽名方案 (ECDSA)[13]對數(shù)據(jù)進行簽名。下面簡單介紹其簽名與驗證過程:
設(shè)待簽名的消息為M,公鑰 (PK)、私鑰 (SK)與所選橢圓曲線上基點G的關(guān)系為:PK=SK-1*G。這里舉例假設(shè)是Sink對來自Node簽名的消息進行驗證。
Node對M的簽名過程為:
(1)使用哈希算法計算M的哈希值Hash(M),可選的哈希算法為SHA-1[14]、MD5[15]等;
(2)隨機選取一大整數(shù)k∈ (0,n),計算得到隨機數(shù)Q=k*G,其中n為G的階,是一個足夠大的素數(shù),Node對消息M的簽名方程為:SN(M)= (Hash(M)*Q-k)*SKN;
(3)Node將分組MQSN(M)發(fā)送給Sink。
Sink收到來自分組消息MQSN(M)后,通過其之前獲得的Node公鑰驗證發(fā)送該分組的身份,驗證方法如下:
(1)使用哈希函數(shù)計算M的哈希值得到Hash(M);
(2)驗證簽名方程式為:Hash(M)*Q*G=Q+SN(M)*PKN;
(3)在驗證方程式當中代入Hash(M)、SN(M)和PKN,若等式雙方成立,則驗證通過,否則,簽名無效,丟棄分組。
現(xiàn)將虎符TePA引入到物聯(lián)網(wǎng)中的無線傳感器網(wǎng)絡(luò)中,并通過ECDSA進行數(shù)字簽名實現(xiàn)其安全接入。圖4介紹了其通信流程。
圖4 安全接入機制
在整個網(wǎng)絡(luò)通信之前,必須進行初始化工作,為此在CA中設(shè)計了一個密鑰分配系統(tǒng)。它負責系統(tǒng)的初始化,如為每個節(jié)點分配一個唯一的ID作為其身份標識,并由此身份標識通過ECC為網(wǎng)絡(luò)中的每個節(jié)點生成公私鑰對。在公私鑰對的分配上,必須通過一個安全的秘密通道將密鑰傳送給用戶,這個應當根據(jù)具體感知節(jié)點的硬件設(shè)施采用不同的方法,通??梢圆捎妙A分配的機制完成這個過程。
安全接入機制鑒別過程描述如下:
(1)當Node登陸至Sink時,由Sink向Node發(fā)送鑒別激活分組以啟動整個接入鑒別過程,接入鑒別激活分組包括隨機數(shù)RSink和其身份標識ISink;
(2)Node將其身份標識INode、隨機數(shù)RNode以及PNS構(gòu)造成接入鑒別請求分組發(fā)送給Sink,其中PNS為Node的私鑰對RSink、RNode、ISink的簽名;
(3)Sink收到接入鑒別請求分組后,向CA發(fā)送身份鑒別請求分組,身份鑒別請求分組由Node的身份標識INode、Sink的身份標識ISink,各自的隨機數(shù)R’Sink、RNode組成;
(4)所有的身份鑒別都由CA來完成,當CA收到Sink提交的身份鑒別請求分組后,根據(jù)ISink和INode分別搜索Sink和Node的有效公鑰PKSink、PKNode,驗證Sink和Node的身份;驗證成功向Sink發(fā)送身份鑒別響應分組,包括有效公鑰PKSink、PKNode、PCS及PCN,其中PCS為CA的私鑰對R’Sink、INode、PKNode的簽名,PCN為CA的私鑰對RNode、ISink、PKSink的簽名;
(5)Sink收到身份鑒別響應分組后,首先通過CA的公鑰判斷PCS中的隨機數(shù)R’Sink和步驟 (3)中發(fā)送的隨機數(shù)R’Sink是否一致來驗證PCS;然后利用PCS中PKNode驗證PNS:匹配Sink的身份標識ISink和步驟 (2)中所發(fā)送的ISink,校驗在步驟 (1)中發(fā)送的RSink與步驟 (2)中所發(fā)送的RSink相一致,若都一致,則成功獲得PKNode。隨后,Sink發(fā)送接入響應分組給Node。接入響應分組包括Sink公鑰PKSink、PSN及PCN。PSN為 Sink的私鑰對RSink、RNode、INode的簽名。
(6)Node對來自Sink的接入響應分組做如下處理:首先校驗步驟 (2)發(fā)送的RNode與CA私鑰簽名PCN中的RNode相一致來驗證簽名;然后通過PKSink驗證PSN:檢查簽名中的INode與Node的身份標識INode相一致,校驗在步驟 (2)步中發(fā)送的隨機數(shù)RNode與包含在Sink簽名中的隨機數(shù)RNode相一致,若都一致,則成功獲得PKSink。
至此,Sink和Node通過可信第三方CA實現(xiàn)了雙向身份鑒別,獲得了彼此的公鑰。Node能安全接入Sink,同時也阻斷了Node登陸到非法的Sink而造成的信息泄露。
本機制采用了基于身份標識的安全接入方法,每個傳感器節(jié)點所需要存儲的信息包括兩部分,一部分是用于身份認知的標識符及其公私鑰對,另一部分是CA的公鑰和Sink的公鑰。這樣的內(nèi)存開銷對傳感器節(jié)點來說是比較合理。
在能量消耗方面,必然體現(xiàn)在橢圓曲線點乘法運算上。在整個通信流程當中,Sink和Node所需點乘次數(shù)統(tǒng)計如表1所示。
表1 節(jié)點運算次數(shù)
Sink通常為性能較好、計算能力較快的傳感器節(jié)點,比Node多一次運算是比較合理的運算量。而且該機制采用了挑戰(zhàn)應答的通信方式,Sink和Node之間的3次通信次數(shù)也是比較合理的過程。
這種基于虎符TePA的物聯(lián)網(wǎng)安全接入機制,滿足了無線傳感器安全接入的需求,滿足了一下常見的安全性要求:
(1)機密性:本機制的機密性是建立在橢圓曲線加密算法上的。ECC是目前已知的公鑰密碼體制中,對每一比特所提供加密強度最高的一種體制[5],表2說明ECC和其它幾種公鑰體質(zhì)相比安全性更高。
表2 相同安全強度下ECC和RSA密鑰長度比較
(2)抗重放攻擊:抵御重放攻擊主要有隨機數(shù)和時間戳兩種辦法。本機制采用了隨機數(shù)的辦法抵御重放攻擊。Sink和Node的每次通信都由發(fā)送方隨機選取了一個隨機數(shù)來標識,若收到連著兩次或兩次以上使用相同的隨機數(shù)的協(xié)議分組,將被視為重放消息而丟棄。
(3)抗中間人攻擊:假若竊聽者截取到Sink發(fā)送的接入鑒別向分組后,試圖偽裝成Sink與Node通信,如圖5所示。
圖5 中間人攻擊
竊聽者試圖將接入鑒別響應分組中的Sink簽名字段Reg(RSink、RNode、INode)和KeySink替換為Reg′(RSink、RNode、INode)和Key′Sink來修改來自CA的鑒別結(jié)果,但Node收到分組后將采用ECDSA的驗證步驟來檢驗隨機數(shù)RSink、RNode的值,由于沒有正確的KeySink,驗證無法通過。因此竊聽者將無法通過冒充Sink來影響驗證結(jié)果。
(4)身份鑒別:基于虎符TePA提出的五次傳遞和調(diào)用可信第三方的方法,本機制有效的實現(xiàn)了雙方的身份鑒別。假若攻擊者截取到Sink節(jié)點發(fā)送的接入響應分組,但是由于沒有CA的公鑰,不能正確驗證簽名,即使由于某種原因非法獲取了CA的公鑰,也無法通過后面的身份驗證。
由于物聯(lián)網(wǎng)的開放性和多源異構(gòu)性使其安全面臨巨大的挑戰(zhàn),迫切需要研究物聯(lián)網(wǎng)的安全接入機制,為物聯(lián)網(wǎng)的安全通信提供基本保障。本文結(jié)合虎符TePA提出了物聯(lián)網(wǎng)的安全接入機制,采用了具有安全性高、計算量小、存儲空問占用小、帶寬要求低等特點的橢圓曲線密碼算法,并從內(nèi)存消耗、能量消耗、機密性、抗重放攻擊和抗中間人攻擊等方面分析了該機制的可行性和安全性。在此基礎(chǔ)上研究物聯(lián)網(wǎng)的端到端認證機制、隱私保護機制等安全技術(shù)將是下一步的工作。
[1]WU Hequan.Review on internet of things:Application and challenges [J].Journal of Chongqing University of Posts and Telecommunications(Natural Science Edition),2010,21 (5):526-531(in Chinese). [鄔賀銓.物聯(lián)網(wǎng)的應用與挑戰(zhàn)綜述[J].重慶郵電大 學學報 (自然科學版),2010,21 (5):526-531.]
[2]ITU.The internet of things [EB/OL].[2010-07-03].http://www.itu.int/internetofthings.
[3]HUANG Zhenhai,LAI Xiaolong,TIE Manxia,et al.The progress of tri-element peer authentication (TePA)and access control method [J].Information Technology & Standardization,2009,50 (6):21-23 (in Chinese). [黃振海,賴曉龍,鐵滿霞,等.三元對等鑒別及訪問控制方法國際提案進展 [J].信息技術(shù)與標準化,2009,50 (6):21-23.]
[4]HOU Aiqin.The study of digital signature based on elliptic curve cryptography[D].Xi’an:Northwestern University,2007(in Chinese).[侯愛琴.基于橢圓曲線密碼的數(shù)字簽名研究[D].西安:西北工業(yè)大學碩士論文,2007.]
[5]LING Yubing.Design and implementation of identity authentication scheme based on elliptic curve cryptography on WSN[D].Zhejiang:Zhejiang University of Technology.2008 (in Chinese).[林玉炳.無線傳感器網(wǎng)絡(luò)上基于橢圓曲線密碼的認證方案設(shè)計與實現(xiàn) [D].杭州:浙江工業(yè)大學,2008.]
[6]SHEN Subin,F(xiàn)AN Quli,ZONG Ping,et al.Study on the architecture and associated technologies of internet of things [J].Journal of Nanjing University of Post and Telecommunications(Natural Science),2009,29 (6):1-11 (in Chinese). [沈蘇彬,范曲立,宗平,等.物聯(lián)網(wǎng)的體系結(jié)構(gòu)與相關(guān)技術(shù)研究[J].南京郵電大學學報 (自然科學版),2009,29 (6):1-11.]
[7]SUN Qibo,LIU Jie,LI Shan,et al.Internet of things:Summarize on concepts,architecture and key technology problem[J].Beijing University of Posts and Telecommunications,2010,33 (3):1-9 (in Chinese).[孫其博,劉杰,黎羴,等.物聯(lián)網(wǎng):概念、架構(gòu)與關(guān)鍵技術(shù)研究綜述 [J].北京郵電大學學報,2010,33 (3):1-9.]
[8]SHEN Subin,MAO Yanqin,F(xiàn)AN Quli,et al.The concept model and architecture of the internet of things [J].Journal of Nanjing University of Post and Telecommunications(Natural Science),2010,30 (4):1-8 (in Chinese). [沈蘇彬,毛燕琴,范曲立,等.物聯(lián)網(wǎng)概念模型與體系結(jié)構(gòu) [J].南京郵電大學學報:自然科學版,2010,30 (4):1-8.]
[9]Mulligan G.The internet of things:here now and coming soon[J].Internet Computing,2010,14 (1):36-37.
[10]HAMAD F,SMALOV L,JAMES A.Energy-aware security in m-commerce and the internet of things [J].IETE Technical Review,2009,26 (5):357-362.
[11]LOPEZ J.Wireless sensor network security[M].Canada:IOS Press,2008.
[12]GB15926.11-2003/XG1-2006,Information technology-Telecommunications and information exchange between systems-local and metropolitan area networks-specific requirements-part 11:Wireless LAN medium access control(MAC)and physical layer(PHY)specifications[S]. (in Chinese). [GB15926.11-2003/XG1-2006,信息技術(shù) 系統(tǒng)間遠程通信和信息交換局域網(wǎng)和城域網(wǎng) 特定要求 第11部分:無線局域網(wǎng)媒體訪問控制和物理層規(guī)范 [S].]
[13]WANG Guofeng,LONG Zhaohua,JIANG Guiquan.Tri-element authentication method based on ECDSA in WLAN [J].Computer Engineering,2009,35 (14):171-172 (in Chinese).[王國鋒,龍昭華,蔣貴全.WLAN中基于ECDSA的三元鑒別方法 [J].計算機工程,2009,35 (14):171-172.]
[14]ZHANG Yizhi,ZHAO Yi,TANG Xiaobin.MD5algorithm[J].Computer Science,2008,35 (7):295-297 (in Chinese).[張裔智,趙毅,湯小斌.MD5算法研究 [J].計算機科學,2008,35 (7):295-297.]
[15] WANG Shidong,LI Xiang.SHA-1in the elliptic curve cryptosystem encrypted communication protocol[J].Journal of Yancheng Institute of Technology (Natural Science Edition),2008,21 (1):42-44 (in Chinese).[王世東,李祥.SHA-1在橢圓曲線密碼加密通信協(xié)議中的應用 [J].鹽城工學院學報:自然科學版,2008,21 (1):42-44.]