Smart card DDI and command reference

This section contains the smart card DDI and command reference. For more information about using these DDIs, see the Smart card design guide.

The following GUID is used to identify the smart card device interface class, also defined in winsmcrd.h:

GUID_DEVINTERFACE_SMARTCARD_READER “{50DD5230-BA8A-11D1-BF5D-0000F805F530}”

Smart card DDI overview

Usage DDI
Smart card states IOCTL_SMARTCARD_GET_STATE IOCTL_SMARTCARD_IS_ABSENT IOCTL_SMARTCARD_IS_PRESENT IOCTL_SMARTCARD_POWER
Smart card attributes IOCTL_SMARTCARD_GET_ATTRIBUTE IOCTL_SMARTCARD_SET_ATTRIBUTE
smart card communication IOCTL_SMARTCARD_SET_PROTOCOL IOCTL_SMARTCARD_TRANSMIT
Identify a smart card I/O request SCARD_IO_REQUEST

 

APDU requirements for storage cards

These topics describe the general command set requirements for storage cards.

Command Description
Get-Data command Retrieve information from the contactless NFC tag/card
Read-Binary command Read data from the contactless NFC tag/card
Update-Binary command Write data to the contactless NFC tag/card
Load-Key command Store MIFARE keys in the driver
General-Authenticate command Perform the authentication sequence on a MIFARE card
Manage Session command Implement this command per the PCSC specification
Transparent exchange command For transparent exchange of commands to storage cards

 

Smart card attributes

On the Windows Smart Card DDI, there are IOCTL requests for Get and Set attributes. In order to meet the minimum requirement to support NFC contactless reader, we only support the GET_ATTRIBUTE for the minimum set of Reader and ICC State. For more information, see Supported smart card attributes.

Near field communication (NFC) design guide

Smart card design guide

 

 

Send comments about this topic to Microsoft