Confidentiality: unauthorized disclosure of information
Integrity: unauthorized modification of information Authenticity: unauthorized use of service sender receiver Smart card concepts A smart card: can store data (e.g. profiles, balances, personal data) provides cryptographic services (e.g. authentication, confidentiality, integrity) is a microcomputer is small and personal is a secure device
1234 5678 8910 Anne Doe Smart card application areas Communication Entertainment Retail Transportation Health care Government E-commerce E-banking Education Office
Smart card applications (1) Retail Sale of goods using Electronic Purses, Credit / Debit Vending machines Loyalty programs Tags & smart labels Communication GSM Payphones
Transportation Public Traffic Parking Road Regulation (ERP) Car Protection
Entertainment Pay-TV Public event access control Smart card applications (2) Healthcare Insurance data Personal data Personal file
Government Identification Passport Driving license E-commerce sale of information sale of products sale of tickets, reservations
E-banking access to accounts to do transactions shares Smart card applications (3) Educational facilities Physical access Network access Personal data (results) Copiers, vending machines, restaurants, ...
Office Physical access Network access Time registration Secure e-mail & Web applications
Smart card architecture Vcc Reset Clock Gnd Vpp I/O Physical appearance: Credit card or SIM dimensions Contacts or contactless
Whats inside a smart card ? CPU
Central Processing Unit:
heart of the chip Whats inside a smart card ? CPU
security logic security logic:
detecting abnormal conditions, e.g. low voltage Whats inside a smart card ? CPU
serial i/o interface security logic serial i/o interface:
contact to the outside world Whats inside a smart card ? CPU
test logic serial i/o interface security logic test logic:
self-test procedures Whats inside a smart card ? CPU
test logic ROM serial i/o interface security logic ROM:
card operating system self-test procedures typically 16 kbytes future 32/64 kbytes Whats inside a smart card ? CPU
RAM test logic ROM serial i/o interface security logic RAM:
scratch pad of the processor
typically 512 bytes future 1 kbyte Whats inside a smart card ? CPU
RAM test logic ROM EEPROM serial i/o interface security logic EEPROM:
cryptographic keys PIN code biometric template balance application code typically 8 kbytes future 32 kbytes Whats inside a smart card ? CPU
RAM test logic ROM EEPROM serial i/o interface security logic databus databus:
connection between elements of the chip
8 or 16 bits wide Smart card chip Basic smart card security features Hardware closed package memory encapsulation fuses security logic (sensors) cryptographic coprocessors and random generator Software decoupling applications and operating system application separation (Java card) restricted file access life cycle control various cryptographic algorithms and protocols Smart card attacks Internal Attacks Side Channel Attacks Logical Attacks Internal Attacks etching tools Microscope Probe station laser cutters Scanning Electron Microscope Focussed Ion Beam System and more. Lab pictures provided by TNO Reverse engineering Staining of ion implant ROM array Sub micron probe station Probing with eight needles FIB: fuse repair Internal attack counter measures Alarm (sensors) light active grid Hide feature size (< 300 nm) multi-layer buried bus bus scrambling shield Confuse glue logic redundant logic
Logical attacks Communication Command scan File system scan Invalid / inopportune requests Crypt-analysis and protocol abuse Logical attack counter measures Command scan limit command availability restrict and verify command coding life cycle management File system scan restrict file access test file access mechanisms (PIN. AUT, etc) Invalid / inopportune requests exclude non-valid behaviour verify conformance Crypt analysis and protocol abuse publish algorithms and initiate public discussion evaluate crypto algorithm and protocol
Side channel Attacks Use of hidden signals electromagnetic emission power consumption timing Insertion of signals power glitches electromagnetic pulses
Power analysis peak slope time I ddq area shape Power waveform Fault injection on smart cards Change a value read from memory to another value by manipulating the supply power: Threshold of read value A power dip at the moment of reading a memory cell Side channel attack counter measures Signal analysis reduce processor signal by balancing or equalising the power and/or shielding the emission add noise to the processor activity (both in time and amplitude) eliminate timing relation with processed key and or data variable ordering of processes blinding of intermediate values with random values retry counters limited control and visibility of crypto input and output Signal insertion use sensors for supply voltage, light and temperature double implementation path (for verification) check for runtime parameter validity Conclusions Smart card technology is emerging, applications are everywhere Smart cards enhance service and security Perfect security does not exist, even not for smart cards Risk analysis is essential