RFID隱私保護(hù)與成本是相互制約的,如何在低成本的被動標(biāo)簽上提供確保隱私安全的增強技術(shù)面臨諸多挑戰(zhàn)。現(xiàn)有的RFID隱私增強技術(shù)可以分為兩大類:一類是通過物理方法阻止標(biāo)簽與閱讀器通信的隱私增強技術(shù),即物理安全機(jī)制;另一類是通過邏輯方法增加標(biāo)簽安全機(jī)制的隱私增強技術(shù),即邏輯安全機(jī)制。RFID的邏輯機(jī)制主要通過基于Hash函數(shù)的安全認(rèn)證協(xié)議來實現(xiàn)。
通過對RFID隱私安全威脅的分析可知,RFID隱私威脅的根源是RFID標(biāo)簽的唯一性和標(biāo)簽數(shù)據(jù)的易獲得性。為了保證RFID的隱私安全,防止隱私攻擊,可以采用以下RFID隱私保護(hù)方法。
保證RFID標(biāo)簽的ID匿名性。標(biāo)簽?zāi)涿裕╝nonymity)是指標(biāo)簽響應(yīng)的消息不會暴露出標(biāo)簽身份的任何可用信息。加密是保護(hù)標(biāo)簽響應(yīng)的方法之一。盡管標(biāo)簽的數(shù)據(jù)可被加密,但如果加密的數(shù)據(jù)在每輪協(xié)議中都固定,則攻擊者仍然能夠通過唯一的標(biāo)簽標(biāo)識分析出標(biāo)簽的身份,這是因為攻擊者可以通過固定的加密數(shù)據(jù)來確定每一個標(biāo)簽。因此,使標(biāo)簽信息隱蔽是確保標(biāo)簽ID匿名的重要方法。
保證RFID標(biāo)簽的ID隨機(jī)性。即便對標(biāo)簽ID信息進(jìn)行加密,但是因為標(biāo)簽ID是固定的,所以未授權(quán)掃描也將侵害標(biāo)簽持有者的定位隱私。如果標(biāo)簽的ID為變量,標(biāo)簽每次輸出都不同,則隱私侵犯者不可能通過固定輸出獲得同一標(biāo)簽的信息,從而可以在一定范圍內(nèi)解決ID追蹤問題和信息推斷的隱私安全威脅問題。
保證RFID標(biāo)簽的前向安全性。所謂RFID標(biāo)簽的前向安全,是指隱私侵犯者即便獲得了標(biāo)簽內(nèi)存儲的加密信息,也不能通過回溯當(dāng)前信息獲得標(biāo)簽的歷史數(shù)據(jù)。也就是說,隱私侵犯者不能通過聯(lián)系當(dāng)前數(shù)據(jù)和歷史數(shù)據(jù)對標(biāo)簽進(jìn)行分析以獲得消費者的隱私信息。
增強RFID標(biāo)簽的訪問控制性。RFID標(biāo)簽的訪問控制,是指標(biāo)簽可以根據(jù)需要確定讀取RFID標(biāo)簽數(shù)據(jù)的權(quán)限。通過訪問控制,可以避免未授權(quán)RFID閱讀器的掃描,并保證只有經(jīng)過授權(quán)的RFID閱讀器才能獲得RFID標(biāo)簽數(shù)據(jù)及相關(guān)隱私數(shù)據(jù)。訪問控制對于實現(xiàn)RFID標(biāo)簽隱私保護(hù)具有非常重要的作用。
1、RFID的物理安全機(jī)制
通過無線技術(shù)手段進(jìn)行RFID隱私保護(hù)是一種物理性手段,可以阻擾RFID閱讀器獲取標(biāo)簽數(shù)據(jù),避免RFID標(biāo)簽數(shù)據(jù)被閱讀器非法獲得。無線隔離RFID標(biāo)簽的方法包括電磁屏蔽方法、無線干擾方法、可變天線方法等。
(1)基于電磁屏蔽的方法
利用電磁屏蔽原理,把RFID標(biāo)簽置于由金屬薄片制成的容器中,無線電信號將被屏蔽,從而可使閱讀器無法讀取標(biāo)簽信息,標(biāo)簽也無法向閱讀器發(fā)送信息。最常使用的電磁屏蔽容器就是法拉第網(wǎng)罩。法拉第網(wǎng)罩可以有效屏蔽電磁波,這樣無論是外部信號還是內(nèi)部信號,都將無法穿過。對被動標(biāo)簽來說,在沒有接收到查詢信號的情況下就沒有能量和動機(jī)來發(fā)送相應(yīng)的響應(yīng)信息;對主動標(biāo)簽來說,它的信號無法穿過法拉第網(wǎng)罩,因此也無法被攻擊者攜帶的閱讀器接收到。這種方法的缺點是在使用標(biāo)簽時需要把標(biāo)簽從法拉第網(wǎng)罩中取出,這就失去了使用RFID標(biāo)簽的便利性。另外,如果要提供廣泛的物聯(lián)網(wǎng)服務(wù),不能總是讓標(biāo)簽處于屏蔽狀態(tài)中,而是需要在更多的時間內(nèi)使標(biāo)簽?zāi)軌蚺c閱讀器處于自由通信的狀態(tài)。
(2)基于無線干擾的方法
能主動發(fā)出無線電干擾信號的設(shè)備可以使其附近的RFID閱讀器無法正常工作,從而達(dá)到保護(hù)隱私的目的。這種方法的缺點在于可能會產(chǎn)生非法干擾,使其附近的其他RFID系統(tǒng)甚至其他無線系統(tǒng)都不能正常工作。
(3)基于可變天線的方法
利用RFID標(biāo)簽物理結(jié)構(gòu)上的特點,IBM公司推出了可分離的RFID標(biāo)簽。其基本設(shè)計理念是使無源標(biāo)簽上的天線和芯片可以方便地被拆分。這種可分離的設(shè)計可以使消費者改變標(biāo)簽的天線長度,從而大大縮減標(biāo)簽的讀取距離,使用時,手持的閱讀器設(shè)備必須要緊貼標(biāo)簽才可以讀取到信息。這樣一來,沒有用戶本人許可,閱讀器設(shè)備就不可能通過遠(yuǎn)程方式獲取信息。縮短天線后,標(biāo)簽本身還是可以運行的,這樣就方便了貨物的售后服務(wù)和產(chǎn)品退貨時的識別。但是,可分離標(biāo)簽的制作成本比較高,標(biāo)簽制造的可行性有待進(jìn)一步研究。
以上這些安全機(jī)制是以犧牲RFID標(biāo)簽的部分功能為代價來滿足隱私保護(hù)要求的。這些方法都可以在一定程度上起到保護(hù)低成本的RFID標(biāo)簽的目的,但是由于驗證、成本和法律等的約束,物理安全機(jī)制仍存在著各種各樣的缺點。
2、RFID的邏輯安全機(jī)制
RFID的邏輯安全機(jī)制主要包括改變唯一性方法、隱藏信息方法和同步方法。
(1)改變唯一性方法
改變RFID標(biāo)簽輸出信息的唯一性是指標(biāo)簽在每次響應(yīng)RFID閱讀器的請求時,返回不同的RFID序列號。不論是跟蹤攻擊還是羅列攻擊,很大程度上是由RFID標(biāo)簽每次返回的序列號都相同所致。因此,解決RFID隱私安全問題的另一個方法是改變序列號的唯一性。改變RFID標(biāo)簽數(shù)據(jù)需要技術(shù)手段支持,根據(jù)所采用技術(shù)的不同,主要方法包括基于標(biāo)簽重命名的方法和基于密碼學(xué)的方法。
1)基于標(biāo)簽重命名的方法是指改變RFID標(biāo)簽響應(yīng)閱讀器請求的方式,每次返回一個不同的序列號。例如,在購買商品后,可以去掉商品標(biāo)簽的序列號而保留其他信息(如產(chǎn)品類別碼等),也可以為標(biāo)簽重新寫入一個序列號。由于序列號發(fā)生了改變,因此攻擊者無法通過簡單的攻擊來破壞隱私性。但是,與銷毀等隱私保護(hù)方法類似,序列號改變后帶來的售后服務(wù)等問題需要借助其他技術(shù)手段來解決。
例如,下面的方案可以讓顧客暫時更改標(biāo)簽ID:當(dāng)標(biāo)簽處于公共狀態(tài)時,存儲在芯片只讀存儲器(Read-Only Memory,ROM)里的ID可以被閱讀器讀取;當(dāng)顧客想要隱藏ID信息時,可以在芯片的隨機(jī)存取存儲器(Random Access Memory,RAM)中輸入一個臨時ID;當(dāng)隨機(jī)存取存儲器中存儲有臨時ID時,標(biāo)簽會利用這個臨時ID回復(fù)閱讀器的詢問;只有把隨機(jī)存取存儲器重置,標(biāo)簽才會顯示其真實ID。這個方法給顧客使用RFID技術(shù)帶來了額外的負(fù)擔(dān),同時臨時ID的更改也存在潛在的安全問題。
2)基于密碼學(xué)的方法是指加解密等方法,此類方法確保RFID標(biāo)簽序列號不被非法讀取。例如,采用對稱加密算法和非對稱加密算法對RFID標(biāo)簽數(shù)據(jù)以及RFID標(biāo)簽和閱讀器之間的通信進(jìn)行加密,可使一般攻擊者由于不知道密鑰而難以獲得數(shù)據(jù)。同樣,在RFID標(biāo)簽和閱讀器之間進(jìn)行認(rèn)證,也可以避免非法閱讀器獲得RFID標(biāo)簽的數(shù)據(jù)。
例如,最典型的密碼學(xué)方法是利用Hash函數(shù)給RFID標(biāo)簽加鎖。該方法使用metaID來代替標(biāo)簽的真實ID,當(dāng)標(biāo)簽處于封鎖狀態(tài)時,它將拒絕顯示電子編碼信息,只返回使用Hash函數(shù)產(chǎn)生的散列值。只有發(fā)送正確的密鑰或電子編碼信息時,標(biāo)簽才會在利用Hash函數(shù)確認(rèn)后解鎖。哈希鎖(Hash-lock)是一種抵制標(biāo)簽未授權(quán)訪問的隱私增強型協(xié)議,是由麻省理工學(xué)院和Auto-ID Center在2003年共同提出的。整個協(xié)議只需要采用單向密碼學(xué)Hash函數(shù)即可實現(xiàn)簡單的訪問控制,因此可以保證較低的標(biāo)簽成本。使用哈希鎖機(jī)制的標(biāo)簽有鎖定和非鎖定兩種狀態(tài)。在鎖定狀態(tài)下,標(biāo)簽使用metaID響應(yīng)所有的查詢;在非鎖定狀態(tài)下,標(biāo)簽向閱讀器提供自己的標(biāo)識信息。
由于這種方法較為直接和經(jīng)濟(jì),因此受到了普遍關(guān)注。但是協(xié)議采用靜態(tài)ID機(jī)制,metaID保持不變,且ID以明文形式在不安全的信道中傳輸,因此非常容易被攻擊者竊取。攻擊者因而可以計算或者記錄(metaID,key,ID)這一組合,并在與合法的標(biāo)簽或者閱讀器交互時假冒閱讀器或者標(biāo)簽,實施欺騙。哈希鎖協(xié)議并不安全,因此出現(xiàn)了各種改進(jìn)的算法,如隨機(jī)哈希鎖(Randomized Hash Lock)、哈希鏈(Hash Chain Scheme)協(xié)議等。
另外,為防止RFID標(biāo)簽和閱讀器之間的通信被非法監(jiān)聽,可以通過公鑰密碼體制實現(xiàn)重加密(Re-encryption),即對已加密的信息進(jìn)行周期性再加密,這樣因標(biāo)簽和閱讀器間傳遞的加密ID信息變化很快,所以標(biāo)簽電子編碼信息很難被盜竊,非法跟蹤也很困難。但是,由于RFID標(biāo)簽資源有限,因此使用公鑰加密RFID標(biāo)簽的機(jī)制比較少見。
近年來,隨著計算機(jī)技術(shù)的發(fā)展,出現(xiàn)了一些新的RFID隱私保護(hù)方法,包括基于物理不可克隆函數(shù)(Physical Unclonable Function,PUF)的方法、基于掩碼的方法、基于策略的方法、基于中間件的方法等。
從安全的角度來看,基于密碼學(xué)的方法可以從根本上解決RFID隱私問題,但是由于成本和體積的限制,在普通RFID標(biāo)簽上幾乎難以實現(xiàn)典型的加密方法(如數(shù)據(jù)加密標(biāo)準(zhǔn)算法)。因此,基于密碼學(xué)的方法雖然具有較強的安全性,但給成本等帶來了巨大的挑戰(zhàn)。
(2)隱藏信息方法
隱藏RFID標(biāo)簽是指通過某種保護(hù)手段,避免RFID標(biāo)簽數(shù)據(jù)被閱讀器獲得,或者阻擾閱讀器獲取標(biāo)簽數(shù)據(jù)。隱藏RFID標(biāo)簽的技術(shù)包括基于代理的技術(shù)、基于距離測量的技術(shù)、基于阻塞的技術(shù)等。
1)基于代理的RFID標(biāo)簽隱藏技術(shù)。在基于代理的RFID標(biāo)簽隱藏技術(shù)中,被保護(hù)的RFID標(biāo)簽與閱讀器之間的數(shù)據(jù)交互不是直接進(jìn)行的,而是需要借助一個第三方代理設(shè)備(如RFID閱讀器)。因此,當(dāng)非法閱讀器試圖獲得標(biāo)簽的數(shù)據(jù)時,實際的響應(yīng)是由第三方代理設(shè)備發(fā)送的。由于代理設(shè)備功能比一般的標(biāo)簽強大,因此可以實現(xiàn)加密、認(rèn)證等很多在標(biāo)簽上無法實現(xiàn)的功能,從而增強隱私保護(hù)?;诖淼姆椒梢詫FID標(biāo)簽的隱私起到很好的保護(hù)作用,但是由于需要額外的設(shè)備,因此成本較高,實現(xiàn)起來也較為復(fù)雜。
2)基于距離測量的RFID標(biāo)簽隱藏技術(shù)。基于距離測量的RFID標(biāo)簽隱藏技術(shù)是指RFID標(biāo)簽測量自己與閱讀器之間的距離,依據(jù)距離的不同而返回不同的標(biāo)簽數(shù)據(jù)。一般來說,為了隱藏自己的攻擊意圖,攻擊者與被攻擊者之間需要保持一定的距離,而合法用戶(如用戶自己)可以近距離獲取RFID標(biāo)簽數(shù)據(jù)。因此,如果標(biāo)簽可以知道自己與閱讀器之間的距離,則可以認(rèn)為距離較遠(yuǎn)的閱讀器具有攻擊意圖的可能性較大,因此可以返回一些無關(guān)緊要的數(shù)據(jù);而當(dāng)收到近距離的閱讀器的請求時,則返回正常數(shù)據(jù)。通過這種方法,可以達(dá)到隱藏RFID標(biāo)簽的目的?;诰嚯x測量的標(biāo)簽隱藏技術(shù)對RFID標(biāo)簽有很高的要求,而且要實現(xiàn)距離的精確測量也非常困難。此外,如何選擇合適的距離作為評判合法閱讀器和非法閱讀器的標(biāo)準(zhǔn),也是一個非常復(fù)雜的問題。
3)基于阻塞的RFID標(biāo)簽隱藏技術(shù)。基于阻塞的RFID標(biāo)簽隱藏技術(shù)是指通過某種技術(shù),妨礙RFID閱讀器對標(biāo)簽數(shù)據(jù)的訪問。阻塞的方法可以通過軟件實現(xiàn),也可以通過一個RFID設(shè)備來實現(xiàn)。此外,通過發(fā)送主動干擾信號,也可以阻礙閱讀器獲得RFID標(biāo)簽數(shù)據(jù)。與基于代理的標(biāo)簽隱藏方法相似,基于阻塞的標(biāo)簽隱藏方法成本高、實現(xiàn)復(fù)雜,而且如何識別合法閱讀器和非法閱讀器也是一個難題。
(3)同步方法
閱讀器可以將標(biāo)簽所有可能的回復(fù)(表示為一系列的狀態(tài))預(yù)先計算出來,并存儲到后臺的數(shù)據(jù)庫中,在收到標(biāo)簽的回復(fù)時,閱讀器只要直接從后臺數(shù)據(jù)庫中查找和匹配,即可達(dá)到快速認(rèn)證標(biāo)簽的目的。在使用這種方法時,閱讀器需要知道標(biāo)簽所有可能的狀態(tài),即和標(biāo)簽保持狀態(tài)的同步,以此來保證標(biāo)簽的回復(fù)可以根據(jù)其狀態(tài)預(yù)先進(jìn)行計算和存儲,因此這種方法被稱為同步方法。同步方法的缺點是攻擊者可以攻擊一個標(biāo)簽任意多次,使標(biāo)簽和閱讀器失去彼此的同步狀態(tài),從而破壞同步方法的基本條件。具體來說,攻擊者可以變相地“殺死”某個標(biāo)簽或者讓這個標(biāo)簽的行為與沒有受到攻擊的標(biāo)簽不同,從而識別這個標(biāo)簽并實施跟蹤。同步方法的另一個問題是標(biāo)簽的回復(fù)是可以預(yù)先計算并存儲后以備匹配的,與回放的方法相同。攻擊者可以記錄標(biāo)簽的一些回復(fù)信息數(shù)據(jù)并回放給第三方,以達(dá)到欺騙第三方閱讀器的目的。
3、RFID的綜合安全機(jī)制
RFID的物理安全與邏輯安全相結(jié)合的綜合安全機(jī)制主要包括改變RFID標(biāo)簽關(guān)聯(lián)性方法。
所謂改變RFID標(biāo)簽與具體目標(biāo)的關(guān)聯(lián)性,就是取消RFID標(biāo)簽與其所屬依附物品之間的聯(lián)系。例如,購買帶有RFID標(biāo)簽的錢包后,該RFID標(biāo)簽與錢包之間就建立了某種聯(lián)系。而改變它們之間的關(guān)聯(lián),就是采用技術(shù)和非技術(shù)手段,取消它們之間已經(jīng)建立的關(guān)聯(lián)(如將RFID標(biāo)簽丟棄)。改變RFID標(biāo)簽與具體目標(biāo)的關(guān)聯(lián)性的基本方法包括丟棄、銷毀和睡眠。
(1)丟棄
丟棄(discarding)是指將RFID標(biāo)簽從物品上取下來后遺棄。丟棄不涉及技術(shù)手段,因此簡單、易行,但是丟棄的方法存在很多問題:第一,采用RFID技術(shù)的目的不僅是銷售,還包含售后、維修等環(huán)節(jié),因此,如果簡單地丟棄RFID標(biāo)簽后,在退貨、換貨、維修、售后服務(wù)等方面都可能會面臨很多問題;第二,丟棄后的RFID標(biāo)簽會面臨前面所述的垃圾收集威脅,因此并不能解決隱私問題;第三,如果處理不當(dāng),RFID標(biāo)簽的丟棄會帶來環(huán)保等問題。
(2)銷毀
銷毀(killing)是指讓RFID標(biāo)簽進(jìn)入永久失效狀態(tài)。銷毀可以是毀壞RFID標(biāo)簽的電路,也可以是銷毀RFID標(biāo)簽的數(shù)據(jù)。例如,如果破壞了RFID標(biāo)簽的電路,則該標(biāo)簽將無法向RFID閱讀器返回數(shù)據(jù),此外,即便對其進(jìn)行物理分析也可能無法獲得相關(guān)數(shù)據(jù)。銷毀需要借助技術(shù)手段,一般需要借助特定的設(shè)備來實現(xiàn),對普通用戶而言可能存在一定的困難,因此實現(xiàn)難度較大。與丟棄相比,由于標(biāo)簽已經(jīng)無法繼續(xù)使用,因此不存在垃圾收集等威脅。但在標(biāo)簽被銷毀后,也會面臨售后服務(wù)等問題。
銷毀命令機(jī)制是一種從物理上毀壞標(biāo)簽的方法。RFID標(biāo)準(zhǔn)設(shè)計模式中包含銷毀命令,執(zhí)行銷毀命令后,標(biāo)簽所有的功能都將喪失,從而使其不會響應(yīng)攻擊者的掃描行為,進(jìn)而防止攻擊者對標(biāo)簽以及標(biāo)簽的攜帶者進(jìn)行跟蹤。例如,在超市購買完商品后,即在閱讀器獲取完標(biāo)簽的信息并經(jīng)過后臺數(shù)據(jù)庫的認(rèn)證操作之后,就可以“殺死”消費者所購買的商品上的標(biāo)簽,從而起到保護(hù)消費者隱私的作用。完全“殺死”標(biāo)簽可以完全防止攻擊者的掃描和跟蹤,但是這種方法也破壞了RFID標(biāo)簽的功能,無法讓消費者繼續(xù)享受以RFID標(biāo)簽為基礎(chǔ)的物聯(lián)網(wǎng)服務(wù)。例如,如果商品被售出后標(biāo)簽上的信息無法再次使用,則售后服務(wù)以及與此商品相關(guān)的其他服務(wù)項目也就無法進(jìn)行了。另外,如果銷毀命令的識別序列號(PIN)泄露,則攻擊者就可以使用這個PIN來“殺死”超市中商品上的RFID標(biāo)簽,然后就可以將對應(yīng)的商品帶走而不會被察覺。
(3)睡眠
睡眠(sleeping)是指通過技術(shù)或非技術(shù)手段讓標(biāo)簽進(jìn)入暫時失效狀態(tài),當(dāng)需要的時候可以重新激活標(biāo)簽。這種方法具有顯著的優(yōu)點:由于可以重新激活,因此避免了售后服務(wù)等需要借助于RFID標(biāo)簽的問題,而且也不會存在垃圾收集威脅和環(huán)保等問題。但與銷毀一樣,需要借助于專業(yè)人員和專業(yè)設(shè)備才能實現(xiàn)標(biāo)簽睡眠。