简体   繁体   中英

Desfire EV1 Card using NXP SDK

My agency just got their first prototype desfire card that is anticipated to go into production (50K employee agency). I'm trying to connect to, authenticate and read a particular file. So when I present my android device, onDESFIRECardDetected is fired. I connect to the tag (desfire object), authenticate by passing my agency's master and app key and providing the appId. My next step is to try to read a particular file within the application. I don't see any method that accepts the fileId??? I see the command 'Read(int iNoOfBytes)', which the javadoc states, "iNoOfBytes - Number of bytes to read", but from where???. However, when I run my application and put in an arbitrary value for the parameter (eg say, 1), an exception is thrown stating, "File Not Found".

Basically, how do I read a particular FileID within an application for a Desfire card using the SDK???

So after consulting with nxp the last couple of days, it turns out this is a limitation with the LITE version. I was told this ability will be available in the advanced version but as of this post, it is not available.

Yes, you are right. Only limited support to DESFire is provided by lite version. Most feature provided by DESFire is not included in the lite version, specially the security related operation. This could be done using api in advanced SDK:

byte[] readData(int fileNo,
          int offset,
          int length,
          DESFireEV1.CommunicationType comSettings);

Or, you need to read the MF3ICD81 functional specification and do all the things from the scratch.

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM