淺析重加密技術在RFID中的應用

RFID(Radio Frequency Identification)作為一種新的自動識別技術逐漸被廣泛地應用于人們的日常生活當中,隱私安全問題也逐漸受到人們所重視。本文首先對現(xiàn)有的一種用于人類身份認證的安全協(xié)議-HB 協(xié)議進行了分析研究,并從 RFID 實際應用安全性要求角度對協(xié)議進行了改進。性能分析結果表明,改進的協(xié)議可以有效地解決目前的 RFID 應用系統(tǒng)中的數(shù)據(jù)安全問題。

重加密的安全要求

在該應用模型中,為了保護隱私,重加密時需實現(xiàn)明文保密、公鑰保密、防非法公鑰替換、防合法公鑰替換、別名無關性。其中別名無關性是指:除了L i 任何實體都不能夠判斷不同別名是否對應同一個ID 。

重加密的算法選擇

對重加密算法提出3點要求:

(1)具有單向性。否則重加密讀寫器可以逆向計算獲得ID ??梢赃x擇公鑰加密、Hash 函數(shù)等。

(2)隨機化特性。一個ID 須對應多個別名,這要求多個密文對應一個明文。可以選擇具有隨機化的公鑰加密方案,例如ElGamal 算法。

(3)一次解密。設解密時別名已經(jīng)過N 次重加密,一次解密要求,經(jīng)過一次解密操作即可恢復明文。通用重加密算法具有該特性。

重加密的缺點及對策

RFID 的重加密技術存在一些缺點:

(1)重加密間隔內(nèi)的跟蹤問題。在2次重加密間隔內(nèi),標簽別名不變,則易受跟蹤。

(2)未解決合法公鑰替換攻擊問題。

(3)未做到RFID 標簽認證。標簽容易受到置換攻擊、數(shù)據(jù)篡改攻擊,讀寫器易收到重放(replay)和哄騙(spoofing)攻擊。

重加密防置換攻擊的策略

為了防止置換攻擊引起的跟蹤,必須在重加密時,抵抗公鑰置換攻擊。其難點在于重加密讀寫器并不能比攻擊者獲得更多的有關標簽的信息。本文認為防公鑰置換攻擊可分為抗置換、檢測置換、防置換跟蹤3個等級:

(1)抗置換:抗置換要求標簽別名不能夠被置換。采用寫保護密碼可以防止標簽名被置換,但是它同樣限制了重加密操作。討論如下方法:

1) 標簽驗證讀寫器合法性:即使簡單的驗證協(xié)議也需要讀寫器在線,甚至在標簽上實現(xiàn)Hash 函數(shù)。

2) 標簽驗證寫入數(shù)據(jù)的合法性:重加密一般使用公鑰加密,驗證數(shù)據(jù)的合法性需要在標簽上實現(xiàn)較大的運算量。

3) 別名由標簽內(nèi)部產(chǎn)生:此時可設置存儲單元為外部不可寫,可抵抗置換攻擊。但是若使用公鑰作為重加密運算,則對標簽要求太高。值得注意的是若采用Hash 函數(shù)作為重加密算法,則可以在標簽內(nèi)實現(xiàn)一個Hash 函數(shù)的條件下實現(xiàn)內(nèi)部產(chǎn)生別名,它實際上等同于Hash-鏈協(xié)議[2],但解密時需要在線連接數(shù)據(jù)庫。

(2)檢測置換:檢測置換要求在置換發(fā)生以后能夠在重加密時檢測出來。對此本文提出“過程記錄”法,其基本思想是,設標簽內(nèi)有一存儲單元D =(α2, β 2) ,D 記錄公鑰變化的過程,從D 不能夠計算公鑰本身,但是從D 能夠檢測置換。設D 初始化為(1, 1),并設通用重加密中,第k 次重加密時C PK =(αk ,1, βk ,1) ,每次重加密后標簽做如下操作:

D k +1=(αk +1,2, βk +1,2)←(αk ,2αk ,1, βk ,2βk ,1)

(3)防置換跟蹤:公鑰置換的目的是實現(xiàn)跟蹤,如果能夠在重加密后破壞公鑰置換的跟蹤性,則一定程度實現(xiàn)抗置換攻擊。

但該方法不能夠防止寫入的(α1, β1) 不是一個正確的C PK的篡改攻擊。例如設攻擊者的標簽有D ′= (α′2, β ′2) ,攻擊者只要設置(α1, β1)= (α′2/α2, β ′2/β 2) ,則根據(jù)式可將該標簽置換為攻擊者的標簽。假設任何標簽的(α1, β1) 為正確的C PK ,則該方案能夠防止置換2個合法標簽名的攻擊。在硬件上,該方案主要在標簽內(nèi)實現(xiàn)一個乘法器。

重加密在RFID 安全應用中有對標簽要求低、可離線工作等優(yōu)點,是一個具有廣泛應用前景的方案。本文綜述了其在RFID 應用中的現(xiàn)狀,提出通用模型、安全要求和存在的問題。“過程記錄”法在抗置換攻擊方面提供了一個思路,它在一定程度上能抗置換攻擊。