secure uhf tags with strong cryptography - rfid secure uhf tags with strong cryptography ... secure...

26
Secure UHF Tags with Strong Cryptography Development of ISO/IEC 18000-63 Compatible Secure RFID Tags and Presentation of First Results Walter Hinz, Klaus Finkenzeller, Martin Seysen Barcelona, February 19 th , 2013

Upload: trancong

Post on 31-Mar-2018

218 views

Category:

Documents


3 download

TRANSCRIPT

Page 1: Secure UHF Tags with Strong Cryptography - RFID Secure UHF Tags with Strong Cryptography ... Secure RFID Tags and Presentation of First Results ... 2013 Slide 9 User Memory Secure

Secure UHF Tags with Strong CryptographyDevelopment of ISO/IEC 18000-63 Compatible

Secure RFID Tags and Presentation of First Results

Walter Hinz, Klaus Finkenzeller, Martin SeysenBarcelona, February 19th, 2013

Page 2: Secure UHF Tags with Strong Cryptography - RFID Secure UHF Tags with Strong Cryptography ... Secure RFID Tags and Presentation of First Results ... 2013 Slide 9 User Memory Secure

Secure UHF Tags with Strong CryptographyFebruary 19th, 2013 Slide 2

Agenda

� Motivation for Secure UHF Tags

� The Rabin-Montgomery Cryptosystem

� Message Flow

� Protocol Extension with Mutual Authentication

� Proof-Of-Concept Implementation

Page 3: Secure UHF Tags with Strong Cryptography - RFID Secure UHF Tags with Strong Cryptography ... Secure RFID Tags and Presentation of First Results ... 2013 Slide 9 User Memory Secure

Secure UHF Tags with Strong CryptographyFebruary 19th, 2013 Slide 3

Agenda

� Motivation for Secure UHF Tags

� The Rabin-Montgomery Cryptosystem

� Message Flow

� Protocol Extension with Mutual Authentication

� Proof-Of-Concept Implementation

Page 4: Secure UHF Tags with Strong Cryptography - RFID Secure UHF Tags with Strong Cryptography ... Secure RFID Tags and Presentation of First Results ... 2013 Slide 9 User Memory Secure

Secure UHF Tags with Strong CryptographyFebruary 19th, 2013 Slide 4

Inductive and radiative RFID Systems

Page 5: Secure UHF Tags with Strong Cryptography - RFID Secure UHF Tags with Strong Cryptography ... Secure RFID Tags and Presentation of First Results ... 2013 Slide 9 User Memory Secure

Secure UHF Tags with Strong CryptographyFebruary 19th, 2013 Slide 5

Secure UHF RFID

Cryptographic protection of UHF RFID systems facilitates novel applications

thanks to its long operating range

Today:

� RF 13,56 MHz: Smart Card OS / 10 cm

� UHF 868 MHz: Non-secure memory / 10 m

Security

Reading range

HF 13.56SCOS

UHFmemory

Power consumptionX 50

SecureUHF

Technolo

gy

Secure UHF RFID:

� Cryptographic security with same operating range

� technological leap

� µController with SCOS � full flexibility in the

choice of authentication protocols

� AES efficiently implemented in hardware

Page 6: Secure UHF Tags with Strong Cryptography - RFID Secure UHF Tags with Strong Cryptography ... Secure RFID Tags and Presentation of First Results ... 2013 Slide 9 User Memory Secure

Secure UHF Tags with Strong CryptographyFebruary 19th, 2013 Slide 6

Agenda

� Motivation for Secure UHF Tags

� The Rabin-Montgomery Cryptosystem

� Message Flow

� Protocol Extension with Mutual Authentication

� Proof-Of-Concept Implementation

Page 7: Secure UHF Tags with Strong Cryptography - RFID Secure UHF Tags with Strong Cryptography ... Secure RFID Tags and Presentation of First Results ... 2013 Slide 9 User Memory Secure

Secure UHF Tags with Strong CryptographyFebruary 19th, 2013 Slide 7

The Rabin-Montgomery Crypto Suite

� Based on the asymmetric cryptosystem by Michael O. Rabin (1979)

� Augmented by a method from Peter Montgomery (1985) to avoid the division of long numbers in modular arithmetic

� Allows cost and energy efficient implementation by combining theRabin and Montgomery algorithms

� Allows non-traceable and confidential identification and authentication

� Does not require a private (secret) key to be stored in a tag� the tag performs only efficient public key operations

� Time consuming private key operations need only be performed by the interrogator

� Can be combined with symmetric mutual authentication,based on AES

Page 8: Secure UHF Tags with Strong Cryptography - RFID Secure UHF Tags with Strong Cryptography ... Secure RFID Tags and Presentation of First Results ... 2013 Slide 9 User Memory Secure

Secure UHF Tags with Strong CryptographyFebruary 19th, 2013 Slide 8

How the RAMON Tag Authentication Works

RAMON is a public key protocol, using four different keys:

� A public key KE , used for encryption. � This is the only key stored on the tag

� A private key(-set) KD , used for decryption� This key is only stored in a secure memory in the interrogator

� An optional key set Ks , KV ,used to validate a signed UID

� As the data length might exceed the buffer capacity of tag or interrogator, response messages are chained

� First response chunk is delivered while ongoing encryption produces more data consecutively� Optimised transaction time

Page 9: Secure UHF Tags with Strong Cryptography - RFID Secure UHF Tags with Strong Cryptography ... Secure RFID Tags and Presentation of First Results ... 2013 Slide 9 User Memory Secure

Secure UHF Tags with Strong CryptographyFebruary 19th, 2013 Slide 9

User Memory

Secure Storage

Information Flow with RAMON Tag Authentication

Optional steps and components are indicated with a dashed line .

Step n of the information flown

Tag

Secure Storage

Generate {KD, KE}

1

verify

10

9

Generate {KS, KV}Sign Tag IDs with KS

3

Tag IDs, KE

2

List of (signed)Tag IDs

RAMONEncryption key

(public) KE

(Signed) Tag ID

RAMON

8

store /retrieve

7

(Signed) Tag ID, KE

7

(Signed) Tag IDs, (KV)

5

Interrogator

Signatureverification key

(public) KV

RAMONdecryption key

(private) KD

List of (signed)Tag IDs

RAMONEncryption key

(public) KE

store

4

Tag IssuerSystem

Integrator

RAMONencryption key

(public) KE

Signatureverification key

(public) KV

Signaturegeneration key

(private) KS

6

store

Page 10: Secure UHF Tags with Strong Cryptography - RFID Secure UHF Tags with Strong Cryptography ... Secure RFID Tags and Presentation of First Results ... 2013 Slide 9 User Memory Secure

Secure UHF Tags with Strong CryptographyFebruary 19th, 2013 Slide 10

Decryption:

Basics: Rabin Cryptosystem

The Rabin cryptosystem is an asymmetric cryptographic technique, whose security, like that of RSA, is related to the factorization problem.

Message M

n = p * q p, q: primes, almost

equal size,

Public key n Secret key p, q

Cipher text C: Reader ����Tag

One root r, s is our Message M

Encryption: nMC mod2=

pCpCm

p

p modmod 4

1+

==

qCqCm

q

q modmod 4

1+

==

1=⋅+⋅ qypy qp

nmqympys pqqp mod)( ⋅⋅−⋅⋅=+

nmqympyr pqqp mod)( ⋅⋅+⋅⋅=+

rnr −=−

sns −=−

)4(mod3≡≡ qp

Page 11: Secure UHF Tags with Strong Cryptography - RFID Secure UHF Tags with Strong Cryptography ... Secure RFID Tags and Presentation of First Results ... 2013 Slide 9 User Memory Secure

Secure UHF Tags with Strong CryptographyFebruary 19th, 2013 Slide 11

Basics: Montgomery Modular Multiplication

The Montgomery approach allows a much more efficient calculation of the cipher text C in the tag.

Cipher text C*: Reader ���� Tag

Encryption:

Message M

Rabin Decryption (previous slide)

Conversion:

nRRMnRCC mod)(mod12* −

==

nRMC mod12* −

= n = p * q p, q: primes, almost

equal size,

Public key n Secret key p, q

)4(mod3≡≡ qp

Residue R is a power of 2 and .

In other words, R is at least the next power of 2 which is

larger than n.

nRk

>≥ 2

2;1;2mod1 dnddndn

ndbl≈<≤=

Page 12: Secure UHF Tags with Strong Cryptography - RFID Secure UHF Tags with Strong Cryptography ... Secure RFID Tags and Presentation of First Results ... 2013 Slide 9 User Memory Secure

Secure UHF Tags with Strong CryptographyFebruary 19th, 2013 Slide 12

Agenda

� Motivation for Secure UHF Tags

� The Rabin-Montgomery Cryptosystem

� Message Flow

� Protocol Extension with Mutual Authentication

� Proof-Of-Concept Implementation

Page 13: Secure UHF Tags with Strong Cryptography - RFID Secure UHF Tags with Strong Cryptography ... Secure RFID Tags and Presentation of First Results ... 2013 Slide 9 User Memory Secure

Secure UHF Tags with Strong CryptographyFebruary 19th, 2013 Slide 13

RAMON Protocol Steps – Tag Identification Only

Interrogator Tag

Generate RND number RNGenerate RND challenge CH

[Validate Signature of UID]*

Decrypt

CH

Generate Response RR

(1)

Tag

Identification

(1)

Tag

Identification

Tag identified or

even authenticated

Tag identified or

even authenticated

Stop here, if only tag identification is required

*: signature validation is an optional step

Page 14: Secure UHF Tags with Strong Cryptography - RFID Secure UHF Tags with Strong Cryptography ... Secure RFID Tags and Presentation of First Results ... 2013 Slide 9 User Memory Secure

Secure UHF Tags with Strong CryptographyFebruary 19th, 2013 Slide 14

Detailed data flow for tag only authentication

Interrogator Tag

{Database, KD, KV} {(signed)UID, KE}

Generate RND number RNGenerate RND challenge CH

Validate Signature

of UID

DecryptP = DEC (KD,R)

� CH, RN, UID

CH

Generate Response RR = ENC (KE,MIX(CH,RN,UID))

R

Page 15: Secure UHF Tags with Strong Cryptography - RFID Secure UHF Tags with Strong Cryptography ... Secure RFID Tags and Presentation of First Results ... 2013 Slide 9 User Memory Secure

Secure UHF Tags with Strong CryptographyFebruary 19th, 2013 Slide 15

Detailed Protocol Step 1: Interrogator send challenge

Command RFU CSI Length Message RN-16 CRC-16

110100102 ’00' xx EBV Interrogator Challenge step 1 xx xx

AuthMethod Step RFU Interrogator Challenge

112

012

00002

CH [127:0]

Command Step 1

Interrogator Tag

Header Response RN-16 CRC-16

0 Response data length xx xx

AuthMethod Step RFU Response data length

112 102 00002 (Total Nr. of Bytes)

Response Step 1 Start

Calculaton

Length

EBV

� Step 1: The interrogator challenge is delivered to the tag.

� The tag immediately starts with the cryptographic calculation and answers with the length of the response data which will be calculated.

Page 16: Secure UHF Tags with Strong Cryptography - RFID Secure UHF Tags with Strong Cryptography ... Secure RFID Tags and Presentation of First Results ... 2013 Slide 9 User Memory Secure

Secure UHF Tags with Strong CryptographyFebruary 19th, 2013 Slide 16

Detailed Protocol Step 2: Retrieve calculation results

Header Response RN -16 CRC -16

0 Response data length xx xx

AuthMethod Step RFU Response data fragment

112 10 2 0000 2 Part from result

Response Step 2

Remaining

(Nr. of Bytes)

Header Response RN -16 CRC- 16

0 Response data length xx xx

AuthMethod Step RFU Response data fragment

112 10 2 0000 2 Last part from result

Response Step 3

Remaining

’00 '

Calculationfinished

Command RFU CSI Message RN-16 CRC -16

11010010 2 ’00' xx Retrieve Response xx xx

AuthMethod Step RFU

112 012 00002

Command Step 2

Length

EBV

Length

EBV

Command RFU CSI Message RN-16 CRC-16

11010010 2 ’ 00 ' xx Retrieve Response xx xx

AuthMethod Step RFU

11 2 012 0000 2

Command Step 3

Length

EBV

Length

EBV

Respo

nseDat a

Part1

R espon

seData

Par t2

� Step 2: The

interrogator retrieves the

remaining fragments by

chaining.

� Once the

interrogator has retrieved

the entire record, it is

able to authenticate

the tag.

Interrogator Tag

Page 17: Secure UHF Tags with Strong Cryptography - RFID Secure UHF Tags with Strong Cryptography ... Secure RFID Tags and Presentation of First Results ... 2013 Slide 9 User Memory Secure

Secure UHF Tags with Strong CryptographyFebruary 19th, 2013 Slide 17

Detailed Protocol steps for tag only authentication

Init

Power - up & ~ killed

Tag state transitions accto ISO/IEC 18000-63

.

TAM 1.2

Error Finished or Error

FinishedAuthenticate

( Step 1 )

Mutual authentication

Any other command

TAM 1.3TAM 1.1Authenticate

( Step 1 )Authenticate

( Step 2 )Authenticate

( Step 2 )

� In Step 1, the interrogator challenge is delivered to the tag. This message is used to

request the tag to perform authentication.

� In Step 2, the interrogator retrieves the remaining fragments by chaining further

Authenticate commands and responses. Once the interrogator has fetched the entire

authentication record it is able to authenticate the tag.

Page 18: Secure UHF Tags with Strong Cryptography - RFID Secure UHF Tags with Strong Cryptography ... Secure RFID Tags and Presentation of First Results ... 2013 Slide 9 User Memory Secure

Secure UHF Tags with Strong CryptographyFebruary 19th, 2013 Slide 18

Agenda

� Motivation for Secure UHF Tags

� The Rabin-Montgomery Cryptosystem

� Message Flow

� Protocol Extension with Mutual Authentication

� Proof-Of-Concept Implementation

Page 19: Secure UHF Tags with Strong Cryptography - RFID Secure UHF Tags with Strong Cryptography ... Secure RFID Tags and Presentation of First Results ... 2013 Slide 9 User Memory Secure

Secure UHF Tags with Strong CryptographyFebruary 19th, 2013 Slide 19

RAMON protocol steps – Algorithms Used

Interrogator Tag Algorithm State

(1)

Tag

Identification

(1)

Tag

Identification

(2)

Mutu

al

Auth

entication

(2)

Mutu

al

Auth

entication

(3)

SC(3)

SC

� Rabin Montgomery (RAMON)

� AES (FIPS197)

� AES CBC-Mode (SP800-38A)

� CMAC (SP800-38B)

� KDF (SP800-108)

Generate RND number RNGenerate RND challenge CH

Validate Signature of UID

Decrypt Generate Response R

Decrypt and verify cryptogramGenerate challenge CHGenerate cryptogram

If successful: Generate Session

Keys, Initialise SSC

Verify tag cryptogram

Secure Channel established Secure Channel established

Generate Session Keys,Initialise SSC

CHI

RT

CI

CT

� AES (FIPS197)

� CMAC (SP800-38B)

If successful:Generate tag cryptogram

Page 20: Secure UHF Tags with Strong Cryptography - RFID Secure UHF Tags with Strong Cryptography ... Secure RFID Tags and Presentation of First Results ... 2013 Slide 9 User Memory Secure

Secure UHF Tags with Strong CryptographyFebruary 19th, 2013 Slide 20

Detailed Protocol Steps for Mutual Authentication

from Tag Authenticationfrom Tag Authentication

MAM1.1

Authenticate

(AuthMethod 1, Step 2)

Authenticate

(AuthMethod 1, Step 1)

MAM1.2

Authenticate

(AuthMethod 1, Step 2)

Error

Authenticate

(AuthMethod 1, Step 1)

TAM1.3

FinishedSC

Error

SecureComm

non secure commandnon secure commandInit

State

InitState

� Mutual authentication can be performed only after the tag has been successfully identified.

� Secure communication is possible only after successful mutual authentication that involves generation of the required session keys.

� While in the state SC, the tag is able to process Secure communication commands.

Page 21: Secure UHF Tags with Strong Cryptography - RFID Secure UHF Tags with Strong Cryptography ... Secure RFID Tags and Presentation of First Results ... 2013 Slide 9 User Memory Secure

Secure UHF Tags with Strong CryptographyFebruary 19th, 2013 Slide 21

Optional320 ≥ |n|Public signature (ECDSA) verification key storedon interrogator

KV

Mandatory1024 ≥ |n| Private decryption key stored on interrogatorKD

Mandatory1024 ≥ |n| Public key for encryption stored on tagKE

Dynamic128Session message authentication key SMAC

Dynamic128Session encryption keySENC

Optional128Shared secret message authentication keyKMAC

Optional128Shared secret encryption keyKENC

RemarkLength in bitsUsageKey

RAMON – Keys Used

Session Keys

Session Keys

Tag Identification keys

Tag Identification keys

Page 22: Secure UHF Tags with Strong Cryptography - RFID Secure UHF Tags with Strong Cryptography ... Secure RFID Tags and Presentation of First Results ... 2013 Slide 9 User Memory Secure

Secure UHF Tags with Strong CryptographyFebruary 19th, 2013 Slide 22

Agenda

� Motivation for Secure UHF Tags

� The Rabin-Montgomery Cryptosystem

� Message Flow

� Protocol Extension with Mutual Authentication

� Proof-Of-Concept Implementation

Page 23: Secure UHF Tags with Strong Cryptography - RFID Secure UHF Tags with Strong Cryptography ... Secure RFID Tags and Presentation of First Results ... 2013 Slide 9 User Memory Secure

Secure UHF Tags with Strong CryptographyFebruary 19th, 2013 Slide 23

FPGA Layout for a Proof-of-Concept

� Commercial RFID reader connected to PC

� Externally powered FPGA Evaluation Board

� Existing non-secure tag as (analogue-only) radio front end, AFE

� Re-implemented ISO 18000-63 state machine and tag memory

� Soft-core microcontroller, MSP430X-compatible

� Hardware multiplier and AES coprocessor

Page 24: Secure UHF Tags with Strong Cryptography - RFID Secure UHF Tags with Strong Cryptography ... Secure RFID Tags and Presentation of First Results ... 2013 Slide 9 User Memory Secure

Secure UHF Tags with Strong CryptographyFebruary 19th, 2013 Slide 24

A Closer Look to the Actual Demonstrator

The available UHF tag evaluation board facilitated the design of the demonstrator

by providing digital baseband access to the modulator / demodulator:

Page 25: Secure UHF Tags with Strong Cryptography - RFID Secure UHF Tags with Strong Cryptography ... Secure RFID Tags and Presentation of First Results ... 2013 Slide 9 User Memory Secure

Secure UHF Tags with Strong CryptographyFebruary 19th, 2013 Slide 25

Some Results

� MSP430 clock rate 1.25 MHz corresponds well to 1.28 MHz subcarrier

� RAMON calculation only: 134 ms

� RAMON including transmission: 330 ms

� Improve messaging concept

� ISO/IEC 29167 will define standard command set

Page 26: Secure UHF Tags with Strong Cryptography - RFID Secure UHF Tags with Strong Cryptography ... Secure RFID Tags and Presentation of First Results ... 2013 Slide 9 User Memory Secure

Secure UHF Tags with Strong CryptographyFebruary 19th, 2013 Slide 26

Thank You for Your Attention

Walter Hinz

Giesecke & Devrient GmbH

Prinzregentenstrasse 159

D-81677 München

email: [email protected]