◆葛云峰
(西安電子科技大學通信工程學院 陜西 710000)
射頻識別(RFID)技術是一種利用射頻通信實現的自動的非接觸式[1]的識別技術,是物聯網的關鍵技術之一。相比于傳統的接觸式識別技術,如二維碼、磁卡等,RFID技術具有信息讀取方便、高精度識別、使用壽命長、受現場因素干擾小等諸多優點。因此,RFID技術被廣泛應用于物聯網、交通、醫療、自動化控制等領域,并且發揮著舉足輕重的作用。由此可見,RFID技術早已融入人們的日常生活,成為生產生活的重要組成部分。
RFID系統通常包含電子標簽、讀寫器和后臺服務器三部分。現對這三部分的基本結構做簡要介紹:
(1)電子標簽:用于存儲與用戶相關的數據信息。一般由射頻芯片和天線構成,具有全球唯一標識。根據標簽的能量來源,可以將其分為三類:被動標簽、半被動標簽以及主動標簽。
(2)讀寫器:讀寫器由射頻模塊、讀寫模塊和天線三部分組成。其主要功能包括讀取、寫入身份信息和防止碰撞等。讀寫器模塊應具有很強的計算能力和豐富的存儲空間。
(3)后臺服務器:存儲讀寫器、標簽的信息和其他方面的信息,為標簽和讀寫器之間的認證過程提供服務。它管理著標簽ID與被識別對象信息的映射關系,也具有較強的數據存儲和處理能力。后臺服務器與閱讀器都有足夠的計算和存儲能力,能夠進行相對復雜的加密過程,所以,可以認為閱讀器與服務器之間的通信是安全的。
此外,還有一套新的結構一一基于云的RFID系統,它由標簽,閱讀器和云端組成。閱讀器不一定是固的方式它可以通過有線或者無線的方式連接服務云端。云作為RFID系統的一個新平臺,應用于RFID安全認證的研究還很少,基于云的RFID系統所特有的安全和隱私需求很少被考慮。
通常情況下,RFID系統由后端服務器、閱讀器和標簽三部分把組成,它的工作原理如圖1所示:

圖1 RFID系統結構圖
RFID系統工作時,首先,標簽在接收到閱讀器發出的射頻后,其自身會形成感生能量而進入工作狀態。激活的標簽將存儲在自身的編碼信息傳遞到閱讀器,然后再將其轉發給后臺服務器。后臺服務器收到這些數據后在數據庫中進行標簽編號信息查詢,查詢到對應的信息后再進行相關操作,否則,終止操作[2]。
雖然RFID技術具有許多優勢,但是其系統仍然存在諸多隱患,這些隱患造成的信息泄露等安全問題嚴重制約著RFID技術的發展和普及。
(1)傳遞信息的安全性問題:由于閱讀器和終端服務器之間是通過互聯網連接,信息在互聯網這個自由的信道中傳輸時可能會被竊聽者修改、阻礙等,使傳遞信息的保密性和可信度有所下降;
(2)硬件資源問題:RFID系統的硬件資源較少,導致其不能承載一些安全性較高而且穩健的傳統密碼學算法;并且,它的計算能力也因為硬件資源少而受限,系統的加密性較弱;
(3)成本問題:RFID技術如果使用目前成熟的加密體系,就勢必會增加制造成本,而過高的成本不利于RFID技術的推廣發展。
因而,如何在保證RFID系統低成本的前提下,設計出保證無線通信安全的方法成為擺在眾多科學研究者面前的一大難題。現如今,研究者的工作重心主要轉向輕量級安全機制研究、標簽等硬件成本削減兩個方面。
本節將簡要介紹RFID系統可能受到的不同種類的攻擊模式:然后針對目前存在的問題,結合大量文獻資料,對其中可行的密碼學算法進行綜述,并提出相應的解決方案。
李婭麗(2010)指出攻擊者的主要意圖一般有如下幾種:一是竊取用戶信息;二是偽造修改RFID系統中傳輸的信息;三是惡意破壞RFID系統的正常運行,使系統崩潰等。而攻擊者主要采取的攻擊模式列舉如下[3]:
(1)物理攻擊模式:用物理方法去除標簽的封裝,然后通過竊聽總線以獲得用戶敏感信息,也可以通過電磁干擾等手段進行攻擊;
(2)竊聽攻擊:竊聽者在閱讀器與標簽之間的無線信道上實施竊聽,以此侵犯用戶隱私,這也是最常見的攻擊手段;
(3)異步攻擊:異步攻擊是指攻擊者向閱讀器或者標簽不斷地發送信號消息,使得閱讀器或者標簽處理能力過載而導致合法消息遭到阻塞,合法消息被阻塞后導致了閱讀器和標簽雙方更新密鑰的不同步而導致標簽再不能通過認證的攻擊行為[4];
(4)重放攻擊:重放攻擊是指攻擊者在監聽并獲取用戶的標簽信息之后,假冒用戶身份并在通信中重新發送,以此欺騙后臺服務器;
(5)拒絕攻擊:拒絕攻擊是攻擊者向標簽或者閱讀器不斷發送信息,超出標簽或閱讀器的處理能力,導致用戶傳遞的合法信息被阻塞的后果。然而,這種攻擊結束后,RFID系統可以恢復到原來的工作狀態,所以該攻擊模式不會造成十分嚴重的后果。
以上是對RFID系統攻擊模式的簡要綜述。由此可見,RFID系統的安全性時時刻刻都遭受著威脅。構建一套完整的RFID安全體系,提出簡單可靠的密碼學算法是十分必要的。
從上一小節可以看出,構建一個安全可靠的RFID系統還需要滿足很多條件。李遼陽(2017)[5]指出,RFID系統應具有以下基本特征:機密性、完整性、可用性、真實性、隱私性。這些基本特征指明了RFID系統的安全需求,為眾多安全性協議的提出指明了方向。國內外許多專家學者從設計新算法的角度入手,針對不同的安全性問題,提出了一些精簡且有效的安全協議,現綜述如下:
郭奕昱(2015)[6]提出了一種輕量級隱私保護的RFID群組,證明協議LPGP,在證明協議安全需求的前提下,只利用密碼學中的hash函數和偽隨機發生器,時時刻刻都對標簽和閱讀器進行認證,并降低了運算復雜度。但是,考慮到已公開的哈希算法,攻擊者可以據此進行偽造攻擊獲取標簽密鑰信息,從而破解會話秘密標識的情形,上述算法存在漏洞。
李倩(2018)[7]在研究此類問題過后,提出了一種基于輪轉函數的輕量級RFID群組標簽證明協議一一SULGP。此協議在無須可信第三方的驗證支持的情況下,實現了標簽-讀寫器-數據庫三方完整認證過程;并且,針對實際情況中需要進行擴展對多個標簽同時證明存在后對組標簽進行完整的所有權轉移的問題,利用二次剩余算法,提出一種滿足UC安全的RFID組標簽所有權轉移協議一一SGOTP。該協議也無須可信第三方驗證支持,而且滿足群組標簽所有權轉移前、后向隱私安全條件。對于該設計的低成本性,請參考第二節內容。
Kan Xiao(2014)[8]基于PUF算法,利用穩定位生成密鑰,提出一種基于鄰近位、穩定位選擇算法,該算法用于檢驗、篩選穩定位,一定程度上提升了PUF算法對溫度的穩定性。Hosey(2014)對PUF算法進行改進,先設定閾值,然后通過設置鄰近窗口大小和鄰近穩定位個數對待選位篩選,篩選出那些滿足閾值的位,再將這些位作為密鑰。這一做法極大地提升了RFID系統的穩定性。詹蘭馨(2017)針對物理攻擊模式,認為利用芯片“指紋"認證的PUF技術來解決該問題,并針對一些自身攜帶SRAM的RFID標簽進行安全機制研究,利用標簽SRAM實現PUF;針對實際運用中SRAM上電初始值會受外界環境因素的影響而使某些位發生偏轉導致響應變得不穩定的問題,提出PUF模糊算法,而驗證方面則通過平均權重與穩定性閾值進行比對,提升了算法效率。設計基于PUF的RFID安全認證協議,并使用安全協議的邏輯分析證明方法GNY邏輯進行了證明,可以認為該協議是具有良好的安全性能的。
馬昌社(2010)指出,保證RFID前向隱私的充分必要條件是標簽具有計算偽隨機數發生器的能力。馬昌社等人研究了前向隱私安全的RFID認證協議設計和標簽計算的復雜度,設計了一種優化的協議——SFP[9]。Eikemeier(2010)[10-11]提出有序聚合消息認證碼算法,該算法可以為系統提供隱私保障。辛偉(2013)[12]在馬昌社等人的成果上將協議由單向認證協議擴展為雙向認證協議,依舊采用偽隨機數發生器作為密碼學元素,并結合有序聚合消息認證碼算法,提出了PSAM協議。與此同時,針對標簽需要額外存儲隨機數、只有最終的檢查者才能對標簽經過的路徑進行檢查等問題,改進了PSAM協議,將其與有許多重簽名方案相結合,提出PCOMS協議[13]“該協議將”供應鏈”的路徑檢查方案擴展為由指定的讀寫器進行檢查,增加了靈活性,并且很好地保護了用戶的隱私。
目前,時分多址(TDMA)算法是RFD系統防碰撞問題的常用方法,以TDMA算法為基礎,作者盛魁(2017)[14-15]研究RFID系統安全與隱私保護的過程中,提出了一種基于時間的RFID加密算法。該算法是利用閱讀器與標簽共同存有的一份能夠產生編碼表的“雜湊函式”及將時間轉換成秒數,利用時間的不可逆性創造出一種幾乎不會重復的混亂數據來保證閱讀器與標簽之間的傳輸;利用MD5加密Unix time[16]使得每次傳輸的信息完全不同,使得竊聽者沒有辦法通過分析傳輸封包的方式來監視傳輸內容,于是也就無法得到編碼表破解。該協議可有效地防止傳輸封包被竊聽、標簽被跟蹤或被偽造,提高了RFID系統的抗干擾性和加密性。
一些基于云的RFID認證方案不斷被提出。Chen(2016)提出一個隱私保護RFID云認證協議,通過在云數據庫中搜索數據、更新數據、存儲數據,使得系統的運算操作降低,也使系統參與者更新問題得到了解決。Lin(2015)提出一個RFID”供應鏈”系統認證協議,引入了可信第三方,提供支持”供應鏈”系統內的數據信息共享和標簽權限轉讓的安全平臺,但是,此協議只是采用“異或”這一種運算,安全性較差。
陶雅欣(2017)[17]認為“云系統”的架構與傳統系統差別較大,因而會面臨許多新的威脅。作者陶雅欣針對云中RFID大數據需要實時在線為前端標簽,持有者提供認證服務的特點,采用NTRU公鑰算法,提出了一種基于云的RFID公鑰認證協議。同時,利用BAN邏輯等方法對該協議的安全性能進行了證明了協議。最后,對比NTRURSAECC三種算法的優越性,將改進后的NTRU算法運用上述公鑰協議,提升了運行的效率,節省了相關的硬件資源。
本節針對RFID技術存在的安全性問題,從RFID安全認證協議方面入手,介紹了物理方法、密碼學方法和群組認證方法三個方面的安全認證協議。從這些研究可以看出,RFID系統的安全性問題是目前制約RFID技術發展的首要難題之一。RFID系統自身的資源有限性、竊聽者的攻擊方式的多樣性和新舊平臺的差異性成為安全性能發展的阻礙。因此,構建一個效率高、安全性高、消耗資源少的密碼學算法是勢在必行的。但是從目前的狀況看來,絕大多數密碼學算法只能解決上述某一部分問題,卻不能兼顧上述所有問題。新算法的設計和改進仍然需要繼續進行。
本節將介紹RFID系統在算法設計與硬件實現過程中存在的現實性問題,然后對此進行硬件層面簡要概述,并提出針對性的解決方案。
考慮到中小企業部署射頻系統的成本以及對于數據保密的需要,因而不得不使用較復雜的密碼學算法提升其安全性能,但RFID標簽面積,功耗和計算能力增加等問題也不能忽略。于是,通過閱讀大量文獻,我們總結出了以下方案,不僅從實驗角度驗證了硬件低成本的可行性,而且進一步解決了協議中存在的安全隱患。
本節針對節約硬件資源和成本的問題,查閱了大量文獻,對其中有效的解決方案做簡要綜述,并提出相應的解決方案。
周永杰(2017)[18]針對傳統Mifare卡,存在安全隱患的問題,提出了一種新的防偽標簽系統的算法設計方案,并對其可行性進行了硬件驗證。該方案的防偽標簽是基于華大公司CIU51L80芯片的硬件設計的,其片上操作系統(COS)能完成標簽與“讀寫卡器”之間的數據傳輸、數據加密、標簽內部文件管理以及密鑰管理等操作;“讀寫卡器”以STM32F103VET6為中央處理器,在移植uC/OS-II操作系統的基礎上,設計“讀寫卡器”應用軟件,完成標簽內部文件的讀取、寫人、創建、刪除等操作;上位機軟件以QT作為UI界而和應用程序開發框架,完成顯示標簽內部信息、向“讀寫卡器”發送指令等相關操作。設計完成的系統具有穩定、高效、安全的特點。
詹蘭馨(2017)從實體認證安全性問題和如何提高抵抗克隆攻擊的能力兩方面入手,提出了基于PUF的RFID安全認證協議,該認證協議只通過偽隨機數發生器和基本的位運算實現對隱私信息的加密,減少了計算量,很好地保證了RFID系統的低成本性。同時,利用MSP430F149開發板進行模糊提取算法的有效性驗證。結果分析表明,相比基于ECC的檢錯糾錯模糊提取算法,該模糊提取算法在運行時不需要較多的內存,而且還具有運算高效、測量方便、實現容易的優勢。
李遼陽(2017)為了解決RFID認證過程中的異步攻擊問題,采用了一種基于Hash函數的協議方案。并對該協議的抗攻擊能力、存儲量、計算量等方面進行分析,得出該方案不僅能夠抵御多種安全威脅,而且節省了成本,提高了運算效率的結論。并且在Windows7環境下,使用Java語言實現該協議的仿真系統,證明了在有限的硬件資源下,本協議可以抵御數據庫偽裝攻擊、標簽偽裝攻擊、異步攻擊等攻擊模式,因而是一種安全可靠的認證協議。
陶雅欣(2017)為解決中小企業射頻系統部署成本問題和抗攻擊以及數據保密等問題,利用云端平臺,通過改進NTRU算法認證過程中耗費資源最多的“星乘操作”,優化了AC Atici's[19]關于NTRU加密設計電路,并進行綜合設計。從標簽存儲空間、標簽加密時鐘周期和硬件性能方面加以分析,證明該解決方案適用于在低成本、計算資源有限的條件下使用。
李倩(2018)提出了“云計算”環境下的標簽新的所有權轉移協議架構和安全需求,設計了一個更加高效的協議。該協議引入代理重組加密技術,保證云端數據存儲的機密性,大大提高了數據管理和處理的效率;同時,利用單向偽隨機函數和二次剩余算法,使硬件實現簡單化,達到了在保障安全的前提下節省硬件的目的。
徐世英(2015)[20]指出:RFID安全認證協議應該是從物理層到應用層全方位的安全機制,并分層描述了RFID系統存在的隱私和安全問題,以便構建一個完整的安全體系。徐世英在對比了“哈希鎖協議”和“交互認證協議”的安全漏洞后,提出動態加密算法。并對該算法進行隨機數方法分析、密鑰長度改進分析、算法選取改進分析,使其具有了更高的計算效率,并且使該算法獲得了良好的兼容性,極大地降低了成本。
綜上所述,硬件資源和成本問題是制約RFID技術發展的又一大難題。RFID系統自身的輕便性方便用戶并節約成本,但也限制了硬件資源的容量,導致功能強大的傳統密碼學算法無法應用到RFID系統。而RFID系統的最終目的是用來保障用戶信息的安全,故應在保障安全的前提下降低成本。這就將成本問題的解決轉移到了算法研究方面。
通過閱讀大量國內外專家學者對RFID系統安全性能的硬件資源和成本兩方面的分析,筆者發現絕大多數解決方案都是控制硬件資源在一定范圍內,圍繞算法的改進展開討論的,具體實現方法是提出新算法,優化舊算法。通過設計不同的加密算法抵御不同模式的攻擊;通過減少算法的運算量來節省更多的硬件資源和成本;通過對比、改良不同算法或將不同算法加以結合來得到效率最優的新算法,算法設計完成后再在現有的硬件資源上進行仿真,最后得出結論。但是,圍繞設計硬件系統的文獻卻比較少。筆者認為,RFID系統確實可以通過改進算法實現革新,但是,算法并不能彌補硬件方面的漏洞,也不能面對各式各樣的攻擊模式,所以可以考慮從硬件角度入手,設計不同的硬件結構,從硬件上提升效率,節約成本。將新算法與新硬件相結合,兩方面構筑RFID安全系統,共同解決安全和成本問題。
隨著物聯網技術的不斷發展,物聯網技術必然會對未來社會的經濟發展、人民生活水平的提升產生重要的影響。而作為物聯網技術關鍵核心之一的RFID將會在物流的生產和運輸環節、倉儲環節、銷售管理以及消費領域等產生重要影響。不僅如此,隨著RFID芯片技術以及其后端軟件的不斷發展,RFID技術將會構建虛擬世界與現實世界的橋梁,并最終與普適計算機技術相結合,為人們帶來快速、便捷的科技生活新體驗。