The Mifare UltraLight, often labeled as MF0, is a low-cost, compact storage contactless card complying with the ISO14443A protocol. As one of the most economical chips in its category, it offers a 512-bit memory—significantly less than the 8192-bit capacity of the Mifare S50. This makes it ideal for one-time-use or low-budget applications such as electronic tickets, scenic entry passes, and disposable access cards.
Table of Contents
ToggleMemory Structure and Page Organization
The Mifare UltraLight’s 512-bit storage is divided into 16 pages, with each page containing 4 bytes.
Fixed Factory Data
Pages 0, 1, and 2 store the card’s 7-byte serial number and check bytes.
BCC0 and BCC1 are calculated based on the serial number bytes.
SN0 is fixed as 04H, indicating NXP as the manufacturer.
The second byte of Page2 is reserved for internal use. These 10 bytes are pre-set during manufacturing and cannot be modified.
One-Time Programmable Page
Page3 is delivered with all bits set to “0.”
Users can only change bits from “0” to “1” (not reversible).
Writing involves a bitwise XOR operation between new and existing data.
User Data Area
Pages 4 through 15 are fully readable and writable.
Initialized to “0” before delivery, these pages can be freely programmed by the user.
Locking Mechanism and Write Protection
The third and fourth bytes of Page2 control read-only locking for specific pages.
Lock Bits and OTP Security
Bits L4–L15 correspond to Pages 4–15. Setting a bit to “1” locks the respective page permanently.
Lotp locks Page3.
Lock bits themselves are secured by BL bits (BL15–10, BL9–4, BLotp), which are also OTP.
Once set, locks cannot be reversed—careful configuration is essential.
Compatibility with Mifare S50
Mifare UltraLight operates with the same reader hardware and software as Mifare S50, but key differences exist.
Four Major Operational Differences
Serial Number Length: UltraLight uses 7 bytes vs. S50’s 4 bytes, requiring an extra anti-collision step.
Authentication: UltraLight has no password or verification requirement.
Memory Structure: UltraLight has 16 blocks of 4 bytes each; S50 offers 64 blocks of 16 bytes.
E-Wallet Function: UltraLight does not support electronic wallet features.
Achieving Full Compatibility
Software can be adapted to handle both card types by:
Detecting card type (0044H for UltraLight).
Implementing a second anti-collision layer.
Reading/writing only the first 4 bytes per block.
Avoiding e-wallet commands.
Typical Applications and Market Position
Mifare UltraLight is designed for one-time, low-cost applications like:
Electronic tickets
Scenic or event entry passes
Disposable access cards
Originally intended to replace 125kHz ID cards and magnetic stripe cards, its adoption faces strong competition from ID cards, which remain popular in many magnetic card replacement scenarios.
Mifare UltraLight vs. Mifare S50
| Feature | Mifare UltraLight (MF0) | Mifare S50 |
|---|---|---|
| Capacity | 512 bits | 8192 bits |
| Pages/Blocks | 16 pages (4 bytes each) | 64 blocks (16 bytes each) |
| Serial Number | 7 bytes | 4 bytes |
| Authentication | None | Password verification |
| OTP Page | Page3 available | Not available |
| E-Wallet | Not supported | Supported |
| Typical Use | One-time tickets, low-cost access | Multi-use cards, stored value |
| Locking | OTP lock bits per page | Sector-basedtradition |

