<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 手機與無(wú)線(xiàn)通信 > 設計應用 > 一種適用于RFID讀寫(xiě)器的加密算法及其實(shí)現

一種適用于RFID讀寫(xiě)器的加密算法及其實(shí)現

作者: 時(shí)間:2009-12-10 來(lái)源:網(wǎng)絡(luò ) 收藏

MCU除了操作讀卡芯片進(jìn)行常規的智能卡操作,也了系統所需的的嵌入,讀取或寫(xiě)人數據的加解密運算都通過(guò)MCU進(jìn)行。

MF RC500對Mifare 1卡的操作過(guò)程依照ISO14443的協(xié)議規定,按先后的順序為尋卡、防沖突、選擇、密鑰校驗和之后的讀寫(xiě)和增減值操作。MF RC500對Mifare 1卡的操作都是通過(guò)寫(xiě)入Transceive命令至Regcommand寄存器,再將操作Mifare 1卡的命令以數據的形式存放于Regfifodata寄存器中,設置完收發(fā)時(shí)鐘的長(cháng)度以后,就等待智能卡對讀寫(xiě)命令的反應。在足夠長(cháng)的時(shí)間段之內,Mifare 1卡傳輸的數據就會(huì )在Regfifodata里面出現,此時(shí),先讀取Regfifolength以確定數據的長(cháng)度,根據長(cháng)度寫(xiě)循環(huán)程序獲取智能卡返回的信息。圖6給出了系統上位機的界面。通過(guò)上位機,在正常操作智能卡的基礎上,進(jìn)行動(dòng)態(tài)更新密碼的操作,以及隱藏在讀寫(xiě)操作之下的加解密過(guò)程。

系統進(jìn)行的試驗如下:
1)控制密碼的得到:假設系統的公鑰Key_com為{0x00112233,0x44556677,0x8899AABB,0xCCDDEEFF),對于智能卡1,SNR為FDC71188,根據系統的規定,扇區X的密碼為KeyA與BTEA(Key_tom,2,SNR||SNR4)相關(guān),結果為{oxD3A7BA0l,0x525F18FC}。取結果的前6個(gè)字節作為扇區X的控制密鑰,即KeyA為D3A7BA0152。由此密碼得到了扇區X的Data1,假設Datal為{0x00,0x11,0x22,0x33,0x44,0x55,0x66,0x77}。由此Data1和存儲于MCU中的Key1通過(guò)XXTEA過(guò)程BTEA(key1,2,data1),可以得到KeyB。假設Key1為{0x01234567,0x89ABCDEF,0x01234567,0x89ABCDEF},通過(guò)加密,得到了{0x4CEFBEC2,0xCSCBACE0},取前6 byte,則KeyB為4CEFBEC2C8。使用該密鑰獲得對扇區Y的控制權,就可以對價(jià)值數據進(jìn)行讀寫(xiě)操作,這樣也避免了未經(jīng)授權的讀卡器想要非法對智能卡進(jìn)行操作的情況。
2)敏感數據的加解密:在Mifare 1智能卡中,數據是以塊為單位來(lái)存儲的,一塊16 byte,可以由XXTEA直接運算得出加密結果。設需要寫(xiě)入的數據為{0x01,0x12,0x23,0x34,0x45,0x56,0x67,0x78,0x89,0x9A,0xAB,0xBC,0xCD,0xDE,0xEF,0xF0},而密鑰為Key3,設為{0xFEDCBA98,0x76543210,0xFEDCBA98,0x76543210},通過(guò)該密鑰進(jìn)行XXTEA加密,得到加密后的數據為{0xA2,0xC6,0x6C,0x1A,0x3E,0x98,0x5E,0x48,0x7D,0xDA,0x68,0xC3,0x0C,0x23,0x1D,0x24}。將該數據寫(xiě)入智能卡中,讀取時(shí),對它用Key3作為密鑰進(jìn)行解密,得到所需數據。利用此種方法,使得明文在開(kāi)放的傳播空間內得到保護,保護了信息的安全。
3)密碼的動(dòng)態(tài)變換:在進(jìn)行完讀寫(xiě)操作以后,為了保障智能卡的安全,要立刻進(jìn)行密碼的變換。Data1經(jīng)過(guò)與key2的XXTEA運算后,變換為Data1_new。由此Datal_new推算出KeyB_new。假設Key2為{0xFEDCBA98,0x76543210,0x01234567,0x89ABCDEF},則Data1_new為{0x23FF28AA,0xA7684804},KeyB_new為3C7099D07F。此密碼在智能卡中必須同步更新,防止出現讀卡器未能取得智能卡扇區Y的讀寫(xiě)控制權的問(wèn)題。
通過(guò)對實(shí)驗結果的分析可以看出,XXTEA所占用的代碼空間為2 968 byte,占用內存空間124 byte,在24 MHz外部晶振條件下,加密速率為(3.26±0.1)Kbps(p=0.01),解密速率為(3.30±0.1)Kbps(p=0.01),抗攻擊能力強,暫時(shí)沒(méi)有一種可行的方法對該進(jìn)行有效攻擊,而且防沖突性能好,微小的數據改變將導致結果的重大變化??刂泼荑€動(dòng)態(tài)變換的根密鑰和智能卡數據的加密密鑰不經(jīng)過(guò)明文傳輸,杜絕了數據通信中出現的非法讀取和監聽(tīng)等威脅。


4 結論
在XXTEA加密基礎上的新系統安全方案,具有安全性高、低成本和兼容性高的特點(diǎn)。實(shí)驗結果表明,新方案能有效地提高數據傳輸的安全性,可將RFID的應用范圍推廣到信息敏感的領(lǐng)域,包括金融交易、食品安全和公共安全等。


上一頁(yè) 1 2 3 下一頁(yè)

評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>