RFID and
SECURITY
All slides © 2008 RSA Laboratories
RFID (Radio-Frequency IDentication)
takes many forms…
“RFID” really denotes a spectrum of devices
Automobile ignition key Mobile phone
Toll paymentplaque
Basic“smart label”
passive passivesemi-passive
no crypto no crypto some crypto
few cm tomany meters
range
several metersrange
several cmrange
RFID: Any wireless device whose main function is identification of an object or person…
“Smart label” RFID tag• Passive tag
• Ordinary range of several meters
• Simply calls out (unique) name and static data
“74AB8”
“5F8KJ3”
“Evian bottle#949837428”
• Cheap! (target of $0.05 apiece) • Little memory
– Static 96-bit+ identifier in current ultra-cheap tags– Up to hundreds of writeable bits
• Little computational power– At most a few thousand gates (mostly for basic
functionality)– No real cryptographic functions possible
Capabilities of “smart label” RFID tag
“Smart labels”:EPC (Electronic Product Code) tags
Barcode EPC tag
Line-of-sight Radio contact
Specifies object type Uniquely specifies object
Fast, automated scanning
Provides pointerto database entryfor every object, i.e., unique, detailed history
• 30 April: RFID-tagged cow “Bessie” produces milk
• 30 April: Milk transferred to RFID-tagged tank– Cow identity and milking time recorded in tank-tag database
• 1 May: RFID portal on truck records loading of refrigeration tanks– (Truck also has active RFID (+GPS) to track geographical location and RFID transponder to pay tolls)
• 2 May: Chemical-treatment record written to database record for milk barrel– Bessie’s herd recorded to have consumed bitter grass; compensatory sugars added
• 3 May: Milk packaged in RFID-tagged carton; milk pedigree recorded in database associated with carton tag
• 4 May: RFID portal at supermarket loading dock records arrival of carton• 5 May: “Smart” shelf records arrival of carton in customer area• 5 May 0930h: “Smart” shelf records removal of milk• 5 May 0953h: Point-of-sale terminal records sale of milk (to Alice)
2030: Week in the life of a milk carton
• 6 May 0953h: Supermarket transfers tag ownership to Alice’s smart home
• 6 May 1103h: Alice’s refrigerator records arrival of milk• 6 May 1405h: Alice’s refrigerator records removal of milk; refrigerator looks up database-recorded pedigree and displays:
“Woodstock, Vermont, 1% fat, light pasturization, artisanal, USDA organic, breed: Jersey, genetic design #81726”
• 6 May 1807h: Alice’s “smart” home warns domestic robot that milk has been left out of refrigerator for more than four hours• 6 May 1809h: Alice’s refrigerator records replacement of milk
• 7 May 0530h: Domestic robot uses RFID tag to locate milk in refrigerator; refills baby bottle
2030: Week in the life of a milk carton
• 6 May 0953h: Supermarket transfers tag ownership to Alice’s smart home
• 6 May 1103h: Alice’s refrigerator records arrival of milk• 6 May 1405h: Alice’s refrigerator records removal of milk; refrigerator looks up database-recorded pedigree and displays:
“Woodstock, Vermont, Grade A, light pasturization, artisanal, USDA organic, breed: Jersey, genetic design #81726”
• 6 May 1807h: Alice’s “smart” home warns domestic robot that milk has been left out of refrigerator for more than four hours• 6 May 1809h: Alice’s refrigerator records replacement of milk
• 7 May 0530h: Domestic robot uses RFID tag to locate milk in refrigerator; refills baby bottle
• 7 May 2357h: Recycling center scans RFID tag on carton; directs carton to paper-brick recycling substation
• 7 May 0531h: Robot discards carton; “Smart” refrigerator notes absence of milk; transfers order to Alice’s PDA/phone/portable server grocery list
2030: Week in the life of a milk carton
RFID Today
PROXIMITY CARDSNote: Often just emit static identifiers, i.e., they are just smart labels!
f
RFID helps secure hundreds of millions of automobiles•Cryptographic challenge-response•More than 90% reduction in car theft thanks to RFID!•Some devices, e.g., Texas Instruments DST, are weak [Bono et al. ’05])…
AUTOMOBILE IGNITION KEYS
• RFID now offered in all major credit cards in U.S. (“tap-and-go”)…
• Some problems with first generation [Heydt-Benjamin et al. ’07]
Credit CARDS
Transit CARDS•K. Nohl and H. Plötz on Mifare, 2008
• Dozens of countries issuing RFID-enabled passports
• PASS card and “enhanced” drivers’ licenses (EPC tags)
PAssports
Little EPC at item-level, mostly cases and pallets
Crate #123(jet engines)
Supply-chain visibility
22 August 200701.28 UTCKansas, USACrate #123 packedFactory #18762
31 August 200722.19 UTCOkinawa, JapanCrate #123 arrivedDock JHS1872H
25 August 200706.08 UTCNYC, USACrate #123 loadedCargo ship UAYHQUE
• Anti-counterfeiting: Better supply-chain visibility means less fraud– U.S. FDA urging RFID use to combat counterfeiting of drugs– Pharmaceutical companies doing item-level trials with EPC today
pharmaceuticals
Security and Privacy Challenges
1500 Eurosin wallet
Serial numbers:597387,389473
…
Wigmodel #4456
(cheap polyester)
30 items of lingerie
Das Kapital and Communist-
party handbook
Replacement hipmedical part #459382
The consumer privacy problem
Here’sMr. Jones…
© RSA Laboratories
Privacy approach 1: Cover RFID tags with protective mesh or foil
Problems: (1) Makes locomotiondifficult(2) Shops don’t like distributing tools for theft
Long-term problem: RFID tags arevery usefulin “live” state…
Approach 2: EPC “kill” command for RFID tags
Short-term problem: How doI get kill PINs topoint of sale?
1500 Eurosin wallet
Serial numbers:597387,389473
…
Replacement hipmedical part #459382
Mad-cowhamburgerlunch Counterfeit!
Counterfeit!
Good readers, bad tags
Mr. Jones’s car!
Mr. Jones in 2020
The authentication problem
Approach 3: Use cryptography
AES
Side-channel countermeasuresBut:
1. Not in cheap EPC for a while
2. The theme of today’s talk: The really hard part is key management…
RFID on the Loading Dock
Keeping the customer satisfied…
• “I want a rock-solid encryption algorithm…
with 20-bit keys.”
• “I want a strong password-reset system…
with user-friendly challenge questions like, `What is your favorite color?’”
• “I want my retail stores to be able to read RFID-tagged items…
but I want tag data to be unreadable after sale… and I don’t want to have to kill or rewrite them…”
EPC tags and privacy• Again, EPC tags have no true cryptographic
functionality• Only explicit EPC privacy feature: Kill
– On receiving tag-specific PIN, tag self-destructs
• But commercial RFID users say they:– Don’t want to manage kill PINs– Have no channel to communicate secret keys
downstream in supply chain
• Key transport is a big problem!!!
A new approach: Put secret keys on the tags
• Encrypt tag data under secret key • Apply secret sharing to spread key across tags in case
– E.g., (s1, s2,, s3)
E (m1) s1
E (m2) s2
E (m3) s3
• Encrypt tag data under secret key • Apply secret sharing to spread key across tags in case
– E.g., (s1, s2,, s3)
E (m1) s1
E (m2) s2
E (m3) s3
A new approach: Put secret keys on the tags
Supersteroids 500mg; 100 countSerial #87263YHGMfg: ABC Inc.Exp: 6 Mar 2010
Privacy through dispersion
Privacy through dispersion E (m1) s1
E (m2) s2
E (m3) s3
Individual shares / small sets reveal no information about medication!
(Super-Steroids)
(Super-Steroids)
(Super-Steroids)
Example application: Privacy protection on
medications
Step 1: Receive caseat pharmacy
Step 2: Pharmacy readstags, gets keys, decryptsdata for its database
Step 3: Tags and dataare dispersed
Data
Some challenges1. Storage is at a premium in EPC, but no secret-sharing
literature on “tiny” shares• “Short” shares are 128 bits, but we may want 16 bits or less!• We needed to create new definitions and constructions
2. Scanning errors• We need robustness in our secret-sharing scheme
Some challenges3. In-store key harvesting
• Preventive idea: Add “chaff,” i.e., bogus or “noise” shares• If secret-sharing scheme for case can tolerate d errors, then add 2d/3 bogus shares per case• Can recover from <d/3 errors in single case, since 2d/3 + d/3 = d• Hard to reconstruct secrets for two cases mixed together, as we have 4d/3 > d errors• “Overinformed” adversary
Wig serial #A817TS8
4. We don’t solve tracking problem
Some challenges
• You’ve already got credit cards, car keys, proximity cards, mobile phones, and so forth
Another twist:Secret-sharing for authentication• A key is useful not just for consumer privacy,
but for authentication:– Read / write “unlock” codes for EPC tags– Anti-cloning for EPC tags [Juels ’05]– Symmetric key for challenge-response tag
authentication (again, anti-cloning)
• But putting on case is bad if case is diverted– Attacker can read / rewrite tags and re-inject goods– Attacker can clone tags
Secret-sharing across cases
s1 s2 s3
’
s’1 s’2 s’3
Secret-sharing across cases
s1 s2 s3
’
s’1 s’2 s’3
But “windows” are not always neat…
s1 s2 s3 s’1 s’2 s’3
Warehouse A Warehouse B
receivers cannot reconstruct and ’ !
SWISS(Sliding Window Information Secret-Sharing)
Given 2 out of 4 si, get corresponding i
s1 s2 s3 s4 s5 s6
Given 2 out of 4 si, get corresponding i
Given 2 out of 4 si, get corresponding i
1 2 3 4 5 6
SWISS(Sliding Window Information Secret-Sharing)
1 3Warehouse B 5
s1 s2 s3 s4 s5 s6
1 2 3 4 5 6
SWISS(Sliding Window Information Secret-Sharing)
????
Adversary with more sporadic case access
s1 s2 s3 s4 s5 s6
1 2 3 4 5 6
SWISS(Sliding Window Information Secret-Sharing)
• A k-out-of-n-SWISS scheme is straightforward with share size si linear in n
• It’s not obvious how to get more compact si • That’s what our paper [JPP ’08] addresses…
– Tricks using bilinear maps, i.e., pairings – Size of si is constant(!) in k,n – Access structure not perfect
s1 s2 s3 s4 s5 s6
RFID in the Shoulder
Other RFID applications today:
“Not Really Mad”
• Livestock
• Housepets
The cat came back, the very next day…
50 million+
Animal tagging…
Human location tracking
• Schools• Amusement parks• Hospitals
???
A riddle…
+ =
???
Human-implantable RFID
+ = VeriChipTM
Human-implantable RFID
+ = VeriChipTM
• Excellent test bed for privacy and security concepts!
• Proposed for medical-patient identification• Also proposed and used as an authenticator for physical
access control, a “prosthetic biometric”– E.g., Mexican attorney general purportedly used for access to
secure facility• What kind of cryptography does it have?
– None: It can be easily cloned [Halamka et al. ’06]• So shouldn’t we add a challenge-response protocol?• Cloning may actually be a good thing
Human-implantable RFID
• Physical coercion and attack– In 2005, a man in Malaysia had his fingertip
cut off by thieves stealing his biometric-enabled Mercedes
– What would happen if the VeriChip were used to access ATM machines and secure facilities?
• Perhaps better if tags can be cloned! • Tags should not be used for authentication
—only for identification
Cloneability + privacy
• Privacy means no linkability or information about identities• If a tag can be cloned, does that mean it can’t provide
privacy?– Surprisingly, no!
• A very simple scheme allows for simultaneous cloneability and privacy
Cloneability + privacy
Homomorphic public-key cryptosystem (e.g., El Gamal)
• Private / public key pair (SK, PK)• Randomized scheme: C = EPK,r [m]• Semantic security:
Adversary cannot distinguish C = EPK,r [“Alice”] from C’*= EPK,s [“Bob”]
• Re-encryption property: Given C only, can produce randomized C* = EPK,s [m], without knowing m
Cloneability + privacy
The scheme: When read, tag chooses fresh r and outputs C = EPK,r [“name”]
Then:• Reader with SK can decrypt name• Semantic Security: Adversary cannot
distinguish among tags, i.e., infringe privacy
• Re-encryption property: Adversary can clone a tag: records C and outputs randomized C*
The covert-channel problemSuppose there is an identification / authentication system…
AuthorizedEmployees
Only
Who’s there?
E[“Alice”]
It’s Alice!
The covert-channel problemSuppose there is an identification / authentication system…
AuthorizedEmployees
Only
Who’s there?
E[“Alice” + ?]
Alice has low bloodpressure andhigh blood-alcohol
Alice recently passed a casino’sRFID reader.
Mercury switchindicates thatAlice napped on job
How can we assure Alice of no covert channels?
• Outputs must be deterministic– Randomness always leaves room for covert emissions
• Could give Alice a secret key to check that outputs are formatted correctly– E.g., pseudorandom-generator seed for device
• But we don’t want Alice (or a third party) to have to manage sensitive keying material. Again, key management is the problem!
• Can we enable Alice (or anyone else) to verify covert-freeness publicly, i.e., without exposing secret keys?
• Simultaneous publicly verifiable covert-freeness and privacy are impossible!
Here’s why…Suppose there were a public CC detector…
X18 Ultra CC-DetectorTM
A1
A2
No CC
Yes, CC!
Here’s a covert channel!
1. Create identity for user “Bob”• Bob could be fictitious
• Just need output sequence B1, B2, …
2. Alice’s chip does following:• If no nap, output A1, A2, A3, etc. with
Alice’s identity• If Alice has taken a nap, then flip to Bob’s
identity, i.e., output A1, A2… B1, B2
Suppose we detect this covert channel
X18 Ultra CC-DetectorTM
A1
A2
No CCB
1
Yes, CC
Now if there really is a user Bob, we have a problem...
X18 Ultra CC-DetectorTM
A1
A2
No CC
Alice followed by Bob yields “Yes”
X18 Ultra CC-DetectorTM
A1
B1
Yes, CC
BobAlice
Alice Alice
Privacy is broken: We can distinguish between identities!
X18 Ultra CC-DetectorTM
Yes X18 Ultra CC-DetectorTM
No
So public CC-verifiability + privacy is impossible
• But we can achieve it anyway…• Idea: change the definition of privacy
– Weaken localized privacy, e.g., eliminate privacy across pairwise values
– Allow localized CC-checking, e.g., pairwise– Localized privacy is least important type of privacy
• Now we can do spot CC-checking…
A1 A2 A3 A4 A5 A6 A7 A8 A9
X18 Ultra CC-DetectorTM
yes / no
So public CC-verifiability + privacy is impossible
• But we can achieve it anyway…• Idea: change the definition of privacy
– Weaken localized privacy, e.g., eliminate privacy across pairwise values
– Allow localized CC-checking, e.g., pairwise– Localized privacy is least important type of privacy
• Now we can do spot CC-checking…
A1 A2 A3 A4 A5 A6 A7 B1 B2
X18 Ultra CC-DetectorTM
yes / no
So public CC-verifiability + privacy is impossible
• Now let’s show how to achieve it anyway…• Idea:
– Weaken privacy definition to exclude localized privacy, e.g., privacy across pairwise values
– Allow localized CC-checking, e.g., pairwise– Localized privacy is least important type of privacy
• Now we can do spot CC-checking…
A1 A2 A3 A4 A5 A6 A7 A8 A9
???
Still a difficult problem
• Constructing a deterministic sequence whose values are:– Publicly, pairwise verifiable– Otherwise unlinkable
• Again, use bilinear maps (with non-standard hardness assumption…)
• We have only solved the problem of covert channels in explicit logical-layer problem– Timing or power side-channel?
The message of this talk: Crypto is not always the hard part!
With crypto, we can do:• Challenge-response for
authentication• Mutual authentication
and/or encryption for privacy
AES
Side-channel countermeasures
Again, crypto is hard, but really hard part is key management…
The key-management problem
Okinawa, JapanKansas, USA
“Top secret:X-32 cone”
crypto key
“Top secret:X-32 cone”
The key poses its own “transport” problems:• It must be tag-specific (usually)• It must be highly available • It must be secured at all times • Like managing 10,000,000,000 passwords!
The RFID key-management problem
Body passwords?
To learn more
Papers available at RFID CUSP Web site: www.rfid-cusp.org – J. Halamka, A. Juels, A. Stubblefield, and J.
Westhues. “The Security Implications of VeriChip Cloning.” Journal of the American Medical Informatics Association (JAMIA), 2006.
– D. Bailey, D. Boneh, E.-J. Goh, and A. Juels. “Covert Channels in Privacy-Preserving Identification Systems.” In ACM CCS, 2007.
– A. Juels, R. Pappu, and B. Parno. “Key Transport in Unidirectional Channels with Applications to RFID Security.” 2008. In submission.
– J. Westhues’s RFID cloning page: http://cq.cx.