Mifare UltraLight又稱為MF0,從UltraLight(超輕的)這個名字就可以看出來,它是一個低成本、小容量的卡片。低成本,是指它是目前市場中價格最低的遵守ISO14443A協議的芯片之一;小容量,是指其存儲容量只有512bit(Mifare S50有8192bit)。
Mifare UltraLight的512bit存儲容量分成16個Page,每個Page包含4個字節,如下圖所示:
Page0和Page1以及Page2的第1個字節是卡片的7字節序列號及其校驗字節,其中BCC0=0x88⊕SN0⊕SN1⊕SN2,BCC1=SN3⊕SN4⊕SN5⊕SN6,SN0是制造商代碼,由于Mifare UltraLight是NXP公司出品,因而SN0固定為04H。Page2的第2個字節Internal作為內部數據保留。以上共10個字節出廠時固化在存儲區內,用戶無法更改。
Page3是一次性燒錄(One Time Programmable,OTP)頁,該頁的內容在卡片出廠時全部被寫為“0”,用戶使用時只能把某一位的內容寫為“1”,而永遠也不能把“1”寫為0,也就是說,新寫入的4字節內容與卡內原來的內容進行異或,異或后的結果存儲在卡片中。
Page4-Page15是可讀寫的用戶數據區,出廠時其內容初始化為0,用戶可以任意讀寫。
Page2的第3和第4個字節用于將存儲區鎖定為只讀。如下圖所示,L4-L15的某一位設置為1,則對應序號的Page內容鎖定為只讀,每一個Page都可以單獨設置。Lotp用于鎖定Page3為只讀。“螳螂捕蟬,黃雀在后”,Lotp-L15可以鎖定別人,這些位本身又被三個BL位鎖定,BL15-10用于鎖定L15-L10,BL9-4用于鎖定L9-L4,BLotp用于鎖定Lotp。所有的這16個鎖定位也具有OTP特性,通俗的講就是這些“鎖”沒有“鑰匙”,一旦鎖死就再也改不回來了,所以鎖定時一定要小心。
Mifare UltraLight的讀寫操作和 Mifare S50是完全兼容的,這里的“兼容”是指二者可以使用同一個讀卡器硬件,同一套軟件。當然若軟硬件完全相同就不是兩種卡了,二者的區別主要體現在軟件操作上,包括以下4個方面:
一是Mifare UltraLight的卡序列號有7個字節,而Mifare S50的卡序列號只有4個字節,因此在卡片防沖突選擇階段需要兩層(Cascade,93H和95H)操作;
二是Mifare UltraLight沒有密碼,不需要驗證;
三是Mifare UltraLight的Page相當于Mifare S50的BLOCK,因此Mifare UltraLight有16個BLOCK,且每個BLOCK只有4個字節,而Mifare S50有64個BLOCK,每個BLOCK有16個字節;
四是Mifare UltraLight沒有電子錢包功能。
基于以上四點,在Mifare S50的程序中在卡請求命令成功執行后,如果判斷卡類型字節為Mifare UltraLight(0044H),則在之后的操作中增加第二層防沖突選擇,卡選擇成功后直接對卡片的0-15塊進行讀寫操作,每次讀寫只關注前4個字節,不使用電子錢包功能,這樣就可以兩種卡片完全兼容了。
Mifare UltraLight適合一次性、不需要回收的低成本的電子票證、景區門票等場合的解決方案,據說推出Mifare UltraLight的本來目的是想與125KHz的ID卡競爭,并作為磁條卡的替代方案。從目前的情況看,Mifare UltraLight與ID卡的競爭情況并不樂觀,而磁條卡的替代品也大多是ID卡。
審核編輯 黃宇
-
RFID
+關注
關注
388文章
6142瀏覽量
237755 -
射頻識別
+關注
關注
8文章
577瀏覽量
38931
發布評論請先 登錄
相關推薦
評論