Digital Signal Processing Reference
In-Depth Information
MIFARE® chip
'Manufacturer block'
Sector 0
SNr
Manufacturer's data
S = 0, Y = 0, mblk.
Sector 1
S
0, Y
1, data
=
=
Sector 3
Sector trailer
S
=
0, Y
=
2, data
Sector 4
Access
config.
(ACC)
S = 0, Y = 3,
trailer
Key 1
Key 2
Sector 5
Data blocks
S
=
X, Y
=
0, data
Sector 0xC
Write-/read block (16 byte)
S
=
X, Y
=
1, data
Sector 0xD
S
X, Y
2, data
=
=
Value-block
Sector 0xE
S
=
X, Y
=
3, trailer
Sector 0xF
16 sectors
×
4 blocks
×
16 bytes
Figure 10.17 Memory configuration of a MIFARE data carrier. The entire memory is divided
into 16 independent sectors. Thus a maximum of separate 16 applications can be loaded onto a
MIFARE card
only a small part of the available memory on the card. The remaining memory units
onthecardcouldbeusedbyotherserviceproviders for their own applications, such
as local transport tickets, car rental, filling station cards, parking passes, bonus cards
for restaurants and supermarket chains, and many others. However, we cannot find out
which of the many possible applications are currently available on the card, because
each reader belonging to an application only has access to its own sector, for which it
also has the correct key.
To get around this problem, the author, in conjunction with Philips Semiconductors
Gratkorn (was Mikron), has developed an application directory for the MIFARE
smart card. Figures 10.18 and 10.19 illustrate the data structure of this directory, the
MAD (MIFARE application directory).
Blocks 1 and 2 of sector 0 are reserved for the MAD, leaving 32 bytes available for
the application directory. Two bytes of each make up a pointer, ID1 to ID$F, to one of
the remaining 15 sectors. Reading the content of the pointer yields 2 bytes, the function
cluster and the application code , which can be used to look the application up in an
external database. Even if the application we are looking for is not registered in the
available database, we can still gain an approximate classification from the function
cluster, for example 'airlines', 'railway services', 'bus services', 'city card services',
'ski ticketing', 'car parking', etc.
Each application is allocated a unique identification number, made up of the function
cluster code and application code. It is possible to request an identification number from
the developer of MIFARE technology, Philips Semiconductors Gratkorn (Mikron)
at Graz.
If a function cluster is set at 00 h, then this is an administration code for the
management of free or reserved sectors.
 
Search WWH ::




Custom Search