Test the compatibility of a NFC card reader

The following tests need that the NFC card reader is plugged, and that a NFC tag is ready to be read.

1. Test the existance of a PCSC reader

You can test the presence of a minidriver or a CSP by running the command “certutil -scinfo”.

Certutil.exe is a diagnostic tool provided by Microsoft and is installed by default since Windows Vista and Windows 2003. It must be installed on Windows XP using the Windows Server 2003 Administration tool pack.

Positive test

There is a smart card (SCARD_STATE_PRESENT) and the ATR is not empty (3b 8f 80 … 00 6a)

Negative test

If the smart card resource manager is not running, the following message will be shown :

If the smart card reader is empty, aka if the token is not recognized, or if there are other readers (in this case our product EIDVirtual) the following output will be produced :

2. Test for the APDU used to catch the card ID

Retrieve the program scarddemo from codeproject.com and run it.

Select the reader you want to test, then click on Open. The connection should succeed if the previous steps were successful.

Enter the APDU “FFCA000000” and click on APDU.

Positive test

The zone bellow the APDU field must change and its content must be terminated by (9000). The unique ID of the card tested (a Mifare 1k) is FD4D0A31.

Negative test

The field bellow the ATR field is not changed. It is like nothing happened. This is related to the fact that the first byte of the APDU (FF), is an escape command which is in this case not understood by the smart card reader.