RFID identifier in big-endian byte order

107 Views Asked by At

I've been researching scanning RFID cards with an iphone and hit a point where I have no idea how to move forward with it. Using Apple's CoreNFC library I can scan a card and get it's identifier, the documentation has this to say about that identifier - The identifier data is in big-endian byte order.

https://developer.apple.com/documentation/corenfc/nfciso15693tag/2882078-identifier

I might be mistaken but my understanding is that this identifier can be decoded into some format of human readable/ parsable data, I've seen this big-endian byte order mentioned before with bluetooth identifier data so I would love to figure out what it means & potentially how to decode the data.

If anyone can point me in the right direction with this that would appreciated!

Here's an example identifier - e0162466270e24b4

Edit -

This might have just clicked, there isn't technically human readable data but the identifier is in hex format and if you convert that to binary the data is then stored in the 1's/0's in reverse order. e0162466270e24b4 converts to 1110000000010110001001000110011000100111000011100010010010110100 which is 64 bits & adds up.

2

There are 2 best solutions below

0
Andrew On

It is human readable as Hex.

The identifier has some meaning, if you look at ISO 14442-3 Section 6.4.4 you can see that the first Hex byte has a meaning, double and triple it should denote the manufacturer of the Tag as per ISO 7816-6. A list of some is found here

But there are NFC Tags available where the ID is changeable, so there is no guarantee, that the manufacturer is correct or that the ID is unique.

0
Vladimir Tsykunov On

In "NFC Activity Specification (technical specification)" in chapter 9 it is said that NFC communication process consists of the following steps:

  1. Technology Detection
  2. Collision Resolution
  3. Device Activation
  4. Data exchange
  5. Device Deactivation

The id consists of a few bytes and is sent during the step 2 (Collision resolution). The id contains only manufacturer opcode and device opcode.

And what you want - information in human readable format - is exchanged during step 4 (Data exchange) Depending on the tag type this information maybe quite different. For example it can be NDEF record which may contain web address, phone number, postal code and so on. You can read about NDEF here