基于Hash的ID協議變化認證算法在RFID系統(tǒng)中的應用
引言
物聯網這一概念由美國在20世紀90年代提出,其認為 物聯網通過將全球萬事萬物的實物聯網,最終達到“以物控 物”的目的。物聯網是以互聯網為通信基礎,利用電子產品碼 EPC、RFID等技術建立的實物互聯網。在物聯網中將電子產 品碼存入芯片做成電子標簽粘附在被標識物體,通過識別設 備讀取標簽內的物體信息,從而惟一地識別一個物體,并將 獲取的物體信息在互聯網上傳遞,以此給人們工作生活帶來便 利的服務。對于獲取標簽內信息,RFID是一種有效的技術, 這種技術在過去的一段時間發(fā)展迅速。RFID在不需要操作人 員的情況下,就可以同時識別多個物體。RFID在帶來高效、 低成本服務的同時,在識別過程中也存在安全威脅和隱私泄 露等問題,因此,安全問題已成為制約RFID系統(tǒng)發(fā)展的主要 因素。如何構建高安全性的RFID系統(tǒng)是目前研究的一個熱點, 也是未來物聯網技術發(fā)展的關鍵因素。
1 RFID攻擊模型
RFID系統(tǒng)一般由電子標簽、閱讀器和后臺應用系統(tǒng)三個 實體部分以及后端網絡通信信道和無線通信信道組成。在整 個系統(tǒng)中,任何組成部分都可能成為攻擊者攻擊的對象。攻擊 模型可用圖1表示[1]。
在圖1中可以看出,攻擊者可以采用對常規(guī)信息系統(tǒng)攻擊 相同的被動攻擊、主動攻擊、物理攻擊等攻擊手段對RFID系 統(tǒng)中部分或全部進行攻擊。對于攻擊者來說,其攻擊RFID系 統(tǒng)的目的也與對其他信息系統(tǒng)攻擊的目的相同,主要為了非法 獲取信息、非法訪問、篡改信息和擾亂系統(tǒng)正常運行等。
1.1非法獲耳丈信息
攻擊者通過攻擊手段非法獲取RFID系統(tǒng)中非公開的機 密信息或內部信息,攻擊者獲取這些信息之后,可以自己利用這些信息,可以通過出售信息謀利,可以為了使對方陷于被動 而公開這些信息,也可以保存信息以便將來使用。
圖1 RFID系統(tǒng)的攻擊模型
1.2非法訪問
攻擊者通過竊取合法用戶密碼或通過其它非法手段獲得 對RFID系統(tǒng)的訪問權限,攻擊者在進入系統(tǒng)后就可以訪問 系統(tǒng),偷取系統(tǒng)內信息或對系統(tǒng)的正常運行進行破壞。攻擊 者也可能在非法進入系統(tǒng)后,將一些病毒、木馬植入系統(tǒng)中, 為將來再次入侵留下后門。
1.3篡改信息
對于RFID系統(tǒng),攻擊者即可以篡改RFID空中接口數據, 也能夠對標簽信息進行篡改。對于電子標簽,只讀卡內信息 不容易被篡改,但對于空中接口數據就相對容易被篡改。攻 擊者通過對系統(tǒng)中的數據進行篡改,就可以冒充合法用戶,對 系統(tǒng)進行“合法”訪問。攻擊者也可能會偽造合法數據或對合 法數據進行篡改,依此欺騙通信雙方,甚至導致系統(tǒng)運行進 入混亂狀態(tài)。
1.4擾亂系統(tǒng)的正常運行
攻擊者為了商業(yè)競爭需要,對對方系統(tǒng)進行擾亂后,使 對方系統(tǒng)陷入混亂狀態(tài),導致對方系統(tǒng)無法正常運行,使得 對方正常業(yè)務無法開展。在RFID系統(tǒng)中前端通信是通過無線 信息進行,因此,攻擊者若采用無線電干擾,就會很容易導致 通信系統(tǒng)癱瘓而無法正常工作。
2 RFID安全關鍵問題
由于RFID系統(tǒng)的便攜性、移動性等特點,限制了電子 標簽中本身存儲的內部資源和能量不能很多,同時還要能夠對 電子標簽進行快速靈活的讀取,這些因素對增加RFID系統(tǒng) 安全性形成了一定的限制。因此,為了能夠實現符合RFID系 統(tǒng)的安全協議和機制,在考慮其可行性的基礎上,還應該重 點考慮下面幾個方面的問題。
2.1算法復雜度
由于電子標簽內部時鐘頻率較高,且具有快速讀取等特 點,因此在加密算法設計的過程中,要求算法的計算周期盡 量短。但是,高強度的加密算法在使用較多計算周期的同時 還需要占用大量的系統(tǒng)存儲資源,特別對RFID電子標簽這種 存儲資源缺乏的對象表現地更為突出。因此在算法設計時就 需要解決如何能在使用高強度加密算法的同時盡量減少資源 需求并且使計算周期變短的問題。
2.2認證流程
對于電子標簽的識別設備來說,針對不同的應用系統(tǒng)采 用不同的讀取方式,在一些超市系統(tǒng)等應用中,識別設備一次 只需讀取一個電子標簽,而在物流管理等應用中,一次需要讀 取多個電子標簽。對于前一種讀取方式,認證流程占用的時間 長一些并不會影響到系統(tǒng)的正常使用,而在后一種讀取方式中, 認證時間需要嚴格控制,否則會導致因單個電子標簽認證流程 時間過長而影響到其它電子標簽不能被完全讀取。
2.3密鑰管理
由于物聯網需將所有物體聯網,而每一個聯網物體都需 要電子標簽進行身份識別,因此在RFID系統(tǒng)中,電子標簽的 數量非常龐大。如果對于每一個電子標簽都設置一個惟一的 密鑰,那么如何有效的管理這些龐大的密鑰將是一件非常困 難的事。若對同一類物品設置統(tǒng)一的密鑰,可以減少密鑰的 數量,但是,一旦其中一個物體密鑰被破解或泄露,那兒其 它同類物品將會受到安全威脅。
對于RFID系統(tǒng)安全問題,除了前面這三個方面外,還需要 考慮傳感器、電子標簽和識別設備等感知硬件的物理保護,同 時考慮是否針對不同的應用使用不同的安全等級等保護措施。
3基于Hash的ID協議變化認證算法
基于Hash的ID協議變化認證算法采用每次改變認證過 程中各設備間的交換信息,然后將改變信息與設備自身保存的 信息做比較,如果相同則通過認證,否則認證失敗。這樣就 可以防止信息在設備本身內或信道上被篡改,從而有效保護
RFID系統(tǒng)的可靠性和安全性?;贖ASH的ID協議變化認 證算法如下[1]:
Attest_Hash(){
Init RFID_system;//初始化 RFID 系統(tǒng)
識別讀寫器R發(fā)送查詢命令給電子標簽L;
電子標簽L使自身TID=TID+1,保存TID,計算 H(ID), / TID=TID-LST,計算 H(TID||ID); //TID 為上次發(fā)送序號,LST為最后一次發(fā)送序號,H()為 Hash函數
電子標簽L返回H(ID), / TID, H(TID||ID)到識別讀 寫器R ;
識別讀寫器R轉發(fā)H(ID), / TID, H(TID||ID)到后端 數據庫 System_db ;
根據H(ID)在后端數據庫System_db中查詢標簽L'; 標簽 L'的 TID' =LST' + / TID,計算 H(TID||ID);
If (L.infb=L' .infb) { //對比電子標簽中信息與后端
數據庫中對應信息是否相符 標簽更新自生LST=TID, ID=ID十N ;//N為隨機數 后臺數據庫 System_db 更新 H' (R||TID||ID);
后臺數據庫System_db發(fā)送N和H' (R||TID||ID)給 識別讀寫器R;
識別讀寫器R轉發(fā)N和H'R||TID||ID)給電子標簽L; If (電子標簽L中保存的信息與N和H'R||TID||ID)
相等){
通過認證;
電子標簽L更新自身LST=TID,ID=ID十N ;
}
Else認證失敗;
}
Else認證失?。?
}
該算法的核心在于每次會話都會改變TID,使得每次的 Hash值也會改變,以此避免被跟蹤。且后端數據庫和電子 標簽中的TID不一定相等,只有在LST認證成功后才會更新 TID的值,在傳輸的過程中也只是傳輸TID與LST的差值, 這樣就可以有效保證LST的機密性。在認證通過后,還需要 再次刷新ID的值,用來避免攻擊者通過H(ID)跟蹤標簽。
4總結
本文在分析了針對RFID系統(tǒng)的攻擊模型和RFID系統(tǒng) 安全關鍵問題的基礎上,提出了一種基于Hash的ID協議變 化認證算法。該認證算法雖然可以有效解決RFID系統(tǒng)中認證 過程的安全性,但是也存在一些缺陷,在認證過程中,可能 會因環(huán)境的變化,識別讀寫器不能成功將信息發(fā)送給電子標 簽,此時,后端數據庫信息已更新,而電子標簽信息還保留原 信息,導致此標簽將再不會被識別;攻擊者也可以通過將非 法獲得的電子標簽信息重放給識別讀寫器,而更新后端數據 庫,造成電子標簽與后端數據庫信息不一致;攻擊者還可能會 非法獲取H(ID),由于該數據在兩次識別過程中并不會發(fā)生改變,從而造成攻擊者可以很輕易地跟蹤電子標簽等。這一系列 的缺陷還需要在以后的研究中予以解決,這樣才能真正提高 RFID系統(tǒng)的安全性,并將其應用到實際中。
20211222_61c2f1c10b38e__基于Hash的ID協議變化認證算法在RFID系統(tǒng)中的應用