Don't feel intimidated by what you don't know. Ask your question anonymously. It's easy! Learn more and upgrade.

Hi,

I am trying to understand the conversion of binary code into hex for access bits on mifare cards. Nxp has plenty of free pages on this but I'm obviously missing some under standing on how the values in the documents relate to what is programed into the card e.g Ff0708 converts to C1 c2 c3 which equals the binary value of 001

I'm sure I'm not giving enough info so ask and I will answer where I can

Thanks

I am trying to understand the conversion of binary code into hex for access bits on mifare cards. Nxp has plenty of free pages on this but I'm obviously missing some under standing on how the values in the documents relate to what is programed into the card e.g Ff0708 converts to C1 c2 c3 which equals the binary value of 001

I'm sure I'm not giving enough info so ask and I will answer where I can

Thanks

1 Solution

http://www.nxp.com/acrobat_download2/other/identification/m043531.pdf

The order of the bits and bytes isn't quite lining up so I'm not sure if I have the right specification document, but yours is at least very similar.

The C1 C2 C3 that you are referring to are the sector trailer. The hex code you have posted is the entirety of the access bits. The are split into 4-bit pieces in the discussion. Half the code is the exact same as the other half except all the bits are inverted (0->1 and 1->0).

Ff0708 = 1111 1111 0000 0111 0000 1000

As you can see, 0111 is the inverse of 1000 as are 1111 and 0000

The C1, C2, and C3 are the highest order bits in their respective characters.

It appears that the 0000, 0000, and 1000 are the characters for C1C2C3. So since the first bits in each are 0, 0, and 1 then C1C2C3 = 001. The other bits mean other things.

Tackle projects and never again get stuck behind a technical roadblock.

Join Now
i.e. F (Hex) = 1 1 1 1 (Bin) = 15 (Dec)

1 (Hex) = 0 0 0 1 (Bin) = 1 (Dec)

2 (Hex) = 0 0 1 0 (Bin) = 2 (Dec)

4 (Hex) = 0 1 0 0 (Bin) = 4 (Dec)

8 (Hex) = 1 0 0 0 (Bin) = 8 (Dec)

A (Hex) = 1 0 1 0 (Bin) = 10 (Dec)

hope that helps