Guia de design de cartão inteligente

A DDI de cartão inteligente permite que os chamadores do driver de dispositivo NFC executem operações de cartão inteligentes de baixo nível em cartões inteligentes sem contato NFC. Isso inclui ouvir cartão notificações de chegada/saída, ler metadados dos cartão inteligentes, como informações de ATR, UID e Bytes Históricos, bem como executar operações de leitura/gravação no NFC específico cartão usando APDUs. Para cartões compatíveis com não ISO14443-4 (conhecidos como cartões de armazenamento), a tradução de APDUs para comandos primitivos de baixo nível com suporte no cartão de armazenamento está documentada na seção 4.3.7. As IOCTLs compõem a interface do driver de dispositivo SMARTCARD e todas elas usam FILE_ANY_ACCESS e METHOD_BUFFERED. A DDI de cartão inteligente abaixo é o subconjunto mínimo das IOCTLs do driver de Cartão Inteligente especificadas pelo Windows [1] para dar suporte ao acesso a cartão inteligentes sem contato NFC.

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

IOCTLs sem suporte

As IOCTLs a seguir não têm suporte para a operação de cartão inteligente NFC porque não são aplicáveis à operação de cartão inteligente sem contato, portanto, o driver pode retornar um código de erro sem suporte:

  • IOCTL_SMARTCARD_EJECT
  • IOCTL_SMARTCARD_GET_LAST_ERROR
  • IOCTL_SMARTCARD_SWALLOW

Atributos de cartão inteligente

A DDI de cartão inteligente do Windows inclui solicitações IOCTL para atributos Get e Set. Para atender ao requisito mínimo para dar suporte ao leitor sem contato nfc, só damos suporte à GET_ATTRIBUTE para o conjunto mínimo de Estado de Leitor e ICC. Para obter mais informações, consulte Atributos de cartão inteligentes com suporte.

Nesta seção