A smart card is a small computer packaged in a card, such as a bank card. Unlike a magnetic stripe, it can run programs and protect secrets while performing cryptographic operations. section 13.2.2 section 13.5
Its main components and operating steps are:
- Hardware: a CPU, ROM, RAM, EEPROM, inputs and outputs, and often a hardware random number generator. section 13.2.2
- Applications: contained programs can run on the card; JavaCard is the most popular standard for Java-like applications. section 13.2.2
- Activation: insert the card into a reader, or bring an NFC-enabled card close to one. section 13.2.2
- Security role: bank cards can store a unique per-card secret used to establish that the card is genuine. section 13.2.2
Payment card
A bank card illustrates the model: a card reader turns on the microcomputer, which can use its stored secret and cryptographic capabilities during a transaction. section 13.3 section 13.5
Figure 13.4 The different hardware solutions you learned in this chapter and an idea of what they look like.
Compare smart cards with secure elements, HSMs, TPMs, and TEEs by form factor, role, and deployment context. section 13.3
A smart card raises the cost of physical attacks but is not a complete defense. Strong designs combine hardware and software protections and limit the damage from compromising one device. section 13.5
