2
votes

Apart from what is shown in the NXP websites regarding mifare plus and mifare desfire, considering the following factors:

  1. Security
  2. Speed of Readability
  3. When stuck with a ferrite layer so that it can be stuck on a phone, which is better?
  4. In the future if we want to get into payments, what is preferred?
  5. The size of the nfc tag stickers are going to be 35mm diameter, does it make a difference what is the tag that is used?
  6. The tags are going to be interacting with an nfc reader which is plugged in to an Android device. From an android POV, which is better? For ease of development and for more functionality which is more appropriate?

Thanks

2
Neither of those (except may the second part of 6) are programming questions.Nikolay Elenkov
And only question 1 is a security question otherwise I'd offer to take it over on security stack exchange :-)Rory Alsop
Can i edit the question to say (please answer whatever is possible?) :)gaara87

2 Answers

11
votes

MIFARE Plus is really meant as an upgrade for existing MIFARE Classic-based systems. It has a mode which is backward compatible with MIAFRE CLassic. It has the same fixed memory structure as MIFARE Classic: sectors with 3 blocks of 16 bytes of data and a block for the 2 access control keys. It is not ISO 14443-4 compliant.

MIFARE DESFire has a flexible memory structure: up to 28 "applications" (a kind op directories) with up to 32 files each. Access control is very flexible, too. It is ISO 14443-4 compliant and it can communicate in an ISO 7816-4 compliant mode. It can be configured as an NFC Forum Type 4 Tag, so that compliant systems (such as Android devices with NFC) will automatically read out the NDEF message. It is used in some payment systems.

EDIT:

The 2 products strive for somewhat different security goals, I would say. DESFire offers AES and 3DES for maximum flexibility, with encrypted, MACed or plain communication: your choice. Each application and file can be configured with its own access control keys. While MIFARE Plus aims to improve the security of MIFARE Classic, but its functionality is for the rest very similar to it. In addition, MIFARE Plus has a proximity check feature, while DESFire has no such thing.

They both support the same reading speeds (check the specs!). They will both perform OK on a ferrite layer and an antenna size of 35mm sounds OK. I have such DESfire tags, with and without ferrite, that work fine with an Android phone.

For ease of development, my preference is with DESFire. It is more flexible, both in communication options and data storage configuration. If you have an Android device with NFC capability, you can even configure DESFire as Type 4 Tag, which means that Android will read out any NDEF data automatically and deliver it to your app in an intent.

4
votes

You seem to have an awful lot of questions here, some of which may not actually be relevant, but here goes:

  1. Security - the DESFire has greater security functionality, gaining Common Criteria EAL 4+
  2. Speed of Readability - They both can handle 848 kbit/sec
  3. When stuck with a ferrite layer so that it can be stuck on a phone, which is better? - not really a question. They both cope with it, but I'd recommend glue as it is a better physical solution to prevent accidental loss.
  4. In the future if we want to get into payments, what is preferred? - the DESFire has greater security functionality, so I would recommend it over the Plus
  5. The size of the nfc tag stickers are going to be 35mm diameter, does it make a difference what is the tag that is used? - Form factor looks identical, so no.
  6. The tags are going to be interacting with an nfc reader which is plugged in to an Android device. From an android POV, which is better? For ease of development and for more functionality which is more appropriate? - The command sets are similar, with the DESFire having an extra set of commands and the capability to run more applications, so based on your comment regarding functionality the DESFire offers more options.