Physical Address
304 North Cardinal St.
Dorchester Center, MA 02124
Physical Address
304 North Cardinal St.
Dorchester Center, MA 02124
ISO/IEC 25185-1:2024 establishes the general framework and foundational concepts for card security within the ISO/IEC identification card ecosystem. Published in its first edition, this standard addresses the growing need for a unified security architecture that spans payment cards, identity cards, access control credentials, and emerging use cases such as digital driver’s licenses and mobile embedded secure elements. For security engineers, the standard provides a threat-model-driven approach to defining security objectives and selecting appropriate cryptographic mechanisms.
The standard defines five threat categories: (T1) physical tampering and side-channel attacks, (T2) logical attacks including malware and protocol manipulation, (T3) cloning and counterfeiting, (T4) privacy compromise through unauthorized data access or tracking, and (T5) denial of service against card infrastructure. For each category, the standard maps mandatory and optional security objectives that a compliant card system must address.
From an engineering perspective, this threat taxonomy is the most valuable contribution of the standard. It forces product architects to systematically consider attack vectors rather than reactively patching vulnerabilities. For example, T4 (privacy) objectives require that card identifiers used in contactless transactions be diversified or session-specific — a design choice that directly influenced EMV contactless specifications and Apple Pay’s device account number scheme.
| Threat Category | Attack Vector | Security Objective | Typical Countermeasure |
|---|---|---|---|
| T1 — Physical | Probing, glitching, side-channel (DPA/SPA) | Tamper resistance, leakage resilience | Secure element with active shield, noise injection |
| T2 — Logical | Protocol downgrade, buffer overflow, relay attack | Secure channel, authenticated encryption | Session key agreement (ECDH), MAC-then-Encrypt |
| T3 — Cloning | Memory readout, key extraction | Uniqueness, hardware-bound key storage | Physically unclonable function (PUF), eFuse |
| T4 — Privacy | Tracking via static ID, data leakage | Data minimization, unlinkability | Pseudonymous identifiers, on-card data filtering |
| T5 — DoS | RF jamming, transaction flooding | Availability, fail-safe modes | Rate limiting, offline fallback with risk parameters |
The framework requires support for mutual authentication between the card and the terminal, using either symmetric (AES-128/256 with CMAC) or asymmetric (ECDSA or RSA-PSS) mechanisms. Session key derivation must use a key agreement protocol that provides perfect forward secrecy (PFS). For privacy-sensitive applications, the card must support ephemeral key generation per transaction.
Key management is addressed at three levels: (L1) personalization key injection at the manufacturing stage, (L2) application-level keys for post-issuance updates, and (L3) session keys for each transaction. The standard mandates that L1 keys never leave the secure element in plaintext — a requirement that has significant implications for the card personalization supply chain.
A practical insight from deploying 25185-1-compliant systems: the standard’s layered approach maps naturally to a multi-microcontroller architecture where a dedicated security co-processor handles all cryptographic operations and key storage, while a separate application processor runs the card operating system and file system. This separation enforces the T1 (tamper resistance) objective by reducing the attack surface exposed to logical bugs in the application layer.
For contactless interfaces, the standard recommends limiting the data returned during the anti-collision and selection phases to a minimum — only the application identifier (AID) and an application label. Any additional data should require explicit terminal authentication. This recommendation addresses the privacy concerns raised by early MIFARE implementations that transmitted card metadata in cleartext during the polling phase.