Presentation is loading. Please wait.

Presentation is loading. Please wait.

RFID Security and Privacy Part 2: security example.

Similar presentations


Presentation on theme: "RFID Security and Privacy Part 2: security example."— Presentation transcript:

1 RFID Security and Privacy Part 2: security example

2 Zoom in: Authentication Should be mutual –reader should recognise tags –tag should recognise readers EMAP: Efficient Mutual Authentication Protocol for Low-cost RFID Tags. –proposed by P. Peris-Lopez, J. C. Hernandez- Castro, J. M. Estevez-Tapiador, and A. Ribagorda, November 2006.

3 EMAP model IDS 1 Key 1 …… IDS n Key n Updated after each session Identification ID (m bits) Key (4m bits) = K 1 ||K 2 ||K 3 ||K 4 Pseudonym IDS (m bits) || concatenation DB

4 EMAP protocol Reader Tag hello IDS Database IDS K 1 ||K 2 ||K 3 ||K 4 Random n 1,n 2 A||B||C A = IDS  K 1  n 1 B = (IDS  K 2 )  n 1 C = IDS  K 3  n 2 Check A  B. Infer n 1,n 2 D||E D = IDS  K 4  n 2 E = (IDS  n 1  n 2 )  ID  K 1  K 2  K 3  K 4 Update IDS and K 1...K 4 Check D. Update IDS and K 1...K 4

5 Update … IDS’ = IDS  n 2  K 1. K 1 ’ = K 1  n 2  (ID 1/2 || F(K 4 ) || F(K 3 )) –ID 1/2 – first m/2 bits of ID –F(X) – parity function Divide X in m/4 4-bit blocks Compute a parity bit for each block K 2 ’ = K 2  n 2  (F(K 1 ) || F(K 4 ) || ID 2/2 ) K 3 ’ = K 3  n 1  (ID 1/2 || F(K 4 ) || F(K 2 )) K 4 ’ = K 4  n 1  (F(K 3 ) || F(K 1 ) || ID 2/2 )

6 EMAP is efficient Tag memory: –Rewritable memory: 4m bits (keys) + m (IDS) –ROM: m bits (ID) –Very reasonable for m = 96… Operations: –tag does cheap processing: , , , || –random number generation – reader only! –no expensive operations (e.g hash function, multiplication)

7 Further advantages of EMAP tag anonymity –the same ID but different messages! forward security –knowledge of K 1...K 4 does not reveal updated key

8 Li and Deng: EMAP is vulnerable "Vulnerability Analysis of EMAP- An Efficient RFID Mutual Authentication Protocol " April 2007

9 Attack 1: Desynchronisation Tag hello IDS A||B||C' infer n 2 ' instead of n 2 wrong D'||E' Update IDS and the key Reader random n 1,n 2 Update IDS and the key Intruder hello IDS j s.t. IDS(j) = 0 A||B||C Toggle j in C D||E Toggle j in D' and E' n 2 ' = n 2  e j

10 expected: D = (IDS  K 4 )  n 2 received: ( (IDS  K 4 )  n 2 ’ )  e j –i.e. (IDS  K 4 )  n 2  e j  e j = D Attack 1: Reader accepts D

11 expected: E = (IDS  n 1  n 2 )  ID  K 1  K 2  K 3  K 4 received: (IDS  n 1  n 2 ’)  ID  K 1  K 2  K 3  K 4  e j compare: IDS  n 1  n 2 vs. (IDS  n 1  n 2 ’)  e j –look at j th bit: IDS(j) = 0  (IDS  n 1  n 2 )(j) = n 2 (j) Attack 1: received E is correct

12 Attack 1: Tag update IDS’ = IDS  n 2  K 1. K 1 ’ = K 1  n 2  (ID 1/2 || F(K 4 ) || F(K 3 )) K 2 ’ = K 2  n 2  (F(K 1 ) || F(K 4 ) || ID 2/2 ) K 3 ’ = K 3  n 1  (ID 1/2 || F(K 4 ) || F(K 2 )) K 4 ’ = K 4  n 1  (F(K 3 ) || F(K 1 ) || ID 2/2 )  Desynchronisation on IDS, K 1 and K 2  You can also attack n 1 rather than n 2 or both (see the paper)

13 What kind of problem has been demonstrated? A.Ethical issues B.Illicit tracking of the tags C.Skimming D.Tag cloning E.Cross-contamination F.Tag killing G.Invasive attack / side channel attack H.Jamming

14 Countermeasure: Error-correcting codes? Can report/correct a number of 1-0 errors –can detect the attack as presented above BUT –the attack can be generalised to replace (n 1,n 2 ) by (n 1 ’,n 2 ’) toggling multiple bits simultaneously… –… and fooling the error-correcting codes!

15 Murphy’s Law Just when you think things cannot get any worse, they will.

16 Attack 2 Full disclosure attack Run EMAP (a number of times) and discover ID and all the keys! Want to know more? Read the paper


Download ppt "RFID Security and Privacy Part 2: security example."

Similar presentations


Ads by Google