洪 田,鮑淑娣,張元亭,3
(1.中國科學院健康信息學重點實驗室,廣東深圳518055;2.中國科學院 深圳先進技術(shù)研究院,廣東深圳518055;3.香港中文大學生物醫(yī)學工程聯(lián)合研究中心,香港)
軀域無線傳感器網(wǎng)絡(軀感網(wǎng),body sensor network,BSN)是由穿戴于體表或植入于人體內(nèi)部的小型化、低功耗的生物傳感器組成的無線傳感器網(wǎng)絡,主要應用于醫(yī)學健康領(lǐng)域,實現(xiàn)患者生理狀況的遠程監(jiān)測和治療信息的及時反饋[1]。它不僅在老年人、新生兒、孕產(chǎn)婦、殘疾人和慢性疾病的家庭監(jiān)護中有著廣闊的應用前景[2],更重要的是為人們提供了一種以預防為主的網(wǎng)絡化、低成本、個性化的新型醫(yī)療服務模式,對于解決我國目前醫(yī)療資源短缺、看病難、看病貴的問題具有重要意義。
BSN中傳輸?shù)臄?shù)據(jù)多為患者生理信息,關(guān)系到個人的生命安全,其安全性和可靠性必須得到滿足,因此,必須對生理信息進行加密后傳輸。由于可用資源受到限制,BSN一般采用對稱式加密系統(tǒng),其安全核心取決于對稱密鑰的安全分發(fā)。一種可行的方案是將生物特征識別與加密技術(shù)應用到BSN中以同時實現(xiàn)網(wǎng)內(nèi)節(jié)點的身份認證與密鑰的安全分發(fā)[3]。該方法的基本思想可以描述為:由于人體具有自身的通信傳輸系統(tǒng),如血液循環(huán)系統(tǒng)、神經(jīng)系統(tǒng)等,從人體上不同位置的傳感器節(jié)點提取的同一生物特征具有高度的相似性,利用在一個節(jié)點提取的生物特征對密鑰加密保護,分發(fā)后,在另外一個節(jié)點利用提取的同一生物特征即可解密獲得密鑰。但是如何克服生物特征的模糊性與密碼技術(shù)的精確性之間的矛盾,文獻[4]提出的模糊承諾方法利用糾錯碼技術(shù)很好地解決了這一問題,但該方法有一個前提,即分別用來加密和解密密鑰的2個高度相似的生物特征編碼后的二進制序列的漢明距離必須在糾錯碼的可糾錯范圍之內(nèi)。在此基礎(chǔ)上,文獻[5,6]證明心臟搏動間隔(inter-pulse interval,IPI)能夠作為生物特征實現(xiàn)節(jié)點認證和密鑰的安全分發(fā)。但該方案存在2個主要的問題:一是提取IPI信息的時間過長,提取64個IPI需要1 min左右的時間;二是生物特征的模糊性超出了糾錯碼的糾錯能力導致密鑰分發(fā)時的同網(wǎng)錯誤拒絕率還不夠理想。
本文針對以上2個問題,設(shè)計了新的基于IPI的BSN密鑰分發(fā)機制。
IPI能夠從任意心血管信號中提取得到,例如:臨床常用的心電信號(electrocardiogram,ECG)和光電容積描記信號(photoplethysmogram,PPG)。圖1為同步采集的ECG和PPG信號,其中,IPI可由ECG和PPG的峰峰值得到。文獻[7]從混沌特性、隨機性、相似性等方面證明了IPI能夠作為生物特征實現(xiàn)傳感器節(jié)點認證和保密通信。與現(xiàn)在廣泛應用的指紋、人臉、虹膜等生物特征相比,IPI是動態(tài)時變的,因此,安全性更好;與文獻[8]提出的采用ECG作為生物特征的BSN加密方案相比,IPI能夠從多種傳感器中提取,而ECG只能從心電傳感器中提取,因此,IPI更適用于BSN。
圖1 從同步ECG和PPG信號中提取IPI示意圖Fig 1 IPI extracted from simultaneous ECG and PPG signals
在提取IPI信息后,需要經(jīng)過量化編碼轉(zhuǎn)換為二進制序列后才能夠用來進行傳感器節(jié)點識別和保護密鑰的分發(fā),轉(zhuǎn)換后的二進制序列稱作個體識別碼(entity identifier,EI)。假設(shè)BSN內(nèi)的每個節(jié)點都可以采集至少一種心血管信號,基于IPI的個體識別碼生成方案如圖2所示[7]。主節(jié)點首先發(fā)出一個同步指令,即表示所有節(jié)點同步采集心血管信號并進行EI的生成。每一個節(jié)點檢測記錄一段心血管信號,并計算各自的IPI,如果采樣率是1 kHz,則IPI是單位為ms的正整數(shù),假設(shè)采集了L個IPI,記為{IPIi|1≤i≤L}。首先對這L個IPI進行連續(xù)累加計算
然后對累加IPI進行求模,即mIPIi(mod 2p),再對求模結(jié)果進行區(qū)間映射f:[0,2p)→[0,2q)
其中,floor函數(shù)表示返回最大整數(shù)。最后,為減少編碼誤差,進行格雷編碼后將其進行合并即得到EI
其中,Gray表示格雷編碼,‖表示串聯(lián)操作。
采用該方法生成的個體識別碼碼長n取決于IPI個數(shù)L和參數(shù)q,即n=L·q。例如:若L=64,q=4,則生成的個體識別碼的碼長為256。
圖2 個體識別碼生成框圖Fig 2 Block diagram of entity identifier generation
BSN中的任意2個傳感器節(jié)點同步生成的個體識別碼并不完全相同,但是具有高度的相似性,其漢明距離很小,設(shè)定一個合適的漢明距離作為判別閾值,以使得同網(wǎng)匹配對EI的漢明距離在閾值之內(nèi),而異網(wǎng)非匹配對EI的漢明距離在閾值之外,從而實現(xiàn)對同網(wǎng)節(jié)點的認證和保護密鑰的安全分發(fā)。
模糊承諾方法(fuzzy commitment scheme)是Juels和Wattenberg提出來的一種用于綁定密鑰與生物特征的加密方法,該方法將糾錯碼技術(shù)與生物特征結(jié)合起來,用2個相近似的生物特征實現(xiàn)密鑰的承諾和解承諾,而不需要采用2個完全相同的生物特征即可實現(xiàn)密鑰的安全傳輸。本文采用基于IPI生成的個體識別碼,結(jié)合模糊承諾方法,設(shè)計了一種軀感網(wǎng)的密鑰分發(fā)機制,見圖3。將密鑰K表示為:K={0,1}k,密鑰K進行的糾錯編碼表示為g:K→C,g代表從密鑰到糾錯碼的映射,C={0,1}n代表相應的糾錯碼。發(fā)送節(jié)點與接收節(jié)點同步采集IPI,分別生成個體識別碼EI與EI'。EI經(jīng)冗余編碼后得到冗余個體識別碼E^I,發(fā)送節(jié)點將E^I與C的異或結(jié)果以及C的單向哈希值發(fā)送出去。設(shè)hash()表示單向哈希運算,則發(fā)送節(jié)點發(fā)送F(C,E^I)=(C⊕E^I,hash(C))。接收節(jié)點收到F(C,E^I)后,用同步生成的EI'經(jīng)過冗余編碼后得到的E^I'來進行糾錯解碼(C',K')=f(E^I⊕(C⊕E^I)),其中,f代表糾錯解碼,C'表示解碼后的碼字,K'表示解碼后得到的密鑰。如果hash(C')=hash(C),則K'為正確的密鑰,即K'=K;否則,解密失敗。
冗余編碼是重復利用個體識別碼中的部分或全部信息,以擴展個體識別碼的長度得到冗余個體識別碼,在這過程中信息熵并沒有變化,其目的是為了利用更少的IPI信息生成相同長度的冗余個體識別碼,以減少采集生理信號所需要的時間。發(fā)送節(jié)點和接收節(jié)點提取的個體識別碼各個比特出現(xiàn)不匹配的概率并不相同,當個體識別碼生成參數(shù)q=4時,經(jīng)過實驗統(tǒng)計與理論分析發(fā)現(xiàn),每個IPI對應生成的4 bit個體識別碼出現(xiàn)不匹配的概率比為1∶1∶2∶4,所以,在利用這些比特進行冗余編碼時,相應地將其權(quán)值設(shè)為4∶4∶2∶1,這樣經(jīng)過冗余編碼后發(fā)送節(jié)點和接收節(jié)點的冗余個體識別碼的漢明距離將會減小很多,從而可以降低密鑰分發(fā)時的同網(wǎng)錯誤拒絕率。
圖3 兩個節(jié)點之間的密鑰分發(fā)框圖Fig 3 Block diagram of key distribution between two sensor nodes
實驗同步采集了20位健康青年的1路ECG和1路PPG信號,采樣率為1 kHz,記錄時間持續(xù)5 min。并根據(jù)前述方法提取IPI信息,分別生成100對長度為255的個體識別碼和100對長度為255的冗余個體識別碼。在這里,對個體識別碼與冗余個體識別碼的性能進行比較分析,包括同網(wǎng)錯誤拒絕率/異網(wǎng)錯誤接收率、所需生理信號采集時間以及安全性能。
基于生物特征的密鑰分發(fā)存在兩類錯誤,即錯誤拒絕和錯誤接收。錯誤拒絕率(false rejection rate,F(xiàn)RR)是指當發(fā)送節(jié)點與接收節(jié)點為同網(wǎng)節(jié)點時,接收節(jié)點解密失敗而錯誤認為發(fā)送節(jié)點為異網(wǎng)節(jié)點的概率;錯誤接收率(false acceptance rate,F(xiàn)AR)指當發(fā)送節(jié)點與接收節(jié)點為異網(wǎng)節(jié)點時,接收節(jié)點解密出密鑰而錯誤認為發(fā)送節(jié)點為同網(wǎng)節(jié)點的概率。顯然,F(xiàn)RR和FAR越小越好。圖4(a)為實驗統(tǒng)計的255 bit個體識別碼的FRR和FAR隨漢明距離的變化曲線圖,圖4(b)為實驗統(tǒng)計的經(jīng)冗余編碼后的255 bit冗余個體識別碼的FRR和FAR隨漢明距離的變化曲線圖。
圖4 FRR和FAR隨漢明距離的變化曲線圖Fig 4 Curves of FRR and FAR change with Hamming distance
由圖4(a)可以看出:對于255 bit的個體識別碼,若判別閾值設(shè)為 80~100,F(xiàn)RR 和 FAR 都很?。‵RR=0.02,F(xiàn)AR=0),能夠?qū)νW(wǎng)和異網(wǎng)節(jié)點進行很好的區(qū)分,由圖4(b)可看出:經(jīng)冗余編碼后的冗余個體識別碼,若判別閾值設(shè)為60~80,F(xiàn)RR 和 FAR 足夠?。‵RR <0.02,F(xiàn)AR=0),也能夠?qū)νW(wǎng)和異網(wǎng)節(jié)點進行很好的區(qū)分,并且FRR更小。另外,冗余個體識別碼的判別閾值下降了20 bit,這是非常有意義的,因為判別閾值決定了糾錯碼可糾錯能力的選擇,最理想的情況就是選取判別閾值作為糾錯碼的可糾錯能力,所以,判別閾值下降20 bit,糾錯碼的可糾錯能力相應的也可以降低20bit。對于糾錯碼(n,k,t)(其中,n表示糾錯碼字的長度,k表示密鑰的長度,t為可糾錯能力)。當n一定時,t的減小將會帶來k的增大,即密鑰長度變大,系統(tǒng)的安全性將會呈指數(shù)增加,見2.3節(jié)分析。
密鑰分發(fā)是在節(jié)點進行數(shù)據(jù)交互之前進行的,提取IPI信息時間的長短不會影響數(shù)據(jù)的實時交互,但卻會影響密鑰分發(fā)的速度。在實驗中需要255 bit的個體識別碼,如果直接采用IPI生成的個體識別碼,需要64個IPI,提取64個IPI需要約1 min的時間。而采用冗余編碼對每一個IPI生成的4 bit個體識別碼分別采用4,4,2,1的權(quán)值進行冗余擴展,255 bit的冗余個體識別碼只需要24個IPI,提取24個IPI只需要約24 s的時間,相比直接采用255 bit的個體識別碼,所需的IPI數(shù)目減少了40個,相應的IPI信息提取時間減少了36 s,這將很大程度上加快密鑰分發(fā)的速度。
有2個因素決定著加密系統(tǒng)的安全性:算法的強度和密鑰的長度。在本文的密鑰分發(fā)方案中,采用了異或運算和單向哈希運算,這2種運算有效地隱藏了密鑰信息,攻擊者發(fā)起攻擊的唯一方式就是竭盡全力搜索不同的密鑰組合,即暴力攻擊。在2.1節(jié)中提到,漢明閾值的下降能夠增大密鑰的長度,這樣就增大了攻擊者在暴力攻擊時需要搜索的密鑰組合,從而能夠提高系統(tǒng)的安全性。
基于IPI的BSN加密系統(tǒng)采用了密鑰和生物特征的雙因子加密方法,密鑰和由生物特征編碼后的個體識別碼中信息熵小的一方將決定系統(tǒng)的抗攻擊能力,根據(jù)Shannon信息熵的定義,二進制隨機序列x={0,1}n的信息熵
則密鑰K={0,1}k的信息熵
碼長為L·q的EI的信息熵
糾錯編碼和冗余編碼并不會改變信息熵,從抗攻擊能力來說,系統(tǒng)安全性將取決于密鑰和EI當中長度小的一方。所以,只要確保EI的長度大于密鑰的長度,冗余編碼的引入將不會影響系統(tǒng)的安全性,即
在實驗中,冗余編碼的引入使得提取的IPI數(shù)目由64降到24,EI的長度由255降到96,所以,在密鑰長度小于96時,系統(tǒng)的安全性將不會受影響。
對于長為96的密鑰,采用暴力攻擊需要搜索296個不同的密鑰組合,假設(shè)計算機在1 s內(nèi)可以嘗試10億個密鑰,這需要3000臺計算機并行工作8億年才能夠找到正確的密鑰,對于攻擊者來說這是不可行的,所以,系統(tǒng)是安全的。
本文設(shè)計了一種基于生物特征IPI的BSN密鑰分發(fā)機制,將經(jīng)過冗余編碼后的生物特征結(jié)合模糊承諾方法實現(xiàn)了BSN內(nèi)密鑰的安全有效分發(fā)。實驗結(jié)果表明:該機制具有足夠的安全性,并且能夠有效提高密鑰分發(fā)的速度,降低密鑰分發(fā)時的錯誤拒絕率和漢明閾值。由于在不影響系統(tǒng)安全性的前提下引入了冗余編碼的設(shè)計,使得該機制在實際的BSN監(jiān)護系統(tǒng)中更具有可行性。
[1]Lo B,Yang Guangzhong.Body sensor networks-research challenges and opportunities[C]//2007 IET Seminar on Antennas and Propagation for Body-Centric Wireless Communications,London,England,2007:26 -32.
[2]陳祝榮,劉守斌.基于無線傳感器網(wǎng)絡的多參數(shù)家庭監(jiān)護系統(tǒng)[J].傳感器與微系統(tǒng),2009,28(2):72 -74.
[3]Cherukuri S,Venkatasubramanian K K,Gupta S K S.Biosec:A biometric based approach for securing communication in wireless networks of biosensors implanted in the human body[C]//2003 International Conference on Wireless Security and Privacy,USA,2003:432-439.
[4]Juels A,Wattenberg M.A fuzzy commitment scheme[C]//Proceedings of the 6th ACM Conference on Computer and Communications Security,New York,USA,1999:28 -36.
[5]Bao Shudi,Zhang Yuanting,Shen Lianfeng.Physiological signal based entity authentication for body area sensor networks and mobile healthcare systems[C]//Proceedings of the 2005 IEEE 27th Annual Conference on Medicine and Biology,Shanghai,China,2005:2255-2258.
[6]Poon C C Y,Bao Shudi,Zhang Yuanting.A novel biometrics method to secure wireless body area sensor networks for telemedicine and m-health[J].IEEE Communications Magazine,2006,44(4):73-81.
[7]Bao Shudi,Poon C C Y,Zhang Yuanting,et al.Using the timing information of heartbeats as an entity identifier to secure body sensor network[J].IEEE Transactions on Information Technology in Biomedicine,2008,12(6):772 -779.
[8]Venkatasubramanian K K,Banerjee A,Gupta S K S.EKG-based key agreement in body sensor networks[C]//IEEE INFOCOM Workshops,USA,2008:1 -6.