王桂超
(山東信息職業(yè)技術學院,山東 濰坊261061)
RFID是一種非接觸式的射頻識別技術[1],隨著物聯(lián)網(wǎng)技術的飛速發(fā)展,作為物聯(lián)網(wǎng)重要組成部分的RFID也越來越受到人們的重視。RFID技術已經(jīng)被應用到智能家居、門禁系統(tǒng)、不停車收費系統(tǒng)、高速公路、物流倉儲等生活的方方面面。也正是RFID越來越廣泛的應用,使其安全問題更加受到人們的關注。
一個典型的RFID系統(tǒng)主要由電子標簽、閱讀器、后臺服務器[2]三部分組成。傳統(tǒng)的RFID系統(tǒng)后臺服務器計算能力有限,只能應用于小型場景。但是隨著物聯(lián)網(wǎng)技術的發(fā)展,海量設備需要接入計算授權,傳統(tǒng)后臺服務器將無法滿足安全計算需求。另一方面,由于RFID標簽的存儲和計算能力極其有限,因此很容易受到重放攻擊、拒絕服務、非法讀取等各種攻擊。傳統(tǒng)的RFID認證協(xié)議通常采用Hash函數(shù)、傳統(tǒng)機密技術等對數(shù)據(jù)進行加密或認證,但其加密過程算法復雜、硬件要求較高,無法滿足低成本、高容量RFID系統(tǒng)的安全要求。為了更好地解決低成本、高容量RFID系統(tǒng)信息安全問題,本文創(chuàng)新性地提出結合云計算[3]和RBAC[4]策略的多級RFID安全認證協(xié)議,從而多層次、高效率解決RFID系統(tǒng)的安全認證問題,保證系據(jù)的安全性。
本文提出的認證協(xié)議分兩級:認證過程為電子標簽與閱讀器之間的安全認證過程;閱讀器與后臺服務器之間的認證及計算過程,認證過程如圖1所示。
圖1 RFID認證模型
本系統(tǒng)由云計算后臺服務器、RFID閱讀器、電子標簽組成。其中云計算后臺服務器根據(jù)不同場景、不同應用級別分配不同計算能力;閱讀器與后臺服務器之間通信為無線或有線通信,通信過程采用綜合加密算法進行加密處理(采用RSA算法加密共享秘鑰,采用3DES加密具體通信數(shù)據(jù)),保證數(shù)據(jù)的安全性及不可更改性;閱讀器與電子標簽之間采用單項散列函數(shù)算法進行加密,保證數(shù)據(jù)不被惡意攻擊。系統(tǒng)初始化階段首先定義每個閱讀器的RBAC權限規(guī)則,每個閱讀器的RBAC規(guī)則可以根據(jù)實際需求動態(tài)調整。
此處假設云計算服務器能夠提供系統(tǒng)所需的所有計算能力及時延要求,具體通信過程如下:①當閱讀器要讀取某個RFID電子標簽時,首先生成一個隨機數(shù)SR,并將此數(shù)據(jù)發(fā)送給電子標簽。②電子標簽收到隨機SR后,生成一個時間戳TT,并將X||TT發(fā)送回閱讀器,其中X=H(IDT||SR),H為單項散列函數(shù),IDT為電子標簽ID。③閱讀器初始化認證生命周期T。收到電子標簽返回的信息后,生成時間戳TR。如果TT<TR且TR-TT≤T,閱讀器將IDR||X||TR||SR||TT經(jīng)3DES加密后發(fā)送給后臺云計算服務器;如果TT<TR且TR-TT>T,則提示認證超時,重新認證;如果TT>TR則認證失敗,認證結束。④云計算服務器收到閱讀器發(fā)給的信息后,將數(shù)據(jù)解密出來,首先根據(jù)閱讀器IDR及RBAC權限規(guī)則,在其具有閱讀權限的電子標簽ID列表中計算M=H(IDN||SR),如果有符合M=X的ID,則根據(jù)閱讀器對應該ID的權限,將授權信息Message發(fā)送給閱讀器,否則返回認證失敗信息。
認證流程如圖2所示。
圖2 RFID安全認證協(xié)議
隨著技術的發(fā)展,針對RFID系統(tǒng)的攻擊也在不斷變化,但是主要集中在假冒攻擊、重傳攻擊、非法閱讀、位置追蹤等攻擊[5],具體分析如下。
假冒攻擊分為兩種:①假冒標簽。當攻擊者假冒標簽A時,標簽發(fā)送給閱讀器的信息為單項散列函數(shù)計算,無法逆向獲取A的電子標簽ID,因此攻擊者無法發(fā)送有效的信息給閱讀器,攻擊者也就無法進行假冒標簽攻擊。②假冒閱讀器攻擊。由于閱讀器與云計算服務器之間通信通過經(jīng)典的加密算法進行加密,攻擊者無法進行破解,因此攻擊者的假冒閱讀器無法與云計算服務器進行通信,因此本協(xié)議完全可以抵抗多種假冒攻擊。
位置跟蹤可以泄露標簽的位置信息,獲取標簽的行動軌跡。在該系統(tǒng)中,由于每次認證電子標簽發(fā)送的信息都包含隨機數(shù),因此攻擊者每次獲取的信息是不一致的,無法根據(jù)每次截獲的信息確定是同一個電子標簽,因此也就無法對電子標簽進行跟蹤。
重傳攻擊分為兩種:①重傳標簽發(fā)送給閱讀器的信息。如果攻擊者截取上次認證信息并在之后的某個時間重傳,由于此信息有時間戳TT,閱讀器在收到此認證信息后計算TR-TT>T,生存周期超時,因此認證失敗。②重傳閱讀器發(fā)送給云計算服務器的信息。由于閱讀器與云計算服務器之間通信采用3DES加密,同時秘鑰采用RSA共享,因此在不泄露秘鑰的前提下。即使獲取了服務器的返回信息,也無法解密獲得相關數(shù)據(jù)。因此該協(xié)議能完全抵抗各種重傳攻擊。
由于協(xié)議認證過程第一步為閱讀器,同時閱讀器與云計算服務器后臺通信通過3DES加密,因此攻擊者無法偽裝成閱讀器進行有效的通信。
在系統(tǒng)內部,合法閱讀器對認證過程都能通過,但是根據(jù)RBAC安全策略,不同的閱讀器,對不同的標簽有不同的閱讀權限。因此合法閱讀器A只能讀取其具有權限的標簽,而無法讀取其他電子標簽的信息。
本文提出了一種基于云計算和RBAC安全策略的RFID認證協(xié)議,在本協(xié)議中采用了簡單的單項散列函數(shù)作為電子標簽的加密方法,能夠有效降低標簽的硬件要求。后臺服務器采用云計算平臺,可以將整個認證過程的計算部分都遷移到云計算平臺,有效降低閱讀器的硬件性能。同時,合理設置RBAC安全策略,可以有效降低閱讀器管理的標簽規(guī)模。同時可以根據(jù)需要,動態(tài)靈活地調整閱讀器的授權范圍,極大提高整個認證協(xié)議的效率。另一方面,RBAC安全策略的引入,靈活地保護了電子標簽的安全性,彌補了其他此類認證協(xié)議的不足。