基于DES算法的RFID安全系統設計
DES算法的核心是一個輪函數,明文數據經過初始置換后進行16次輪函數的操作,最后經過一個逆初始置換輸出結果。在每一次輪函數中所使用的密鑰Ki是初始密鑰經過置換后的,所以每一輪的密鑰都不同;對于輸入的64 b明文,分成長度相同的兩部分Li,Ri,則輸出給下一輪的64 b數據為:本文引用地址:http://www.104case.com/article/158099.htm
其中E表示將右半部分的32 b數據擴展為48 b,與密鑰異或后經過8個S盒,每個S盒接收6 b的輸入,產生4 b的輸出。然后經過一個置換矩陣P,與左半部分再次異或后作為下一輪函數的右半部分數據。
由于S盒在整個算法中占據了很大的面積和功耗,所以本文針對原有算法對S盒進行改進,采用單個S盒來代替原來的8個,將經過擴展的48 b數分成8塊,通過一個多路選擇器依次通過S盒,再將產生的結果合成為一個32 b數輸入置換矩陣P(如圖5)。這樣就大大減少了電路的規模,同時由于尺寸的減小整個電路的功耗也會降低,更適合用于RFID標簽。
3 系統性能
3.1 安全性分析
所提出的RFID安全系統能夠防止多種攻擊手段,采用相互認證機制和比較安全的DES算法,提高了系統的安全性。
(1)防止攻擊者竊聽。一般讀寫器和后端數據庫之間的信道采用有線連接的方式,可以認為是安全信道,而讀寫器和標簽之間的信道可以成為攻擊者竊聽的對象。設計中,不安全信道上沒有任何明文傳輸,所以竊聽者無法得到有用的信息。
(2)相互認證機制阻止了未授權讀寫器對標簽進行讀寫,同時也防止偽造的標簽信息被讀取。
(3)防止攻擊者截取信息進行重放攻擊,由于每次發起請求時都會首先發送一個隨機數,攻擊者即使截取了讀寫器與標簽傳輸過程中的數據也無法進行有效攻擊。
(4)采用了基于DES的加密函數,攻擊者很難從傳輸的密文數據中分析出有用信息。該算法的不足是密鑰長度過短,但是算法本身的結構是沒有任何缺陷,破譯該算法需要付出一定代價,花費較長時間,所以至今仍然有著廣泛的應用。對于安全性要求很高的系統可以考慮采用更長的密鑰,或者DES算法的變種(三重DES算法)。
3.2 改進的DES算法性能分析
該設計以減少芯片面積為主要目的,在原有的DES加密算法基礎上進行改進,并用Synopsys公司的綜合工具DesignCompiler分析了改進后系統的性能,綜合使用的是stoic 0.18μm工藝庫,性能比較如表1所示。
4 結 語
安全問題的存在制約著RFID技術的發展與應用,在此分析了EPCglobal協議中的安全問題和現有安全協議存在的漏洞,提出了一種安全讀寫機制,該方案有效地防止了多種攻擊,并結合DES加密算法進一步提高系統和數據的安全性。改進后的DES算法具有面積小、功耗低的特點,更適合用于RFID標簽電路。
評論