朱淑文, 鐘伯成, 王加賓, 丁邢濤
(上海工程技術(shù)大學(xué) 電子電氣工程學(xué)院,上海 201620)
無線體域網(wǎng)(wireless body area networks,WBAN)應(yīng)用于醫(yī)療領(lǐng)域過程中,智能傳感器終端采集傳輸?shù)臄?shù)據(jù)都是與患者生命緊密相關(guān)的生理信息,確保相關(guān)信息安全是WBAN中一項(xiàng)至關(guān)重要的任務(wù),而身份認(rèn)證作為實(shí)現(xiàn)數(shù)據(jù)安全第一道屏障,成為WBAN中的研究熱點(diǎn)。文獻(xiàn)提出一種基于心臟搏動(dòng)間隔的輕量級(jí)身份認(rèn)證方法,根據(jù)對(duì)心臟搏動(dòng)間隔的隨機(jī)性和時(shí)變性的分析,設(shè)計(jì)了一種動(dòng)態(tài)個(gè)體識(shí)別碼的編碼方案。文獻(xiàn)提出了一種基于心電(electrocardiograph,ECG)信號(hào)的安全框架。發(fā)送者的ECG原始信號(hào)經(jīng)特征值提取為二進(jìn)制序列,哈希運(yùn)算后生成消息認(rèn)證碼,接收者對(duì)消息認(rèn)證碼進(jìn)行概率估算并與醫(yī)療數(shù)據(jù)庫(kù)中儲(chǔ)存的特征值匹配判斷發(fā)送者的身份。但是目前生理特征的提取或準(zhǔn)確率不高,或過于復(fù)雜,信息保護(hù)方案的性能有待進(jìn)一步的提高。
本文針對(duì)WBAN中傳感器節(jié)點(diǎn)能量資源嚴(yán)重受限與生理特征提取準(zhǔn)確性不高的實(shí)際情況,設(shè)計(jì)了一種基于集合編碼的ECG生物特征提取方法和零知識(shí)認(rèn)證相結(jié)合的雙向身份認(rèn)證協(xié)議。
以往對(duì)ECG信號(hào)處理的方法是基于模糊提取器的生物密鑰算法,將生物特征表征為有序的二進(jìn)制序列,這會(huì)使生物密鑰產(chǎn)生大量的冗余編碼。本文心電特征表征方法基于整數(shù)集合的表示模式將心電特征表示為無序的集合,在分發(fā)過程中不用產(chǎn)生大幅冗余的編碼,大大降低了編碼過程中的平均錯(cuò)誤率。傳感器節(jié)點(diǎn)采集到ECG信號(hào)后采用文獻(xiàn)提出的Vita Code心電生物特征提取表示方法。圖1為Vita Code心電圖特征提取處理流程。
圖1 Vita Code心電圖特征提取處理流程
全球定位系統(tǒng)(global positioning system,GPS)身份識(shí)別協(xié)議具有以下特點(diǎn):在一般任意模數(shù)離散對(duì)數(shù)問題難解的假設(shè)下是可以證明安全的,基于身份的短密鑰,有非常小的信息傳輸量和最小化的在線計(jì)算量,適用于WBAN節(jié)點(diǎn)能量受限和安全需求較高的情況。
醫(yī)療傳感網(wǎng)主要有無線體域網(wǎng)、用戶終端和醫(yī)療云服務(wù)器組成,用戶終端收集各個(gè)醫(yī)療傳感器發(fā)送的生理信息,通過基站、網(wǎng)關(guān)等外部網(wǎng)絡(luò)將醫(yī)療信息傳送至醫(yī)療云服務(wù)器。認(rèn)證協(xié)議將基于ECG特征口令的認(rèn)證實(shí)現(xiàn)用戶終端對(duì)云服務(wù)器的驗(yàn)證,并在基于協(xié)議的基礎(chǔ)上,用心電特征值作為用戶終端的私鑰進(jìn)行認(rèn)證,實(shí)現(xiàn)用戶終端和云服務(wù)器之間的雙向認(rèn)證。認(rèn)證協(xié)議主要包括系統(tǒng)初始化、用戶終端注冊(cè)、認(rèn)證。協(xié)議的簡(jiǎn)單流程如圖2。
圖2 認(rèn)證協(xié)議流程
認(rèn)證協(xié)議的符號(hào)定義為CT為用戶終端,X為注冊(cè)的心電特征集合,CS為云服務(wù)器,Y為待驗(yàn)的心電特征集合,⊕為邏輯異或操作,id為用戶身份。
階段一UT→CS
1)UT采集并提取病人的ECG特征集合為X={x1,…,xi,…,xm},0 2)利用ECG特征集合X構(gòu)建一個(gè)m階的特征多項(xiàng)式 (1) 式中p=2q為公開的,該過程在有限域GF(2q)上計(jì)算。 3)在整數(shù)集U中隨機(jī)的抽取t個(gè)不同的元素構(gòu)成集合E={e1,…,ei,…,et},計(jì)算多項(xiàng)式P(z)在集合E上的函數(shù)值,而得到點(diǎn)集 V={〈e1,P(e1)〉,…,〈ei,P(ei)〉,…,〈et,P(et)〉} (2) 4)選取私鑰s∈[0,S],計(jì)算D≡g-Xmod(n),θ=s⊕X,H(s)=hash(s),并將id,θ,D,V,H(s)發(fā)送給CS。 階段二CS→UT發(fā)送注冊(cè)成功信息 CS檢查UT的合法性后,將UT發(fā)來的id,θ,D,V,H(s)存儲(chǔ)在CS的數(shù)據(jù)庫(kù)中,然后向UT發(fā)送注冊(cè)成功的消息。 階段一UT→CS,id UT發(fā)送id請(qǐng)求CS認(rèn)證。 階段二CS→UT,θ,V,H(s) CS通過數(shù)據(jù)庫(kù)找出id對(duì)應(yīng)的θ,V,H(s),發(fā)送給UT。 階段三UT→CS,φ 1)UT將采集的心電生物特征Y表示為一個(gè)m階的無序整數(shù)集合Y={y1,…,yi,…,ym},0 (3) 從V提取出t個(gè)互異的元素構(gòu)建E={e1,…,ei,…,et},計(jì)算多項(xiàng)式Q(z)在集合E上的函數(shù)值,從而得到點(diǎn)集 {〈e1,Q(e1)〉,…,〈ei,Q(ei)〉,…,〈et,Q(et)〉} (4) 2)假設(shè)有t個(gè)未知的變量:A={a1,…,ai,…,au}和B={b1,…,bi,…,bv},A?U,B?U,其中u=mX-(mX+mY-t)/2=(mX-mY+t)/2,v=mY-(mX+mY-t)/2=(mX-mY+t)/2,由此構(gòu)建兩個(gè)特征多項(xiàng)式 (5) 3)基于上述t個(gè)未知變量,構(gòu)建t個(gè)獨(dú)立的方程 P(ei)B(ei)=Q(ei)A(ei),i=1,…,t (6) 因?yàn)閧P(e1),…,P(ei),…,P(et)}和{Q(e1),…,Q(ei),…,Q(et)}已經(jīng)被計(jì)算出來,故該方程組可解的唯一的值,A={a1,…,ai,…,au},B={b1,…,bi,…,bv}。假如B?Y,則認(rèn)證過程停止,如果B?Y,從m階集合Y中減去那些也在u階集合B中的共同元素,再加上u階集合A的所有元素,可以計(jì)算出一個(gè)新的m階集合 X*=(Y-B)∪A (7) 此時(shí)X*為恢復(fù)出來的注冊(cè)的ECG特征值集合。 4)UT計(jì)算私鑰s*=X*⊕θ,計(jì)算H(s*)=hash(s*),比較H(s*)與接收的H(s)是否相同,如果相同,則證明CS是合法的,然后從[0,M)中隨機(jī)選擇一個(gè)數(shù)r,并計(jì)算φ≡gr(mod(n)),將其發(fā)送給服務(wù)器。 階段四CS→UT,c CS從[0,B)中隨機(jī)選擇一個(gè)挑戰(zhàn)c發(fā)送給UT。 階段五UT→CS,y 計(jì)算y=r+cX并將其發(fā)送給CS,y為響應(yīng)應(yīng)答。 階段六CS通過驗(yàn)證y∈[0,M+Φ)及φ*≡gyDz(mod(n))是否與φ相同,如果驗(yàn)證通過則接收UT的證明,否則協(xié)議停止。 根據(jù)協(xié)議安全需求,CS要求UT重復(fù)上述認(rèn)證過程l次。一般在實(shí)際應(yīng)用中,當(dāng)參數(shù)|N|=32的情況下,只認(rèn)證1次即滿足安全需要。 定理1 在本協(xié)議中當(dāng)ECG生理特征集合X與Y滿足互異相似門限條件時(shí),即當(dāng)|X|+|Y|-2|X∩Y|≤t時(shí),得到(Y-B)∪A=X,可實(shí)現(xiàn)對(duì)注冊(cè)心電特征X進(jìn)行復(fù)現(xiàn)。 定理2 合法的CS能通過UT的驗(yàn)證,即正確的H(s)能夠通過等式H(s*)=H(s)的驗(yàn)證。 證明:因?yàn)閟*=X*⊕θ=X*⊕(s⊕X)=s,所以正確的H(s)能夠通過等式H(s*)=H(s)的驗(yàn)證。 定理3 合法的UT能通過CS的驗(yàn)證,即正確的(c,y)能夠通過等式φ*≡φ(mod(n))的驗(yàn)證。 證明:由于y=r+cX,D≡g-X(mod(n)),φ*≡gr(mod(n)),故φ*≡gyDc≡gr+cX(g-X)c≡gr(mod(n)),故φ*≡φ(mod(n))。所以正確的(c,y)能夠通過等式φ*≡φ(mod(n))的驗(yàn)證。 1)保護(hù)ECG隱私屬性在UT認(rèn)證CS合法性過程中,攻擊者有機(jī)會(huì)獲取密鑰恢復(fù)的輔助信息θ,為了獲得私鑰s,只能通過暴力猜測(cè)的方式獲得除了V中部分X信息之外的X信息,而注冊(cè)ECG特征X中元素的取值在(0,MAX〗之間,破解出V中t個(gè)元素之外的其他X元素的計(jì)算復(fù)雜度為MAXm-1。因此攻擊者不能獲得UT的ECG特征集合X*。整個(gè)認(rèn)證階段ECG特征值X以D≡g-X(mod(n))存儲(chǔ),因?yàn)橛蒁和g解出X是離散對(duì)數(shù)難題,所以生物特征認(rèn)X是安全的。 2)抵御偽造攻擊 由于攻擊者無法獲得UT的ECG特征集合X*,所以,不能由θ解出的私鑰s,從而無法獲取注冊(cè)時(shí)的生物特征信息X。在認(rèn)證過程中如果θ被偽造,UT在恢復(fù)出私鑰s后,計(jì)算出的H(s)*如果與CS發(fā)送的H(s)不相等時(shí),說明θ被偽造,立即終止協(xié)議。 3)抵御重放攻擊 對(duì)于重放攻擊來說,盡管注冊(cè)ECG特征X為GPS協(xié)議的私鑰不會(huì)改變,但CS對(duì)UT的驗(yàn)證中采用了一次性隨機(jī)數(shù)的挑戰(zhàn),可見攻擊者重放在以前通信過程中竊聽到的隨機(jī)數(shù)時(shí)無法通過認(rèn)證。 4)雙向認(rèn)證 本協(xié)議實(shí)現(xiàn)了UT 和CS之間的雙向認(rèn)證。UT對(duì)CS的驗(yàn)證采用的是基于ECG特征口令的身份認(rèn)證技術(shù),協(xié)議安全性是基于私鑰s的安全性,s的安全性由單向哈希函數(shù)保證。CS對(duì)UT的認(rèn)證是基于GPS的身份識(shí)別協(xié)議設(shè)計(jì)的,認(rèn)證過程中由注冊(cè)的心電特征集合作為用戶的秘密信息,GPS協(xié)議的安全性可以保證這部分的安全性。 在UT對(duì)CS認(rèn)證過程中,采用基于集合編碼的心電特征作為口令信息,通過實(shí)驗(yàn)比較文獻(xiàn)中介紹的有序二進(jìn)制編碼和本協(xié)議所用的Vita Code的集合編碼方法對(duì)ECG特征識(shí)別的準(zhǔn)確性的影響。 圖3給出了實(shí)驗(yàn)采用有序二進(jìn)制編碼方法與集合編碼方法(編碼長(zhǎng)度m=64;特征選取RR;值量化參數(shù)q=4)時(shí),所得的錯(cuò)誤接受率(FAR)和錯(cuò)誤拒絕率(FRR)曲線。鑒于兩種表征方法采取的不同測(cè)度距離,故平均錯(cuò)誤率(EER)是相對(duì)準(zhǔn)確且合理的對(duì)比指標(biāo)。圖3(a)中二進(jìn)制編碼的ERR為3.27 %,圖3(b)中集合編碼的ERR為2.66 %。因此,本文采用的集合編碼表征方法在準(zhǔn)確性上有更好的效果,平均錯(cuò)誤率更少。在CS對(duì)UT的GPS認(rèn)證過程中,可以只需1次驗(yàn)證,就可達(dá)到安全水平。本文的通信量和計(jì)算量均較少,適用于WBAN中能源受限的UT。 圖3 準(zhǔn)確性分析結(jié)果 本文在介紹WBAN的相關(guān)背景知識(shí)和ECG特征提取方法的基礎(chǔ)上,根據(jù)醫(yī)療無線體域網(wǎng)認(rèn)證機(jī)制的安全需求,提出了一種滿足UT和CS之間的雙向身份認(rèn)證協(xié)議。通過對(duì)協(xié)議的正確性、安全性和效率分析表明該協(xié)議滿足醫(yī)療無線體域網(wǎng)的認(rèn)證需求。2.3 認(rèn)證階段
3 協(xié)議分析
3.1 正確性分析
3.2 安全性分析
3.3 效率分析
4 結(jié)束語(yǔ)