Questions tagged [apdu]

APDU stands for "Application Protocol Data Unit". An APDU is used to communicate with smart cards and Subscriber Identity Modules (SIMs) conforming to standard ISO/IEC 7816-4.

From www.jguru.com:

The APDU (Application Protocol Data Unit) is the communication unit between a reader and a card. The structure of an APDU is defined by the ISO 7816 standards.

There are two categories of APDUs: command APDUs and response APDUs. As the name implies, the former is sent by the reader to the card: it contains a mandatory 5-byte header and from 0 to up to 255 bytes of data. The latter is sent by the card to the reader: it contains a mandatory 2-byte status word and from 0 to up to 256 bytes of data.

764 questions
7
votes
2 answers

Get UID of Mifare Ultralight with SCL010

I want get the UID of the Mifare Ultralight NFC tag. In Java I have this code: TerminalFactory factory = TerminalFactory.getDefault(); List terminals = factory.terminals().list(); System.out.println("Terminals: " +…
Tom
  • 4,007
  • 24
  • 69
  • 105
7
votes
3 answers

KitKat: How to route APDUs to the SIM

I want to route APDUs I get from an NFC Reader to the SIM Card. According to the HCE documentation I thought it would be possible simply by creating an OffHostApduService with the according routing-entries (which I did). Sadly, the SIM does not…
charno
  • 474
  • 6
  • 14
6
votes
1 answer

How can I send APDU to SIM card in android applications?

I know about the SEEK solution, but it does not fit my req. I know there are some internal APIs that can do some, but it limits the functions.I need to send evenlope APDU to SIM and get the response. thanks!
goodkid
  • 61
  • 1
  • 3
6
votes
1 answer

Reading information from the smart card by secure messaging

I have tachograph company card which is used to get the client authenticated before allowing him to download the data of the tachograph by the remote download. The used APDU command in my code below are commands of successfully authentication…
Mr Asker
  • 2,300
  • 11
  • 31
  • 56
6
votes
1 answer

Reading EMV card's serial number

I am trying to read an EMV card. As specified for EMV cards, a tag called "9F1E", holds a permanent serial number specified by the issuer (see https://www.eftlab.co.uk/index.php/site-map/knowledge-base/145-emv-nfc-tags). However, I could not…
bafla
  • 1,029
  • 1
  • 10
  • 14
6
votes
2 answers

How to read file from smart card using java

I am new in smart card technology. I want to read file from smart card. I am using javax.smartcardio to read value. I developed some code to connecting system to card (That's work fine). I have card ATR and other detail also. But not getting proper…
Krunal Indrodiya
  • 782
  • 2
  • 7
  • 19
6
votes
2 answers

Sign App with UICC Carrier Privileges Certificates

I was reading information on this link in regards to signing an application with carrier privileges. I am aware of how to sign an application using a keystore for production releases, but how do I add UICC certificates to my app so it gets carrier…
CompEng88
  • 1,336
  • 14
  • 25
6
votes
3 answers

Safe Max Java Card APDU Data Command and Respond Size

What is the recommended data field size in a Java Card APDU ? From Zhiqun Chen's Java Card Technology for Smart Cards: Architecture and Programmer's Guide book, it mentions that Le field allows a max of 255. Are we to interpret it as follow for the…
thotheolh
  • 7,040
  • 7
  • 33
  • 49
6
votes
1 answer

Read DIN (Driver Identification Number) from a smart card (drivercard)

I'd like to know how to get a DIN (Driver Identification Number) from a smartcard. The card is a driver card, used to store tachograph data. I can already communicate with the smartcard reader but I don't have a clue about how to read that…
Not Important
  • 762
  • 6
  • 22
6
votes
2 answers

How mature is the Android NFC ISODep support?

I understand that this is a "discussion" topic that has no definite answer, but I would really like some feedback on what to expect when developing NFC APPs for Android, in particular using IsoDep to communicate with DESFire cards using APDU…
Karl Ivar Dahl
  • 1,023
  • 2
  • 11
  • 23
6
votes
2 answers

How to send response APDU containing return data AND status word other than 0x9000?

I would like to send a response APDU containing a response data field as well as a status word that is not 0x9000. Considering my understanding of ISO 7816-4 this should be possible in general. However, whenever I specify return data and try to send…
Thomas Lieven
  • 371
  • 4
  • 14
6
votes
1 answer

Android NFC communication with Mifare DESFire EV1

Using a Nexus 4 and the latest Android API level 18 to communicate with a Mifare DESFire EV1 AES tag is giving me a headache. Following the NXP native protocol in order to write and read this type of tag, these steps must be followed: Select…
GoRoS
  • 5,183
  • 2
  • 43
  • 66
6
votes
3 answers

How to send APDU commands to a smartcard using Windows Phone 8 NFC application

I need to build a Windows Phone 8 application that can communicate with a smartcard using simple APDU commands. The smartcard contains data which my application needs to present on the phones UI. We currently have Android and IOS apps doing this,…
Nick Wright
  • 1,403
  • 13
  • 19
6
votes
3 answers

Card emulation via software NFC

After reading a lot of questions, i decided to post this one. I read that stock version of android does not support API's for card emulation. Also, we cannot write custom applications to secure element embedded in nfc controllers due to keys managed…
user720694
  • 2,035
  • 6
  • 35
  • 57
5
votes
2 answers

Mifare Ultralight C Authentication in Android (2.3.6)

I'm trying to authenticate a Mifare Ultralight C (ISO/IEC 14443-2 and 14443-3 type A compatible) tag. I send the authentication command with the MifareUltralight.transceive() function provided in Android. I have also checked NfcA.transceive()…
Miguel
  • 53
  • 1
  • 6
1 2
3
50 51