周景賢 李 昊 周亞建 李國友 張 淼
①(北京郵電大學(xué)信息安全中心 北京 100876)
②(災(zāi)備技術(shù)國家工程實(shí)驗(yàn)室 北京 100876)
③(電子信息控制重點(diǎn)實(shí)驗(yàn)室 成都 610036)
RFID應(yīng)答器(transponders)、讀取器、軟體與服務(wù)市場在2011年增長了9億美元,根據(jù)研究機(jī)構(gòu)ABI Research預(yù)測,該市場未來5年可取得年平均20%的增長率,到2017年可實(shí)現(xiàn)營收額705億美元,那時RFID裝置將無處不在。但是,由于存儲和計(jì)算能力受限等先天缺陷,使得用戶在享受RFID帶來便捷的同時,也面臨種種安全和隱私問題。例如,2007年2月在RSA安全大會上,一家名為IOActive的公司展示了一款RFID克隆器,它可以復(fù)制信用卡去竊取密碼。目前,學(xué)術(shù)界和工業(yè)界對RFID系統(tǒng)及其應(yīng)用的安全問題已經(jīng)進(jìn)行了深入的研究,并取得了許多令人鼓舞的成果。不可否認(rèn),仍然有不少需要改進(jìn)的地方。本文集中于對RFID標(biāo)簽查詢安全協(xié)議的研究。
安全查詢協(xié)議是一個RFID密碼協(xié)議,按照協(xié)議交互,驗(yàn)證者(讀寫器)可以準(zhǔn)確地判斷某一特定標(biāo)簽是否存在于多個標(biāo)簽中,并且協(xié)議的攻擊者得不到任何有用信息。例如,在RFID標(biāo)簽化圖書的圖書館環(huán)境中,可以使用此類協(xié)議去查詢一本可能丟失的圖書是否還在。
2008年,Tan等人[1]首次討論了RFID查詢機(jī)制,并給出了一系列標(biāo)簽查詢協(xié)議。他們協(xié)議都采用挑戰(zhàn)-響應(yīng)機(jī)制,讀寫器首先廣播一個請求消息,根據(jù)這個請求,如果目標(biāo)標(biāo)簽存在,它將回復(fù)被加密的身份信息,區(qū)域內(nèi)的其他標(biāo)簽以一定概率回復(fù)一個隨機(jī)值。隨后,一些研究成果相繼被提出[2-10]。Kulseng等人[2]基于線性反饋移位寄存器(LFSR)和物理不可克隆函數(shù)(PUF),提出了幾個輕量級安全查詢協(xié)議,適用于低成本標(biāo)簽。Chao等人[3]對這幾個協(xié)議分析后發(fā)現(xiàn),它們均不能抵抗標(biāo)簽追蹤攻擊。Kim等人[4]提出了一個基于標(biāo)簽群身份的查詢協(xié)議。他們將標(biāo)簽劃分為多個群,每個標(biāo)簽只屬于一個群,每個群有一個統(tǒng)一的群身份。在閱讀器發(fā)布請求信息后,除了目標(biāo)標(biāo)簽回復(fù)外,目標(biāo)標(biāo)簽所在的群中每個標(biāo)簽都需要回復(fù)。然后由讀寫器驗(yàn)證所有的回復(fù),以確定目標(biāo)標(biāo)簽是否存在。類似于文獻(xiàn)[1]使用的概率性回復(fù)一樣,它的缺點(diǎn)是:為了查詢一個標(biāo)簽,讀寫器需要進(jìn)行大量的計(jì)算。文獻(xiàn)[5]基于Hash函數(shù)給出了一個輕量級標(biāo)簽查詢協(xié)議,作者們聲稱該協(xié)議計(jì)算代價小、且安全性高。然而,Lee等人[6]分析指出,文獻(xiàn)[1,5]提出的查詢協(xié)議不能抵抗標(biāo)簽假冒攻擊。在文獻(xiàn)[6]中一個改進(jìn)協(xié)議也被提出,但它沿用概率性回復(fù)策略去抵抗追蹤攻擊,這限制了該協(xié)議的擴(kuò)展性。文獻(xiàn)[7,8]的作者們分別提出了基于密鑰更新的安全增強(qiáng)查詢協(xié)議,但讀寫器和目標(biāo)標(biāo)簽密鑰更新不同步問題卻沒有得到有效解決。直接導(dǎo)致的后果就是:一次查詢失敗,之后所有的查詢均不成功。文獻(xiàn)[9]基于比特記錄提出了一個前向安全的標(biāo)簽查詢協(xié)議,然而協(xié)議的安全分析顯示,它不能抵抗標(biāo)簽追蹤攻擊。文獻(xiàn)[10]的突出貢獻(xiàn)是:首先研究了標(biāo)簽查詢協(xié)議的匿名安全性,但該文提出協(xié)議的安全完全依賴于第三方的誠實(shí)度,讀寫器變成僅僅轉(zhuǎn)發(fā)信息的中繼器,該協(xié)議的使用范圍受到限制。
本文利用時間戳和Hash函數(shù),提出一個新的標(biāo)簽查詢協(xié)議,它不需要后臺服務(wù)器的參與,適用于移動RFID環(huán)境。主要貢獻(xiàn)包括:(1)形式化安全證明。用GNY邏輯證明新協(xié)議的正確性;(2)效率高。查詢協(xié)議計(jì)算復(fù)雜度為:O(1);(3)適用于低成本標(biāo)簽。協(xié)議僅采用Hash函數(shù)來保證數(shù)據(jù)傳輸?shù)陌踩?/p>
傳統(tǒng)的RFID系統(tǒng)由3個主體構(gòu)成:標(biāo)簽(Tag)、讀寫器(Reader)和后臺服務(wù)器。后臺服務(wù)器往往是一個固定站,存儲所有標(biāo)簽的信息,具有強(qiáng)大的計(jì)算能力,讀寫器通過有線的方式和服務(wù)器相連。該系統(tǒng)廣泛地應(yīng)用于超市購物、物流倉儲管理等環(huán)境中。然而在現(xiàn)實(shí)中,后臺服務(wù)器在給RFID系統(tǒng)帶來便捷的同時也引入了一些新的問題,如:它與讀寫器之間的安全、可靠、持續(xù)的連接如何保證,易引起災(zāi)難性后果的服務(wù)器失效如何防止等。
本文研究的標(biāo)簽查詢協(xié)議應(yīng)用于無后臺服務(wù)器的移動RFID系統(tǒng),它是由閱讀器R和一個標(biāo)簽集合組成。閱讀器R是一個手持式移動裝置,如:掌上電腦(PDA)等,它利用無線射頻信號與標(biāo)簽進(jìn)行通信,具有較強(qiáng)的計(jì)算和存儲能力,可以獨(dú)立對標(biāo)簽進(jìn)行認(rèn)證和查詢。標(biāo)簽一般分為兩類:有源(主動)標(biāo)簽和無源(被動)標(biāo)簽。我們主要考慮最為常用的被動標(biāo)簽,每個標(biāo)簽每次和一個閱讀器進(jìn)行通信。該系統(tǒng)適用于無法將服務(wù)器與讀寫器連接的遠(yuǎn)距離操作環(huán)境中;或標(biāo)簽分布范圍較廣,需要讀寫器頻繁移動的環(huán)境中。
與傳統(tǒng)RFID系統(tǒng)一樣,在無后臺服務(wù)器的RFID系統(tǒng)中,閱讀器與標(biāo)簽之間是無線通信,容易遭受許多惡意攻擊。我們假設(shè)攻擊者可以截獲標(biāo)簽和閱讀器之間所有的通信信息,并且攻擊者還可以對這些消息內(nèi)容進(jìn)行修改。特別地,在標(biāo)簽查詢過程中,針對標(biāo)簽安全和隱私的攻擊主要包括:竊聽、冒充、重放、標(biāo)簽追蹤和拒絕服務(wù)等。在第5節(jié)將對查詢協(xié)議的安全性進(jìn)行分析,這里不再贅述。
在本節(jié),我們提出一個使用在無后臺服務(wù)器的RFID系統(tǒng)中的標(biāo)簽查詢協(xié)議。協(xié)議參與主體有:讀寫器Ri和一個標(biāo)簽集合,其中假設(shè)Tj為目標(biāo)查詢標(biāo)簽。查詢協(xié)議包括兩個階段:參數(shù)初始化階段和標(biāo)簽查詢階段。圖1給出了具體查詢協(xié)議交互流程。
文中需要用到的一些符號被列出在表1中。
表1 符號描述
在初始化階段,標(biāo)簽Ti被寫入一個l長的唯一身份idi和一個與S共享的密鑰ki。讀寫器Ri有一個唯一的身份ri和包含標(biāo)簽秘密信息的訪問列表Li。ri和Li是Ri向S成功認(rèn)證自己后,從S處獲取。其中,訪問列表Li≡{(id1,h(ri,k1)),(id2,h(ri,k2)),…,(idn,h(ri,kn))}。
圖1 本文提出的協(xié)議交互流程
假設(shè)Ri想查詢標(biāo)簽Tj是否存在,Ri執(zhí)行下列步驟去查詢該標(biāo)簽:
(1)Ri首先生成一個新的時間戳 timenew,并且計(jì)算值r;
(2)Ri廣播r,ri, timenew給可達(dá)范圍內(nèi)的所有標(biāo)簽;
(3)收到查詢請求之后,所有標(biāo)簽T*首先驗(yàn)證timenew是否大于 timeold。如果大于,它們利用自己的密鑰kj計(jì)算f(h(ri,kj),timenew)的值,然后檢查f(h(ri,kj),timenew)⊕r是否等于它的身份值idj。如果相等,那么它就是本次要尋找的標(biāo)簽。然后Tj計(jì)算值t,并且替換 timeold為 timenew;
(4)Tj回復(fù)消息t給Ri;
(5)Ri利用 timenew驗(yàn)證消息t的有效性。
形式化方法的價值在于:能夠發(fā)現(xiàn)安全協(xié)議中以前不為所知的漏洞。GNY邏輯是一種形式化分析工具,在1990年由Gong等人[11]提出。GNY邏輯是由BAN邏輯發(fā)展而來的,與BAN邏輯相比,它具有更強(qiáng)的表現(xiàn)能力和適應(yīng)性。目前,它被認(rèn)為是影響最大的一種BAN類邏輯之一。
為了驗(yàn)證協(xié)議的安全性,我們利用 GNY邏輯對協(xié)議的目標(biāo),假設(shè)和消息傳遞進(jìn)行形式化分析,證明從協(xié)議的假設(shè)出發(fā),經(jīng)過協(xié)議的運(yùn)行可以達(dá)到預(yù)先設(shè)定的目標(biāo)。證明過程中使用的邏輯規(guī)則都來自于文獻(xiàn)[11]。為了簡化證明過程,我們直接給出邏輯規(guī)則代碼。希望進(jìn)一步研究的讀者,可以參見文獻(xiàn)[11]。
(1)關(guān)于標(biāo)簽Tj的假設(shè):Tj擁有身份信息idj,兩個單向 Hash 函數(shù)h(·),f(·);擁有秘密信息kj;協(xié)議雙方驗(yàn)證的依據(jù)是擁有共同秘密值h(ri,kj),所以Tj相信它與Ri共享h(ri,kj);Tj相信 timenew是新鮮的,否則協(xié)議不能成功運(yùn)行。
(2)關(guān)于讀寫器Ri的假設(shè):Ri擁有身份信息ri,單向函數(shù)f(·);Ri擁有關(guān)于Tj的秘密消息h(ri,kj),并且在協(xié)議運(yùn)行中發(fā)送自己的身份ri給Tj,所以Ri相信它和Tj共享信息h(ri,kj);Ri相信 timenew是新鮮的。
(3)協(xié)議的目標(biāo):作為一種自動查詢技術(shù),經(jīng)過安全協(xié)議的運(yùn)行,目標(biāo)標(biāo)簽Tj能夠相信挑戰(zhàn)信息是來自于合法的讀寫器Ri,并且以前未被使用,也就是新鮮的;同樣協(xié)議運(yùn)行后,讀寫器Ri也能夠確認(rèn)收到的回復(fù)信息來自于目標(biāo)標(biāo)簽Tj,并且是新鮮的。
協(xié)議目標(biāo)可以形式化為
在明確了協(xié)議的假設(shè)、目標(biāo)后,我們可以利用GNY邏輯中的相關(guān)推理規(guī)則,證明協(xié)議能夠從假設(shè)出發(fā),經(jīng)協(xié)議運(yùn)行后達(dá)到預(yù)先設(shè)定的目標(biāo)。
圖1中的(2)可GNY邏輯形式化為
圖1中的(4)可GNY邏輯形式化為
可見,通過協(xié)議的運(yùn)行,該協(xié)議可以在前提假設(shè)的基礎(chǔ)上實(shí)現(xiàn)預(yù)定的設(shè)計(jì)目標(biāo)。
與許多形式化邏輯一樣,GNY邏輯也有其不足之處。比如:無詳細(xì)的時間概念,無否定形式等。所以,某些潛在攻擊僅僅依靠 GNY邏輯無法被發(fā)現(xiàn)(比如:竊聽攻擊,追蹤攻擊等)。本節(jié)將從安全性能和實(shí)施效率兩方面來對提出的標(biāo)簽查詢協(xié)議進(jìn)行分析。
本文主要從:標(biāo)簽追蹤、竊聽、拒絕服務(wù)、冒充欺騙和重放攻擊5個方面來分析新協(xié)議的安全。
(1)竊聽攻擊:攻擊者A可以通過竊聽Ri和Tj之間的不安全信道,收集到消息:r,ri, timenew,t。顯然對于攻擊者A來說這些值沒有任何意義。t im enew是隨機(jī)值;ri是代表讀寫器的身份,攻擊者可以通過它來知道是哪個讀寫器,但對于追蹤目標(biāo)標(biāo)簽沒有任何幫助。f(·)是單向函數(shù),所以A通過r也不能獲得比隨機(jī)數(shù)更多的信息。
注:ri的明文傳輸,確實(shí)泄漏了讀寫器Ri的身份,但本文討論的追蹤攻擊對象是查詢目標(biāo)標(biāo)簽。同時要想實(shí)現(xiàn)身份信息的秘密傳輸,只有加密算法可以做到。為保證所提協(xié)議的輕量級,我們并不考慮加密算法的使用。
(2)冒充攻擊:由于h(ri,kj)和kj的機(jī)密性,同時根據(jù)第 4節(jié)的形式化證明可以知道,如果r,ri, timenew和t能通過驗(yàn)證,就可以說明對方是合法的。也就是說,在提出的協(xié)議中,公開傳輸值有任何改動導(dǎo)致不匹配,就會引起協(xié)議失敗,冒充攻擊是不可能成功的。
(3)重放攻擊:本文提出的協(xié)議中,采用時間戳timenew來抵抗重放攻擊。重放以前的消息必然導(dǎo)致時間戳驗(yàn)證不能通過,引起協(xié)議的失敗。所以,重放攻擊對本協(xié)議不構(gòu)成威脅。
注:由于標(biāo)簽的低成本和計(jì)算能力的限制,放置同步時鐘是不可能的。所以我們采用在標(biāo)簽內(nèi)存儲時間戳的方式,比較條件為 timenew>timeold,認(rèn)證成功則實(shí)施 timenew→timeold操作;否則不變。
(4)拒絕服務(wù)攻擊:拒絕服務(wù)攻擊一般是指攻擊者試圖實(shí)施中間人攻擊,為了引起Ri和Tj之間秘密值不同步,導(dǎo)致以后協(xié)議交互的失敗。但是,在我們提出的協(xié)議中,Ri和Tj在每次會話中,不需要進(jìn)行密鑰更新。因此,本文協(xié)議能安全抵抗拒絕服務(wù)攻擊。
(5)標(biāo)簽追蹤攻擊:追蹤就是攻擊者能將Tj與其它標(biāo)簽區(qū)分開來。攻擊者有兩種方式來實(shí)現(xiàn)對目標(biāo)標(biāo)簽Tj的追蹤。(a)竊聽Ri和Tj之間的所有通信;(b)利用竊聽到的信息,對Tj實(shí)施重放攻擊。對于第 1種攻擊,我們的協(xié)議是安全的,因?yàn)楣粽卟豢赡苊看味寄茴A(yù)測到時間戳 timenew和Tj的回復(fù)值t。因此,攻擊者不能將Tj與其它標(biāo)簽進(jìn)行區(qū)分;在另一種攻擊中,攻擊者可能竊聽到了Ri和Tj之間一次通信的查詢挑戰(zhàn)和響應(yīng),然后攻擊者重復(fù)廣播查詢挑戰(zhàn)。由于時間戳的使用,使得Tj不會對攻擊者的挑戰(zhàn)做出回應(yīng)。
從以上討論的關(guān)于安全的5個方面,我們將提出的協(xié)議與文獻(xiàn)[1],文獻(xiàn)[7],文獻(xiàn)[6]的協(xié)議進(jìn)行比較(表2)。通過比較可以發(fā)現(xiàn),我們的協(xié)議具有最好的安全性質(zhì),是唯一滿足了所有安全需求的協(xié)議。
表2 協(xié)議安全性比較
標(biāo)簽查詢系統(tǒng)中有兩類實(shí)體:標(biāo)簽和讀寫器,所以在效率方面我們主要考慮:查詢協(xié)議的交互輪數(shù)、單個標(biāo)簽的計(jì)算量和讀寫器的計(jì)算量3部分。文獻(xiàn)[1]和文獻(xiàn)[6]使用概率性回復(fù)來抵抗標(biāo)簽追蹤攻擊,使得讀寫器的計(jì)算量與標(biāo)簽數(shù)成正比,查詢效率較低。文獻(xiàn)[7]采用加密算法和密鑰更新的方法,來實(shí)現(xiàn)協(xié)議的安全。對標(biāo)簽的計(jì)算能力和硬件都提出了很高的要求。我們提出的協(xié)議采用簡單的2輪交互認(rèn)證,對于每次查詢讀寫器只需要 2次 Hash運(yùn)算。
表3總結(jié)了我們提出協(xié)議的效率,其中,CH為一次Hash運(yùn)算的計(jì)算花費(fèi);CE為一次加密運(yùn)算的計(jì)算花費(fèi);N為標(biāo)簽總個數(shù);λ為標(biāo)簽回復(fù)概率值。通過比較可以發(fā)現(xiàn),在4個標(biāo)簽查詢協(xié)議中,我們的協(xié)議是計(jì)算代價要求最低的。
表3 協(xié)議效率比較
本文首先對標(biāo)簽查詢問題的研究現(xiàn)狀進(jìn)行了分析,然后提出了一個無后臺服務(wù)器的RFID標(biāo)簽查詢協(xié)議。GNY邏輯分析表明,從該協(xié)議的假設(shè)出發(fā)經(jīng)協(xié)議運(yùn)行可以達(dá)到預(yù)先設(shè)定的協(xié)議目標(biāo)。分析顯示,本文提出的協(xié)議在滿足各種安全需求的同時,具有很高的運(yùn)行效率。同時,由于標(biāo)簽僅需要一個Hash函數(shù)電路來實(shí)現(xiàn)隱私保護(hù),成本較低,更適用于資源緊張的無源標(biāo)簽。協(xié)議應(yīng)用場合可以是在圖書館進(jìn)行圖書查詢,也可以是在奢侈品零售店進(jìn)行商品查詢。
然而,目前所提出的標(biāo)簽查詢協(xié)議,基本上都是以標(biāo)簽的身份作為查詢依據(jù),使得這些協(xié)議只能用于一對一的環(huán)境中。如果一個讀寫器想一次查詢滿足某一條件的所有標(biāo)簽是否存在,那么目前的協(xié)議無法直接使用。所以,下一步研究內(nèi)容是一對多的標(biāo)簽查詢協(xié)議機(jī)制和基于某些特征的標(biāo)簽查詢機(jī)制。
[1]Tan C C, Sheng B, and Li Q. Secure and serverless RFID authentication and search protocols[J].IEEE Transactions on WirelessCommunications, 2008, 7(4): 1400-1407.
[2]Kulseng L, Yu Z, Wei Y,et al.. Lightweight secure search protocols for low-cost RFID systems[C]. Proceedings of the 29th IEEE International Conference on Distributed Computing Systems, IEEE Computer Society, Washington,DC, USA, 2009: 40-48.
[3]Chao L, Li H, Ma J F,et al.. Vulnerability analysis of lightweight secure search protocols for low-cost RFID systems[J].International Journal of Radio Frequency Identification Technology and Applications, 2012, 1(4): 3-12.
[4]Kim Z, Kim J, Kim K,et al.. Untraceable and serverless RFID authentication and search protocols[C].2011 Ninth IEEE International Symposium on Busan, Parallel and Distributed Processing with Applications Workshops(ISPAW), Montreal, Canada, 2011: 278-283.
[5]Lin I C, Tsaur S C, and Chang K P. Lightweight and serverless RFID authentication and search protocol [C].Proceedings of the 2009 Second International Conference on Computer and Electrical Engineering, IEEE, New York, 2009,2: 95-99.
[6]Lee C F, Chien H Y, and Laih C S. Server-less RFID authentication and searching protocol with enhanced security[J].International Journal of Communication System, 2012,25(3): 376-385.
[7]Zuo Y J. Secure and private search protocols for RFID systems[J].Information System Front, 2010, 12(5): 507-519.
[8]曹崢, 鄧淼磊. 通用可組合的RFID搜索協(xié)議[J]. 華中科技大學(xué)學(xué)報(bào)(自然科學(xué)版), 2011, 39(4): 56-59.
Cao Z and Deng M L. Universally composable search protocol for RFID[J].Journal of Huazhong University of Science and Technology(Natural Science Edition), 2011, 39(4): 56-59.
[9]Hoque M E, Rahman F, and Ahamed S L. S-search: finding RFID tags using scalable and secure search protocol[C].Proceedings of the 2010 ACM Symposium on Applied Computing(SAC), Sierre, Switzerland, 2010: 439-443.
[10]Yoon H S and Youm H Y. An anonymous search protocol for RFID systems[J].Journal of Convergence Information Technology, 2011, 8(6): 44-50.
[11]Gong L, Needham R, and Yahalom R. Reasoning about belief in cryptographic protocols[C]. Proceedings of the 1990 IEEE Symposium on Research in Security and Privacy, Oakland,California, 1990: 234-248.