苗素貞,彭平
(1.廣東技術(shù)師范學(xué)院,廣州 510665;2.廣東技術(shù)師范學(xué)院計算機科學(xué)學(xué)院,廣州 510665)
簡化的DES算法在RFID系統(tǒng)中的應(yīng)用
苗素貞1,彭平2
(1.廣東技術(shù)師范學(xué)院,廣州510665;2.廣東技術(shù)師范學(xué)院計算機科學(xué)學(xué)院,廣州510665)
無線射頻識別(RFID)是一種使用無線通信的方式進(jìn)行信息識別的技術(shù),由電子標(biāo)簽和識別裝置組成,利用它可以對目標(biāo)對象進(jìn)行識別并進(jìn)行相關(guān)的數(shù)據(jù)采集。RFID技術(shù)屬于自動識別技術(shù)中的一種,它也是構(gòu)成物聯(lián)網(wǎng)的一項核心技術(shù)[1],在20世紀(jì)末逐漸進(jìn)入企業(yè)應(yīng)用領(lǐng)域。RFID技術(shù)與其他的技術(shù)一樣,在它最初被應(yīng)用的時候人們往往對其充滿了想象,并且由于美國國防部和沃爾瑪公司的一些舉措,人們對該技術(shù)在實際中的應(yīng)用前景充滿了期待。然而隨著它在不同環(huán)境中的應(yīng)用,人們在對其狂熱追捧的同時不得不冷靜下來面對RFID應(yīng)用系統(tǒng)突顯出的一系列問題[2]。因RFID系統(tǒng)“對外完全開放”的設(shè)計思想,當(dāng)標(biāo)簽進(jìn)入閱讀器讀取范圍內(nèi)時,其信息被讀取,閱讀器獲取物品的信息,甚至是消費者的個人行為如位置、行程、時間等信息。不僅如此,若將RFID技術(shù)運用到身份證、工作證等方面,必會招致黑客的入侵,個人的隱私信息將隨時面臨著暴露的危險性,人們的合法權(quán)益將會受到直接影響。由此可見,為了推動RFID技術(shù)更好的發(fā)展與普及,首先要解決其應(yīng)用系統(tǒng)的安全與隱私問題[3]。
其實,造成RFID應(yīng)用系統(tǒng)存在安全風(fēng)險的原因很多。其中,最主要來源于RFID系統(tǒng)的設(shè)計思想,即它的對外應(yīng)用是完全開放的[4]。其次,該系統(tǒng)的讀寫機制存在缺陷、標(biāo)簽本身的缺陷以及閱讀器與標(biāo)簽之間的通信信道存在不安全性等,這些都會威脅到RFID應(yīng)用系統(tǒng)的安全。目前,針對該問題的解決方法也有很多,大致上可以分為三大類:物理方法、邏輯方法及兩者的結(jié)合。主要的物理方法有:Kill命令機制[5]、法拉第網(wǎng)罩[6]、休眠機制、主動干擾[7]和可分離標(biāo)簽[8]等技術(shù),這些方法主要運用于低成本的RFID標(biāo)簽。為了彌補物理方法的不足,很多基于密碼學(xué)的安全協(xié)議和信息加密算法相繼被提出。其中,比較有影響性的方法主要有Hash鎖協(xié)議、隨機化Hash鎖協(xié)議、Hash鏈協(xié)議、基于Hash的ID變化協(xié)議、LCAP協(xié)議等,經(jīng)過分析,這些協(xié)議雖然可以在特定的應(yīng)該場景下解決部分的安全與隱私問題,但遺憾的是它們往往在解決某一問題的同時,又會帶來新的問題??偟膩砜矗壳吧胁淮嬖谝粋€公認(rèn)的高效、實用、低成本、適用于RFID環(huán)境的安全的解決方案,這也為后續(xù)的進(jìn)一步研究與改進(jìn)提供了發(fā)展空間。
混沌加密是利用確定的混沌系統(tǒng)經(jīng)過多次迭代之后生成的混沌序列作為密鑰序列,利用該序列對明文信息進(jìn)行加密,密文經(jīng)信道傳輸,接收方收到密文后用混沌同步的方法進(jìn)行解密得到明文的一個過程。其原理可以通過圖1來表示:其中,P表示明文,C表示密文;F(K0)表示混沌系統(tǒng)的初始狀態(tài),即動力學(xué)方程的初始值及其參數(shù);∑(KE)和∑(KD)分別表示用于加密和解密的密鑰生成器;E(P,KE)和D(C,KD)分別表示加密和解密的過程。
圖1
在圖1中,P表示明文,C表示密文;F(K0)表示混沌系統(tǒng)的初始狀態(tài),即動力學(xué)方程的初始值及其參數(shù);∑(KE)和∑(KD)分別表示用于加密和解密的密鑰生成器;E(P,KE)和D(C,KD)分別表示加密和解密的過程。在進(jìn)行安全通信之前,首先需要設(shè)定混沌系統(tǒng)的初始狀態(tài),即動力學(xué)方程的參數(shù)及其初始值,這些數(shù)據(jù)經(jīng)過RSA加密算法加密之后在通信雙方之間進(jìn)行安全傳遞。因混沌系統(tǒng)產(chǎn)生的序列具有隨機性,保證了每次用于加密的密鑰KE是不相同的,并且該序列具有不可預(yù)測性,因此,本文中選擇的是混沌加密算法。
事實上,并不存在絕對安全的密碼系統(tǒng),在通常情況下我們認(rèn)為下面幾種情況的加密系統(tǒng)是安全的:如果攻擊者破譯一個加密算法所需的費用遠(yuǎn)遠(yuǎn)超過被加密信息本身的價值,或者破譯時所需要的時間過長超過信息本身的保密期,或者破譯時需要大量的數(shù)據(jù)超過了信息本身的數(shù)量,則認(rèn)為該加密算法是安全的。
在進(jìn)行加密系統(tǒng)設(shè)計時,一般需要考慮以下幾個問題:
(1)一個好的加密系統(tǒng)其安全性應(yīng)該只和加密密鑰相關(guān),即使攻擊者獲取了加密算法的細(xì)節(jié),加密系統(tǒng)應(yīng)具備的保密程度也不會降低。
(2)密鑰量應(yīng)該足夠大,以滿足“一次一密”的保密要求和所需的保密等級。
(3)算法中不應(yīng)該存在“弱密鑰”,即所用密鑰的保密程度應(yīng)該是相同的。
(4)加密算法應(yīng)具備抵御已知明文攻擊的能力,即使攻擊者獲取了一部分的明文及其相應(yīng)的密文,也無法實現(xiàn)數(shù)據(jù)其他部分的解密,更不可能破解密鑰。
除此之外,針對RFID應(yīng)用系統(tǒng)而言,還需考慮到電子標(biāo)簽的運算能力、存儲空間、加密的硬件成本等問題,在進(jìn)行加密系統(tǒng)設(shè)計時盡量做到以下幾點:
(1)選用的算法的加密方式盡量是較為簡單,因RFID應(yīng)用系統(tǒng)中電子標(biāo)簽的容量非常有限,若選用復(fù)雜的算法,加密時就需要付出巨大的代價。另外,從實時性方面考慮,進(jìn)行算法設(shè)計時盡量選用可并行處理的算法。
(2)考慮要RFID應(yīng)用系統(tǒng)中電子標(biāo)簽的硬件成本,本文中選擇在標(biāo)簽的芯片內(nèi)只加入加密模塊,而在閱讀器的控制處理模塊中可以加入加密與解密的模塊,從而來實現(xiàn)操作和提高速度。
為了獲取更大的混沌空間以及對初始狀態(tài)更高的敏感性,本文在Logistic映射的基礎(chǔ)上對其進(jìn)行改進(jìn),改進(jìn)的Logistic映射表達(dá)式為:
f(x)=μx(1-x2)(1)
我們?nèi)0=0.2,討論μ的取值情況:
當(dāng)0<μ≤1時,(μ=0.3時,如圖2(a)所示)該模型所決定的離散動力系統(tǒng)的動力學(xué)形態(tài)十分簡單,曲線迅速趨于0,且x0=0為吸引不動點,0就是吸引子。除了不動點之外,再也沒有其他的周期點。
當(dāng)1<μ<2時,(μ=1.8時,如圖2(b)所示)系統(tǒng)的動力學(xué)形態(tài)也較簡單。
當(dāng)2≤μ≤3時,(μ=2.4,μ=2.99時,如圖2(c)、(d)所示)系統(tǒng)的動力學(xué)形態(tài)十分復(fù)雜,系統(tǒng)由倍周期通向混沌。
當(dāng)μ>3時,此時該系統(tǒng)狀態(tài)毫無混沌現(xiàn)象,0為唯一的吸引子。
經(jīng)過MATLAB仿真實驗發(fā)現(xiàn),當(dāng)2.3<μ≤3.0時,該模型出現(xiàn)混沌狀態(tài)。取參數(shù)μ=3.0時,改進(jìn)的Logistic映射的吸引子圖如圖3所示;當(dāng)參數(shù)x0=0.2時,其倍周期分岔圖如圖4所示。
為了驗證其是否具備初始條件敏感性,我們?nèi)0=0.32560和x0=0.32561進(jìn)行測試,改進(jìn)后的Logistic映射軌道間的指數(shù)分離現(xiàn)象如圖5所示,由此可以說明,改進(jìn)后的Logistic映射具備對初始條件極端敏感的特性。同時,我們可以發(fā)現(xiàn),改進(jìn)后的Logistic映射的混沌區(qū)間為(2.3,3.0),明顯大于改進(jìn)前的混沌區(qū)間(3.57,4.0),也就是說改進(jìn)后的Logistic映射能夠產(chǎn)生密鑰的空間更大了,可以為后期的加密算法提供更多的密鑰。
圖2 時間序列圖
圖3 改進(jìn)的Logistic的吸引子圖
圖4 改進(jìn)的Logistic映射的分岔圖
圖5 軌道的指數(shù)分離圖
商用數(shù)據(jù)加密標(biāo)準(zhǔn)DES算法是由美國國家標(biāo)準(zhǔn)局頒布的,該算法執(zhí)行速度較快,適用于大量數(shù)據(jù)的加密,并且加密之后的數(shù)據(jù)具有很好的雪崩效應(yīng)。但是DES算法每加密一組數(shù)據(jù)要進(jìn)行16輪的循環(huán)加密,且16輪的密鑰之間存在相關(guān)性,基于這些原因,本文選擇在DES加密算法的基礎(chǔ)上提出一種簡化算法用于RFID應(yīng)用系統(tǒng)中,從而對RFID用戶的安全與隱私起到一定的保護(hù)作用。
DES是一個分組密碼算法,屬于私鑰加密體制,其密鑰長度為56位,但是用64位表示,有8位為校驗位。該算法首先對明文進(jìn)行分組,每組明文的長度為64位,之后分別對每個分組進(jìn)行加密。但是直接用DES算法對RFID系統(tǒng)的數(shù)據(jù)進(jìn)行加密會存在以下問題:
(1)利用該算法時,每組明文需要進(jìn)行16輪的加密,導(dǎo)致加密速度較慢,占用存儲空間大。
(2)每輪的輪密鑰均是由初始密鑰先置換后移位的方式獲取,因此子密鑰與初始密鑰之間存在線性相關(guān)性。并且初始密鑰固定不變,那么輪密鑰也不會發(fā)生變化。如果要增強該算法的抗破譯性,就需定期地更換DES算法的初始密鑰,這樣會造成加密端和解密端初始密鑰不同步的問題。
針對以上問題,本文在DES算法的基礎(chǔ)上對其做以下簡化:
(1)減少加密輪數(shù),由原來的16輪降低為4輪;相應(yīng)的,輪密鑰直接由Logistic映射生成48位的輪密鑰,這樣可以大幅度地降低加密算法的復(fù)雜度。
DES采用的結(jié)構(gòu)通常稱為Feistel系統(tǒng),1988年Michael Luby和Charles Rackoff分析了該結(jié)構(gòu),證明如果輪函數(shù)是以密鑰Ki為種子的安全偽隨機函數(shù),則進(jìn)行三輪足以使分組加密后數(shù)據(jù)是偽隨機排列,進(jìn)行四輪足以使得加密后數(shù)據(jù)成為“強”偽隨機排列[9]。因此本文將DES算法中的16輪循環(huán)加密簡化為4輪。
(2)由混沌映射作為輪密鑰發(fā)生器,確保輪密鑰處于變化之中且相互獨立,實現(xiàn)了“一次一密”,提高了加密算法的安全性。并且運用混沌加密技術(shù)時,只要在互相通信的兩端分別構(gòu)造混沌映射,在初始狀態(tài)相同的情況下,就可保證通信雙方能夠生成相同的混沌序列,實現(xiàn)密鑰的同步。
圖6 簡化的DES算法加密過程示意圖
圖7 簡化的DES的f函數(shù)
簡化后的加密算法過程如圖6所示,主要涉及三個步驟:
(1)明文P經(jīng)過初始置換,得到P0=IP(P)。記作P0= L0R0,其中L0是P0的前32位,R0是P0的后32位。
(2)對1≤i≤4,執(zhí)行以下操作:Li=Ri-1;Ri=Li-1⊕f(Ri-1,Ki),其中Ki是由混沌映射迭代產(chǎn)生的混沌序列經(jīng)量化后得到的。Ki是加密算法的輪密鑰,是一個48位的串,Ki相互之間是獨立的。f是一個函數(shù),如圖7所示。
(3)左右交換,得到R4L4,用初始置換的逆作用得到密文C=IP-1(R4L4)。解密過程完全一樣,只是密鑰K1,K2,…,K4的次序顛倒。在加密過程中的第三步有一個左右交換,這樣在解密時就沒有必要再做左右交換。其解密過程如下:
①輸入密文C(即RnLn),輸出[Ln][Rn⊕f(Ln,Kn)]。從加密過程得知Ln=Rn-1,Rn=Ln-1⊕f(Rn-1,Kn),因[Ln][Rn⊕f(Ln,Kn)]=[Rn-1][Ln-1⊕f(Rn-1,Kn)]=Rn-1Ln-1。
②同理,第二步解密將Rn-1Ln-1變?yōu)镽n-2Ln-2。繼續(xù)下去,解密過程最后得到L0R0。
改進(jìn)的Logistic映射的離散模型為:
f(x)=μx(1-x2)
其中,1<μ≤3,-1 為了獲取加密算法的輪密鑰,需要對混沌序列進(jìn)行二進(jìn)制編碼,本文中采用的映射函數(shù)為gk,其定義為:gk(x)=x×2k,x∈(-1,1),其中k為二進(jìn)制編碼長度。因受到計算機精度的限制以及混沌映射的倍周期規(guī)律,本文中取混沌映射的初始迭代次數(shù)n=1000,二進(jìn)制編碼長度k=16。將3個連續(xù)的混沌序列項進(jìn)行處理,得到一個輪密鑰Ki,即Ki={g16(x1)g16(x2)g16(x3)}。 在本文中利用MATLAB進(jìn)行仿真實驗,包括兩個部分:第一部分主要是進(jìn)行加密算法初始值敏感性的測試,給定兩個僅僅相差10-5的初始值進(jìn)行MATLAB仿真,比較生成的密文信息;第二部分主要是對于給定的明文字段分別利用DES算法和簡化后的DES算法進(jìn)行加密處理。 本文中選定的明文字段P為:abcdefgh ijklmnop qrstuvwx yzABCDEF GHIJKLMN OPQRSTUV,其對應(yīng)的十六進(jìn)制形式為:6162636465666768 696A6B6C6 D6E6F70 7172737475767778 797A414243444546 4748 494A4B4C4D4E 4F50515253545556。 實例1:利用簡化算法對明文字段進(jìn)行加密,分別給定兩個不同的初始值對明文進(jìn)行加密,其結(jié)果如表1所示。 其中兩次仿真的初始值分別為x0=0.32560和x0= 0.32561值,在表1中可以看出因初始值不同,用于加密的輪密鑰發(fā)生很大的變化,從而使兩次仿真得到的密文完全不同,這也很好地驗證了簡化后的DES算法具有很好的抗破譯性。 實例2:利用簡化算法和原算法對同一明文字段進(jìn)行加密,其加密結(jié)果如表2所示:其中,原算法的初始密鑰為:“D17A530F930A4B2E”,其輪密鑰是通過對初始密鑰進(jìn)行置換與移位獲得的。 從加密所占用的時間來看,簡化后的算法由于每組明文循環(huán)加密的輪數(shù)降低,且輪密鑰不再需要通過置換與移位操作獲得,因此,對于同一段明文信息,其加密時所需的時間相對較短,約為原算法所需時間的52%。從占用的存儲空間來看,DES算法加密輪數(shù)和移位計算次數(shù)較多,占用的內(nèi)存和外存儲空間較多;簡化后加密的輪數(shù)降低,輪密鑰不再通過循環(huán)移位獲取,占用的存儲空間相對較少。因此,簡化后的算法比較具有優(yōu)勢。 在信息加密領(lǐng)域,目前經(jīng)常使用的攻擊方法主要有明文攻擊、差分攻擊、統(tǒng)計攻擊以及其他各種惡意攻擊。在本文中主要通過進(jìn)行密鑰敏感性分析、統(tǒng)計分析和差分分析來檢驗加密算法的安全性。 一個好的加密算法其安全性應(yīng)該只和密鑰相關(guān),即使攻擊者知道了算法的細(xì)節(jié),也不能降低算法的保密程度。同時,加密算法應(yīng)該能夠提供足夠多的密鑰,這樣才能保障加密算法能夠抵抗窮舉攻擊。 (1)密鑰敏感性測試 通過圖5和表1可以看出,該算法對初始狀態(tài)十分敏感。該算法屬于對稱加密體制,解密過程為加密的逆過程,解密時若初始值發(fā)生微小的改變,解密得到的信息將會發(fā)生很大的改變,在該算法中初始值是通過安全性極高的RSA算法加密,攻擊者很難破獲其初始值。因此,即使非法分子截獲了部分的信息,也很難將其進(jìn)行正確的解密得到明文信息。 表1 簡化后的DES加密效果圖 表2 簡化后的DES加密效果圖 (2)密鑰空間分析 在該算法中,混沌映射參數(shù)μ可?。?.3,3.0)之間的任意實數(shù),初始值可以?。?1,1)之間的任意實數(shù),僅參數(shù)μ的選取就具有無窮性。因此,該加密算法擁有足夠大的密鑰空間,利用窮舉法獲取加密系統(tǒng)的初始狀態(tài)是不可能的。 簡化后的算法,其輪密鑰是由混沌映射產(chǎn)生的混沌序列進(jìn)行二值化處理得到的,具有隨機性,且相互之間彼此獨立。因此,加密系統(tǒng)可實現(xiàn)“一次一密”,具有較強的抗統(tǒng)計分析能力。 差分攻擊是一種明文攻擊方式,主要是通過對一定的明文信息進(jìn)行微小的改變,分析該變化對密文造成的影響來獲取密鑰的相關(guān)信息。簡化后的算法只要對明文信息進(jìn)行微小的改變,加密得到的密文信息將會發(fā)生巨大的改變,攻擊者通過這種方式得到的結(jié)果是沒有任何意義的。 通過以上分析可以看出本文提出的簡化算法在理論上是可行的,并且能夠?qū)崿F(xiàn)。由于混沌系統(tǒng)對初值的極端敏感性,只有通信雙方的混沌映射函數(shù)、函數(shù)的初始狀態(tài)完全一致的情況下,才能正確地解密。如果不能獲取這些信息,要想破解出明文信息是非常困難的。 本文在分析了RFID存在的安全與隱私問題之后,針對RFID應(yīng)用系統(tǒng)的特點將混沌加密技術(shù)應(yīng)用到加密系統(tǒng)中。主要針對典型的混沌映射Logistic映射進(jìn)行改進(jìn),并將其作為加密算法的輪密鑰生成器;在對稱加密算法DES的基礎(chǔ)上提出一種簡化算法,經(jīng)MATLAB仿真驗證簡化后的DES算法在一定程度上提高了系統(tǒng)的安全性,適合RFID應(yīng)用系統(tǒng)。 [1]胡向東,魏琴芳,向敏等.物聯(lián)網(wǎng)安全[M].北京:科學(xué)出版社,2012:313. [2]黃玉蘭.基于物聯(lián)網(wǎng)的RFID電子標(biāo)簽研究進(jìn)展[J].電訊技術(shù),2013,53(4):522-529. [3]黃玉蘭.基于物聯(lián)網(wǎng)的RFID電子標(biāo)簽研究進(jìn)展[J].電訊技術(shù),2013,53(4):522-529. [4]李仲陽,劉金平,李婷婷.RFID系統(tǒng)安全性研究[J].計算機安全,2011,2:36-38. [5]Auto-ID Center.860MHz-960MHz class I radio frequency identification tag radio frequency&logical communication Interface specification proposed recommendation Version 1.0.0[R].Technical Report MIT-AUTOID-TR-007.Nov.2002. [6]A.Juels,R.L.Rivest,M.Szydlo.The blocker tag:selective blocking of RFID tags for consumer privacy[C].Proceedings of the 10th ACM Conference on Computer and Communication Security(CCS 2003).Washington DC,USA,2003:103-111. [7]T.Hjorth.Supporting privacy in RFID systems[D].Technical University of Denmark,Master thesis.2004. [8]胡向東,魏琴芳,向敏等.物聯(lián)網(wǎng)安全[M].北京:科學(xué)出版社,2012:325. [9]Michael L,Charles R.How to construct pseudorandom permutations from pseudo random functions[J].SIAM Journal on Computing,1988,17(2):373-386. RFID System;Chaotic Sequence;Logistic Map;DES Application of Simplified DES Algorithm in RFID System MIAO Su-zhen,PENG Ping 1007-1423(2015)19-0003-07 10.3969/j.issn.1007-1423.2015.19.001 2015-05-20 2015-06-25 目前,無線射頻識別技術(shù)被廣泛地應(yīng)用到很多領(lǐng)域,但隨著RFID標(biāo)簽應(yīng)用到單品級消費品中,RFID系統(tǒng)突顯出一些安全與隱私問題。主要針對Logistic映射進(jìn)行改進(jìn),將它作為加密算法的輪密鑰發(fā)生器,并在DES算法的基礎(chǔ)上提出一種簡化算法,并利用MATLAB進(jìn)行仿真實驗。驗證提出的簡化算法在理論上具備一定的安全性和抗破譯性,更適合RFID應(yīng)用系統(tǒng)。 RFID系統(tǒng);混沌序列;Logistic映射;DES 苗素貞(1987-),河南駐馬店人,研究生,研究方向為信息系統(tǒng)工程 彭平(1956-),教授,研究方向為智能信息處理、智能學(xué)習(xí)系統(tǒng) At present,Radio Frequency Identification technology has been widely applied to many fields,but with the electronic tags applied to a single grade in consumer products,the system of RFID highlights a number of the security and privacy issues.Focuses on the Logistic map and tries to improve it as a chaos sequence generator.Proposes a simplified algorithm based on DES algorithm and carries out the simulation with MATLAB software to further verify that the simplified DES algorithm has a certain security and anti-attack in theory.It is more suitable for RFID application systems.3 加密算法的安全性能分析
4 結(jié)語
(1.Guangdong Polytechnic Normal University,Guangzhou 510665;2.School of Computer Science,Guangdong Polytechnic Normal University,Guangzhou 510665)