security mechanism of electronic passportstuma/ciphers12/secmechofpassports.pdf · active...

32
Security Mechanism of Electronic Passports Petr ŠTURC Coesys Research and Development

Upload: others

Post on 12-Jul-2020

0 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Security Mechanism of Electronic Passportstuma/ciphers12/SecMechOfPassports.pdf · Active Authentication - issues EF.COM not in SOD Challenge semantic – Active authentication gives

Security Mechanism of

Electronic Passports Petr ŠTURC

Coesys Research and Development

Page 2: Security Mechanism of Electronic Passportstuma/ciphers12/SecMechOfPassports.pdf · Active Authentication - issues EF.COM not in SOD Challenge semantic – Active authentication gives
Page 3: Security Mechanism of Electronic Passportstuma/ciphers12/SecMechOfPassports.pdf · Active Authentication - issues EF.COM not in SOD Challenge semantic – Active authentication gives
Page 4: Security Mechanism of Electronic Passportstuma/ciphers12/SecMechOfPassports.pdf · Active Authentication - issues EF.COM not in SOD Challenge semantic – Active authentication gives
Page 5: Security Mechanism of Electronic Passportstuma/ciphers12/SecMechOfPassports.pdf · Active Authentication - issues EF.COM not in SOD Challenge semantic – Active authentication gives
Page 6: Security Mechanism of Electronic Passportstuma/ciphers12/SecMechOfPassports.pdf · Active Authentication - issues EF.COM not in SOD Challenge semantic – Active authentication gives

Smartcard

CPU 16/32 bit

3.57MHz (20MHz)

1.8 / 3/ 5 V

ROM 16-300 kB

RAM 1-8 kB

EEPROM 8-128kB

Page 7: Security Mechanism of Electronic Passportstuma/ciphers12/SecMechOfPassports.pdf · Active Authentication - issues EF.COM not in SOD Challenge semantic – Active authentication gives

Contactless communication

Not RFID! f = 13.56 MHz Near-field range <10cm (300/2πf) Power via induction Signal via modulation ISO 14443

Page 8: Security Mechanism of Electronic Passportstuma/ciphers12/SecMechOfPassports.pdf · Active Authentication - issues EF.COM not in SOD Challenge semantic – Active authentication gives

Contactless communication

Page 9: Security Mechanism of Electronic Passportstuma/ciphers12/SecMechOfPassports.pdf · Active Authentication - issues EF.COM not in SOD Challenge semantic – Active authentication gives

ePassport with Biometric Data 18.11.2009

9

Threats vs. security mechanisms

Page 10: Security Mechanism of Electronic Passportstuma/ciphers12/SecMechOfPassports.pdf · Active Authentication - issues EF.COM not in SOD Challenge semantic – Active authentication gives

ICAO Security Mechanisms

Page 11: Security Mechanism of Electronic Passportstuma/ciphers12/SecMechOfPassports.pdf · Active Authentication - issues EF.COM not in SOD Challenge semantic – Active authentication gives

RSA vs. ECC

Comparison on same chip of signature operation

0

500

1000

1500

2000

2500

3000

1024 2048

Key size (equivalent RSA)

Ex

ec

uti

on

tim

e in

ms

RSA CRT mode

RSA standard mode

ECC

Comparison on same chip of verification

operation

0

50

100

150

200

250

300

350

1024 2048

Key size( equivalent RSA)

Tim

e i

n m

s

RSA verify

ECC verify

Comparison on same chip of key generation

0

10

20

30

40

50

60

1024 2048

Key size( equivalent RSA)

Tim

e i

n s

eco

nd

RSA key generation

ECC key generation

ECC wins the signature and Key generation match.

RSA wins the verification match but ECC stays reasonable

WARNING: Results are chip dependant

ECC : 113ms and 147 ms

Page 12: Security Mechanism of Electronic Passportstuma/ciphers12/SecMechOfPassports.pdf · Active Authentication - issues EF.COM not in SOD Challenge semantic – Active authentication gives

Passive Authentication (PA)

Page 13: Security Mechanism of Electronic Passportstuma/ciphers12/SecMechOfPassports.pdf · Active Authentication - issues EF.COM not in SOD Challenge semantic – Active authentication gives

Document Signer Features: Keypair generation, CSR generation (ASN.1 templates, cross-

signatures), Certificate storage SOD generation (from ASN.1 templates) Key selection strategies (explicit selection, round-robin,

“optimal”, …) Multiple domains Connector for Coesys Prod Manager Management GUI modularity

Supported crypto: SW (RSA, RSA-PSS, ECC) Luna 3000 HSM (RSA, RSA-PSS, ECC ) KMS (RSA, RSA-PSS)

Page 14: Security Mechanism of Electronic Passportstuma/ciphers12/SecMechOfPassports.pdf · Active Authentication - issues EF.COM not in SOD Challenge semantic – Active authentication gives

UK e-passport “attack”

Page 15: Security Mechanism of Electronic Passportstuma/ciphers12/SecMechOfPassports.pdf · Active Authentication - issues EF.COM not in SOD Challenge semantic – Active authentication gives
Page 16: Security Mechanism of Electronic Passportstuma/ciphers12/SecMechOfPassports.pdf · Active Authentication - issues EF.COM not in SOD Challenge semantic – Active authentication gives

ICAO PKD

Page 17: Security Mechanism of Electronic Passportstuma/ciphers12/SecMechOfPassports.pdf · Active Authentication - issues EF.COM not in SOD Challenge semantic – Active authentication gives

Active Authentication (AA)

Accessible memory

Protected memory

Inspection System

e-passport CPU

READ AA PUB KEY

SEND RND NOUNCE

GET AA PRIV KEY

ANSWER SIGNED NOUNCE

VERIFY

Page 18: Security Mechanism of Electronic Passportstuma/ciphers12/SecMechOfPassports.pdf · Active Authentication - issues EF.COM not in SOD Challenge semantic – Active authentication gives

Active Authentication - issues

EF.COM not in SOD

Challenge semantic – Active authentication gives non-repudiation (possibility to track the passport holder and have a proof) – Passport receives “random” string r from a terminal

and respond with signature S(Kpr, r) where Kpr is passport’s private key. Terminal can hide a meaning into the random r (e.g. r = date||time||location)

– Can be solved by Chip Authentication (part of EAC)

Page 19: Security Mechanism of Electronic Passportstuma/ciphers12/SecMechOfPassports.pdf · Active Authentication - issues EF.COM not in SOD Challenge semantic – Active authentication gives

Basic Access Control (BAC) Inspection System

MACHINE READABLE ZONE (MRZ)

PASSPORT NR. | DATE OF BIRTH | DATE OF EXPIRY

SHA-1

KSEED | 00000001 (for KENC )

SHA-1

00000002 (for KMAC )

KENC/MAC = 3DES KEY (16 BYTES) NOT USED (4 BYTES)

Page 20: Security Mechanism of Electronic Passportstuma/ciphers12/SecMechOfPassports.pdf · Active Authentication - issues EF.COM not in SOD Challenge semantic – Active authentication gives

Inspection System

Basic Access Control (BAC) Accessible memory

Protected memory

e-passport CPU

KENC + KMAC

KEY KENC

KEY KMAC

SECURE CHANNEL

3DES encryption + MAC

Page 21: Security Mechanism of Electronic Passportstuma/ciphers12/SecMechOfPassports.pdf · Active Authentication - issues EF.COM not in SOD Challenge semantic – Active authentication gives

ePassport Chip 12.05.2009

21

GET_CHALLENGE()

RND.ICC

E-PassportInspection System

Generate random number for challenge RND.ICC

Generate random number RND.IFD and keying material K.IFD

S=RND.IFD||RND.ICC||K.IFD

E_IFD=E[KENC](S)

M_IFD=MAC[KMAC](E_IFD)

MUTUAL_AUTHENTICATE(E_IFD||M_IFD)

E_ICC||M_ICC

Check M_IFD

Decrypt E_IFD

Check that RND.ICC from S is the correct value

Generate keying material K.ICC

R=RND.ICC||RND.IFD||K.ICC

E_ICC=E[KENC](R)

M_ICC=MAC[KMAC](E_ICC)

Check M_ICC

Decrypt E_ICC

Check that RND.IFD from R is the correct value

Basic Access Control - Detailed

Page 22: Security Mechanism of Electronic Passportstuma/ciphers12/SecMechOfPassports.pdf · Active Authentication - issues EF.COM not in SOD Challenge semantic – Active authentication gives

Belgian passport “attack”

Page 23: Security Mechanism of Electronic Passportstuma/ciphers12/SecMechOfPassports.pdf · Active Authentication - issues EF.COM not in SOD Challenge semantic – Active authentication gives

Extended Access Control (EAC)

Page 24: Security Mechanism of Electronic Passportstuma/ciphers12/SecMechOfPassports.pdf · Active Authentication - issues EF.COM not in SOD Challenge semantic – Active authentication gives

Chip Authentication (CA)

Ephemeral–Static (EC)-Diffie-Hellman Chip:

Chip individual static key pair Public Key stored in the DG14(signed) Private Key stored in secure memory

Terminal: Ephemeral key pair dynamically chosen by the terminal

ECDH (224Bit) asymmetric key agreement 3DES (112Bit) symmetric encryption / integrity protection

Diffie-Hellman key exchange

(DH or ECDH)

Inspection System

Accessible memory

Protected memory

e-passport CPU

Secure channel

(3DES + MAC)

Page 25: Security Mechanism of Electronic Passportstuma/ciphers12/SecMechOfPassports.pdf · Active Authentication - issues EF.COM not in SOD Challenge semantic – Active authentication gives

Chip Authentication - Detailed

READ_BINARY()

PKICC,DICC

E-PassportInspection System

Read Chip Authentication public key of the ICC (PKICC) and domain parameters

DICC from the EF.DG14

MSE_SET_KAT(PKIFD)Generate ephemeral key pair PKIFD,

SKIFD

K=KA(SKICC, PKIFD, DICC)K=KA(SKIFD, PKICC, DICC)

Page 26: Security Mechanism of Electronic Passportstuma/ciphers12/SecMechOfPassports.pdf · Active Authentication - issues EF.COM not in SOD Challenge semantic – Active authentication gives

Terminal Authentication (TA)

Accessible memory

e-passport CPU

Inspection System

Present certificate(s)

CVCA

Send RND challenge

Challenge signed by private key

RSA or ECDSA

Problem! Verify cert = signature + expiration + revocation

VERIFY

VERIFY

Page 27: Security Mechanism of Electronic Passportstuma/ciphers12/SecMechOfPassports.pdf · Active Authentication - issues EF.COM not in SOD Challenge semantic – Active authentication gives

Terminal Authentication – Detailed

E-PassportInspection System

EF.CVCA

READ_BINARY()

MSE_SET_DST

PSO_VERIFY_CERTIFICATE

MSE_SET_AT

GET_CHALLENGE

EXTERNAL_AUTHENTICATE

Read CVCA references

Set the reference to the public key

Verify certificate

Set the reference to the public key

RICC

Calculate signature SIFD= Sign( SKIFD, IDICC||RICC||H(PKIFD))

Verify signature

Page 28: Security Mechanism of Electronic Passportstuma/ciphers12/SecMechOfPassports.pdf · Active Authentication - issues EF.COM not in SOD Challenge semantic – Active authentication gives

EAC Cross-certification

Page 29: Security Mechanism of Electronic Passportstuma/ciphers12/SecMechOfPassports.pdf · Active Authentication - issues EF.COM not in SOD Challenge semantic – Active authentication gives

Machine Readable Travel Documents – Extended Access Control

CVCA

DV

IS

Examples of validity periods: – CVCA certificate : 2 years – DV Certificate : 3 months – IS Certificate : 1 month

Certificate renewal

Page 30: Security Mechanism of Electronic Passportstuma/ciphers12/SecMechOfPassports.pdf · Active Authentication - issues EF.COM not in SOD Challenge semantic – Active authentication gives

Extended Access Control v2 a.k.a “3rd generation e-passport”

Page 31: Security Mechanism of Electronic Passportstuma/ciphers12/SecMechOfPassports.pdf · Active Authentication - issues EF.COM not in SOD Challenge semantic – Active authentication gives

PACE v2 Password Authenticated Connection Establishment

Page 32: Security Mechanism of Electronic Passportstuma/ciphers12/SecMechOfPassports.pdf · Active Authentication - issues EF.COM not in SOD Challenge semantic – Active authentication gives

Benin 2010

Training of operators