Getting to know your card: Reverse-engineering the smart-card application protocol data unit

Andriana Gkaniatsou, Fiona McNeill, Alan Bundy, Graham Steel, Riccardo Focardi, Claudio Bozzato

Research output: Chapter in Book/Report/Conference proceedingConference contribution

7 Citations (Scopus)


Smart-cards are considered to be one of the most secure, tamperresistant, and trusted devices for implementing confidential operations, such as authentication, key management, encryption and decryption for financial, communication, security and data management purposes. The commonly used RSA PKCS11 standard defines the Application Programming Interface for cryptographic devices such as smart-cards. Though there has been work on formally verifying the correctness of the implementation of PKCS11 in the API level, little attention has been paid to the low-level cryptographic protocols that implement it. We present REPROVE, the first automated system that reverseengineers the low-level communication between a smart-card and a reader, deduces the card's functionality and translates PKCS11 cryptographic functions into communication steps. REPROVE analyzes both standard-conforming and proprietary implementations, and does not require access to the card. To the best of our knowledge, REPROVE is the first system to address proprietary implementations and the only system that maps cryptographic functions to communication steps and on-card operations. We have evaluated REPROVE on five commercially available smart-cards and we show how essential functions to gain access to the card's private objects and perform cryptographic functions can be compromised through reverse-engineering traces of the low-level communication.

Original languageEnglish
Title of host publicationProceedings of the 31st Annual Computer Security Applications Conference (ACSAC 2015)
PublisherAssociation for Computing Machinery
Number of pages10
ISBN (Print)978-1-4503-3682-6
Publication statusPublished - 7 Dec 2015
Event31st Annual Computer Security Applications Conference 2015 - Los Angeles, United States
Duration: 7 Dec 201511 Dec 2015


Conference31st Annual Computer Security Applications Conference 2015
Abbreviated titleACSAC 2015
Country/TerritoryUnited States
CityLos Angeles


  • APDU attacks
  • APDU formal modeling
  • PKCS11 low-level attacks
  • Smart-card reverse-engineering

ASJC Scopus subject areas

  • Human-Computer Interaction
  • Computer Networks and Communications
  • Computer Vision and Pattern Recognition
  • Software


Dive into the research topics of 'Getting to know your card: Reverse-engineering the smart-card application protocol data unit'. Together they form a unique fingerprint.

Cite this