24.10.2014 Views

an approach to security and privacy of rfid system for supply chain

an approach to security and privacy of rfid system for supply chain

an approach to security and privacy of rfid system for supply chain

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

AN APPROACH TO SECURITY AND PRIVACY OF RFID SYSTEM FOR SUPPLY CHAIN<br />

Xingxin(Grace) Gao, Zhe(Alex) Xi<strong>an</strong>g, Hao W<strong>an</strong>g, Jun Shen, Ji<strong>an</strong> Hu<strong>an</strong>g, Song Song<br />

IBM China Research Lab<br />

4/F, HaoHai Building, No.7, 5th Street, Sh<strong>an</strong>gdi, 100085, Beijing,China, gaoxingx@cn.ibm.com<br />

Abstract - Radio Frequency Identification (RFID) is<br />

expected <strong>to</strong> become pervasive <strong>an</strong>d ubiqui<strong>to</strong>us, as it c<strong>an</strong> be<br />

embedded in<strong>to</strong> everyday items as smart labels. A typical<br />

scenario <strong>of</strong> exploiting RFID is <strong>supply</strong> <strong>chain</strong>. The RFID<br />

based <strong>supply</strong> <strong>chain</strong> m<strong>an</strong>agement yields convenience,<br />

efficiency <strong>an</strong>d productivity gains. However, RFID <strong>system</strong>s<br />

create new risks <strong>to</strong> <strong>security</strong> <strong>an</strong>d <strong>privacy</strong>.<br />

This paper briefly presents the current solutions <strong>to</strong> RFID<br />

<strong>security</strong> <strong>an</strong>d <strong>privacy</strong>. A new <strong>approach</strong> is then proposed,<br />

which exploits r<strong>an</strong>domized read access control <strong>an</strong>d thus<br />

prevents hostile tracking <strong>an</strong>d m<strong>an</strong>-in-the-middle attack. In<br />

addition, compared with current schemes that achieve the<br />

similar <strong>security</strong> level, the proposed <strong>approach</strong> dramatically<br />

decreases the computation load. Another benefit is that it is<br />

suitable <strong>for</strong> RFID <strong>system</strong>s with a large number <strong>of</strong> tags.<br />

Keywords – RFID, Security, Privacy<br />

I. INTRODUCTION<br />

Nowadays, low-cost radio frequency identification (RFID)<br />

has been attracting more <strong>an</strong>d more interests from both<br />

industry <strong>an</strong>d academic institutes.[1] It has gained wide r<strong>an</strong>ge<br />

adaptation <strong>for</strong> low-cost <strong>an</strong>d ubiqui<strong>to</strong>us computing<br />

applications, such as location tracking, access control <strong>an</strong>d<br />

environmental conditions moni<strong>to</strong>ring. An RFID <strong>system</strong><br />

consists <strong>of</strong> three parts: radio frequency (RF) tags, RF tag<br />

readers <strong>an</strong>d the back-end database that associates records<br />

with tag data collected by readers. Tags are composed <strong>of</strong> a<br />

microchip <strong>for</strong> memory <strong>an</strong>d logical operations, <strong>an</strong>d <strong>an</strong><br />

<strong>an</strong>tenna coil <strong>for</strong> receiving <strong>an</strong>d tr<strong>an</strong>smitting wireless signals.<br />

Readers interrogate tags <strong>for</strong> their contents through RF<br />

<strong>an</strong>tenna <strong>an</strong>d interface <strong>to</strong> back-end databases <strong>for</strong> more<br />

functionalities.<br />

A typical scenario <strong>of</strong> exploiting RFID is <strong>supply</strong> <strong>chain</strong><br />

m<strong>an</strong>agement. It aims at reducing <strong>supply</strong> <strong>chain</strong> inefficiencies<br />

<strong>an</strong>d improved inven<strong>to</strong>ry flow whilst considering the returns<br />

process. RFID based <strong>supply</strong> <strong>chain</strong> m<strong>an</strong>agement achieves has<br />

m<strong>an</strong>y beneficial features over traditionally used bar code. 1)<br />

It doesn’t require line-<strong>of</strong>-sight access <strong>to</strong> read. 2) The reading<br />

r<strong>an</strong>ge <strong>of</strong> RFID is larger th<strong>an</strong> bar code, though it’s still shortr<strong>an</strong>ge.<br />

3) Tags c<strong>an</strong> be read simult<strong>an</strong>eously. Inven<strong>to</strong>ry c<strong>an</strong> be<br />

obtained in a very short time without line <strong>of</strong> sight at the<br />

entr<strong>an</strong>ce, because multiple tags c<strong>an</strong> be read at the same time.<br />

4) Tags c<strong>an</strong> s<strong>to</strong>re more data, such as the unique ID <strong>for</strong> a<br />

certain good <strong>an</strong>d data from the readers <strong>an</strong>d the environment.<br />

Hence they c<strong>an</strong> be tracked from producers <strong>to</strong> distribu<strong>to</strong>rs<br />

<strong>an</strong>d <strong>to</strong> retailers.<br />

The beneficial features greatly improve <strong>supply</strong> <strong>chain</strong><br />

m<strong>an</strong>agement efficiency <strong>an</strong>d ease <strong>of</strong> use. However, they<br />

expose RFID based <strong>supply</strong> <strong>chain</strong> <strong>to</strong> <strong>security</strong> <strong>an</strong>d <strong>privacy</strong><br />

challenges. A secure RFID <strong>system</strong> has <strong>to</strong> avoid<br />

eavesdropping, traffic <strong>an</strong>alysis, spo<strong>of</strong>ing <strong>an</strong>d denial <strong>of</strong><br />

service, as it has large read r<strong>an</strong>ge <strong>an</strong>d no line <strong>of</strong> sight<br />

requirement. In contrast, <strong>security</strong> <strong>an</strong>d <strong>privacy</strong> is not a<br />

problem <strong>for</strong> barcode, as the reading r<strong>an</strong>ge <strong>of</strong> barcode is as<br />

short as several centimeters.<br />

An import<strong>an</strong>t <strong>security</strong> concern is that a s<strong>to</strong>re’s inven<strong>to</strong>ry<br />

labeled with unprotected tags may be moni<strong>to</strong>red by<br />

competi<strong>to</strong>rs’ unauthorized readers. The inven<strong>to</strong>ry data holds<br />

signific<strong>an</strong>t fin<strong>an</strong>cial value <strong>for</strong> commercial org<strong>an</strong>ization <strong>an</strong>d<br />

their competi<strong>to</strong>rs. Another <strong>privacy</strong> concern is that<br />

individuals may be tracked through RFID tags labeled on<br />

the carried objects. Even if the tags only contain product<br />

codes rather th<strong>an</strong> unique serial number, someone’s tastes in<br />

br<strong>an</strong>ds “constellation” will also betray their identity.<br />

Moreover, even if the responses <strong>of</strong> tags are encrypted, the<br />

owner c<strong>an</strong> also be identified <strong>an</strong>d tracked by the fixed<br />

encrypted code.<br />

There have been some <strong>approach</strong>es <strong>to</strong> the RFID <strong>security</strong> <strong>an</strong>d<br />

<strong>privacy</strong> issues, including killing tags at the checkout,<br />

applying a rewritable memory, physical tag memory<br />

separation, hash encryption, r<strong>an</strong>dom access hash, <strong>an</strong>d hash<br />

<strong>chain</strong>s. These <strong>approach</strong>es will be introduced in details in the<br />

next section.<br />

A new <strong>approach</strong> is proposed in this paper, which requires<br />

read access control. If a reader is inquiring a tag’s ID. The<br />

tag has <strong>to</strong> firstly identify the reader is authenticated. In the<br />

process <strong>of</strong> authentication, a tag sends out a r<strong>an</strong>dom number.<br />

The reader then responds <strong>to</strong> the tag with a function value <strong>of</strong><br />

the r<strong>an</strong>dom number <strong>an</strong>d its own ID. The reader’s output <strong>for</strong><br />

each query ch<strong>an</strong>ges. Thus, even if the output is<br />

eavesdropped, the adversary c<strong>an</strong> not pass the authentication<br />

in the next query. This r<strong>an</strong>dom number based authentication<br />

c<strong>an</strong> prevent spo<strong>of</strong>ing <strong>an</strong>d m<strong>an</strong>-in-the-middle attack.<br />

This paper is org<strong>an</strong>ized as follows. The related works <strong>of</strong><br />

RFID in <strong>security</strong> <strong>an</strong>d <strong>privacy</strong> are firstly introduced in<br />

section II. Then our <strong>approach</strong> is proposed in section III. In<br />

this section, the assumption is stated. Under this assumption,<br />

the basic idea is presented <strong>an</strong>d the working mech<strong>an</strong>ism is<br />

detailed.<br />

Proceedings <strong>of</strong> the IEEE International Conference on E-Commerce Technology <strong>for</strong> Dynamic E-Business (CEC-East’04)<br />

0-7695-2206-8/04 $ 20.00 IEEE


II. RELATED WORKS<br />

There have been some <strong>approach</strong>es <strong>to</strong> the <strong>security</strong> <strong>an</strong>d<br />

<strong>privacy</strong> issues in RFID <strong>system</strong> <strong>for</strong> <strong>supply</strong> <strong>chain</strong>. The<br />

<strong>approach</strong>es c<strong>an</strong> be classified in<strong>to</strong> two categories. One is <strong>to</strong><br />

disable tags <strong>to</strong>tally or partially, when the ownership <strong>of</strong> the<br />

products switched <strong>for</strong>ward. The other is read access control<br />

<strong>of</strong> tags.<br />

A. Disable tags <strong>to</strong>tally or partially<br />

A simple <strong>approach</strong> is <strong>to</strong> kill tags when the owner <strong>of</strong> a<br />

product in a stage <strong>of</strong> the life cycle is <strong>to</strong> pass his/her<br />

ownership <strong>to</strong> the next stage, he/she takes <strong>of</strong>f the Class ID[2].<br />

Upon receiving the comm<strong>an</strong>d, the tag erases itself. Another<br />

<strong>approach</strong> is that a logically unique tag ID consists <strong>of</strong> a Class<br />

ID <strong>an</strong>d a locally unique ID. [3] A cus<strong>to</strong>mer either kills the<br />

Class ID or replaces it with a user-defined one at the checkout.<br />

This function is useful in protecting the user <strong>privacy</strong> by<br />

eliminating the uniqueness <strong>of</strong> tags, but a conscious decision<br />

is required <strong>to</strong> initiate the procedure, <strong>an</strong>d it is difficult <strong>to</strong><br />

ensure that the kill comm<strong>an</strong>d was properly executed.<br />

Moreover, tag suicide prevents <strong>an</strong>y subsequent useful<br />

services such as special services <strong>for</strong> each client. This<br />

property actually diminishes the benefits <strong>of</strong> RFID tags. In<br />

addition, partially disable or rewrite tag c<strong>an</strong> not prevent<br />

being tracked as tags response a fixed output.<br />

B. Fixed read access control<br />

With read access control, tags only respond <strong>to</strong> authorized<br />

readers. Fixed read access control st<strong>an</strong>ds <strong>for</strong> <strong>an</strong><br />

authentication process, where the authentication key is fixed.<br />

A basic method is that each RFID tag has a read only<br />

memory (ROM) <strong>an</strong>d a rewritable memory (e.g. RAM) [4]<br />

[5]. In the RAM mode a tag c<strong>an</strong> only response <strong>to</strong> the limited<br />

users, who have the same fixed identification code as that in<br />

the rewritable memory. An extension <strong>of</strong> this method exploits<br />

hash function [6]. Each tag verifies the reader as follows.<br />

The reader has a authentication key k <strong>for</strong> each tag, <strong>an</strong>d each<br />

tag holds the result metaID, metaID = hash(k) <strong>of</strong> a hash<br />

function. A tag receives a request <strong>for</strong> ID access <strong>an</strong>d sends<br />

metaID in response. The reader sends a key that is related <strong>to</strong><br />

metaID received from the tag. The tag then calculates the<br />

hash function from the received key <strong>an</strong>d checks whether the<br />

result <strong>of</strong> the hash function corresponds <strong>to</strong> the metaID held in<br />

the tag. Only if both data sets agree does the tag send its<br />

own ID <strong>to</strong> the reader.<br />

However, it c<strong>an</strong> not prevent being tracked, because tags<br />

respond predictably. Furthermore, both the r<strong>an</strong>dom key <strong>an</strong>d<br />

the tag ID c<strong>an</strong> be eavesdropped by <strong>an</strong> adversary.<br />

C. R<strong>an</strong>domized read access control<br />

To avoid being tracked, the tag’s response should be not<br />

predictable but r<strong>an</strong>domized. There are mainly two<br />

<strong>approach</strong>es <strong>of</strong> r<strong>an</strong>domized read access control.<br />

MIT Au<strong>to</strong> ID center proposed <strong>an</strong> R<strong>an</strong>domized Hash scheme,<br />

which is <strong>an</strong> extension <strong>of</strong> the hash lock type scheme [6].<br />

Instead <strong>of</strong> a fixed metal ID, tag’s response ch<strong>an</strong>ges with<br />

each query. As shown in Fig. 2., Each tag shares with the<br />

reader <strong>an</strong> authentication key ID k . Upon query, the tag<br />

generates a pseudo-r<strong>an</strong>dom number R <strong>an</strong>d outputs (R,<br />

h(ID k ||R)), where h(ID k ||R) is the hash function based on the<br />

input fromR <strong>an</strong>d the authentication key ID k . The reader then<br />

gets authentication keys <strong>of</strong> all tags. The reader calculates the<br />

hash function using the received R <strong>an</strong>d ID <strong>for</strong> all<br />

authentication keys s<strong>to</strong>red in the back-end database. If the<br />

hash value matches that sent by the tag, the reader identifies<br />

the authentication key ID k <strong>for</strong> the tag <strong>an</strong>d sends it <strong>to</strong> the tag.<br />

Since the tag output ch<strong>an</strong>ges with each access, this scheme<br />

deters tracking. However, this scheme is best suited <strong>for</strong><br />

consumers with a small number <strong>of</strong> tags, since a legitimate<br />

reader identifies one <strong>of</strong> its tags by searching <strong>an</strong>d calculating<br />

with all <strong>of</strong> its known IDs. It is not practical <strong>for</strong> a large<br />

number <strong>of</strong> tags.<br />

Fig. 2. R<strong>an</strong>domized Hash-Locking: A reader unlocks a tag<br />

whose ID is in the r<strong>an</strong>domized hash-lock scheme.<br />

NTT proposed a hash <strong>chain</strong> <strong>approach</strong>. A tag has initial<br />

in<strong>for</strong>mation S i . In the i-th tr<strong>an</strong>saction with the reader, the<br />

RFID tag sends <strong>an</strong>swer a i = G(S i ) <strong>to</strong> the reader, renews<br />

secret S i+1 = H(S i ) as determined from previous secret S i ,<br />

where H <strong>an</strong>d G are hash functions, as in Fig. 3.<br />

Fig. 1. Hash-Locking: A reader unlocks a hash-locked tag.<br />

This scheme <strong>of</strong>fers <strong>privacy</strong> control at low cost. All it<br />

requires is a hash function <strong>an</strong>d s<strong>to</strong>rage <strong>for</strong> metalID.<br />

Fig. 3. RFID tag sends <strong>an</strong>swer a i = G(S i ), <strong>an</strong>d renews its<br />

secret S i+1 = H(S i ).<br />

Proceedings <strong>of</strong> the IEEE International Conference on E-Commerce Technology <strong>for</strong> Dynamic E-Business (CEC-East’04)<br />

0-7695-2206-8/04 $ 20.00 IEEE


The reader sends a i <strong>to</strong> the back-end database. The back-end<br />

database maintains a list <strong>of</strong> pairs (ID; S i ), where S i is the<br />

initial secret in<strong>for</strong>mation <strong>an</strong>d is different <strong>for</strong> each tag. So the<br />

back-end database that received tag output a i from the reader<br />

calculates a 0i = G(H j (S i )) <strong>for</strong> each S i in the list, <strong>an</strong>d checks<br />

whether a i = a 0i .Ifa i matches a 0i , the ID is identified from<br />

the pair <strong>of</strong> a 0i . This scheme satisfies indistinguishability <strong>an</strong>d<br />

<strong>for</strong>ward <strong>security</strong>. G is a one-way function, so if the<br />

adversary obtains tag output a i , he c<strong>an</strong>not know S i from a i . G<br />

outputs r<strong>an</strong>dom values, so if the adversary watches the tag<br />

output, he c<strong>an</strong>not link a i <strong>an</strong>d a i+1 . H is a one-way function,<br />

so if the adversary tampers with a tag <strong>an</strong>d obtains the secret<br />

in<strong>for</strong>mation in the tag, he c<strong>an</strong>not know S i from S i+1 . The<br />

adv<strong>an</strong>tages are obvious. However, there are <strong>to</strong>o much<br />

computation <strong>an</strong>d comparison. To identify <strong>an</strong> ID, the backend<br />

server has <strong>to</strong> calculate with each ID on the ID list.<br />

Suppose there are N known tag IDs in the data base. The<br />

data base has <strong>to</strong> per<strong>for</strong>m a search <strong>of</strong> N known IDs, 2*N hash<br />

functions <strong>an</strong>d N comparisons. The processing load increases<br />

linearly with the length <strong>of</strong> the ID list. There<strong>for</strong>e, this scheme<br />

is not practical <strong>for</strong> a large number <strong>of</strong> tags.<br />

III. PROPOSED APPROACH TO RFID SECURITY AND<br />

PRIVACY PROTECTION<br />

The proposed <strong>approach</strong> also exploits r<strong>an</strong>domized access<br />

control <strong>approach</strong>, which meets the requirements <strong>of</strong><br />

invulnerable <strong>to</strong> m<strong>an</strong>-in-the-middle attack <strong>an</strong>d hostile<br />

tracking at a relatively low processing load.<br />

A. Components <strong>of</strong> a secure RFID <strong>system</strong><br />

1) Tag<br />

A tag consists <strong>of</strong> two parts. One part is a memory with read<br />

only memory (ROM) <strong>an</strong>d r<strong>an</strong>dom access memory (RAM).<br />

Tag memory:<br />

Hash (TagID)<br />

ROM + RAM<br />

ID <strong>of</strong> <strong>an</strong> authenticated Reader<br />

The other part is logic circuit, which is able <strong>to</strong> per<strong>for</strong>ming<br />

simple computation, such as calculating hash functions or<br />

creating simple pseudo r<strong>an</strong>dom numbers.<br />

2) Reader<br />

Readers communicate with tags wirelessly. Each reader has<br />

its ReaderID, which identifies a batch <strong>of</strong> authenticated<br />

readers. For inst<strong>an</strong>ce, all the readers in the supermarket<br />

AAA share the same ReaderID showing that “We are from<br />

AAA”. Upon query, the tag verifies a reader through its<br />

ReaderID.<br />

Readers als o connect <strong>an</strong>d communicate <strong>to</strong> the back-end data<br />

base <strong>to</strong> identify tags <strong>an</strong>d run related applications.<br />

3) Data Base<br />

The back-end data base s<strong>to</strong>res the pairs <strong>of</strong> a tag ID <strong>an</strong>d its<br />

hash value: [TagID, hash(TagID)]. Generally, the data base<br />

connects readers through a wired <strong>an</strong>d secure ch<strong>an</strong>nel.<br />

B. How it works<br />

If a reader is inquiring a tag’s ID. The tag has <strong>to</strong> firstly<br />

identify the reader is authenticated. After authentication, the<br />

reader c<strong>an</strong> obtain the tag ID by the tag’s response <strong>an</strong>d<br />

reference <strong>of</strong> the data base.<br />

1) Authentication <strong>of</strong> a “ Good Reader”<br />

Authorization between readers <strong>an</strong>d tags has <strong>to</strong> be established<br />

be<strong>for</strong>e tags response the in<strong>for</strong>mation related <strong>to</strong> the tag ID.<br />

Since the ID <strong>of</strong> the “ Good Reader” has been s<strong>to</strong>red in the<br />

tag’s memory in adv<strong>an</strong>ce, tags are able <strong>to</strong> identify<br />

authorized readers by their reader ID. Tags will not response<br />

<strong>to</strong> unauthorized readers. There<strong>for</strong>e, being tracked by<br />

adversary is not possible where there are no authorized<br />

readers nearby. In addition, the authorization process is<br />

based on a r<strong>an</strong>dom number created by the tag. Thus<br />

spo<strong>of</strong>ing c<strong>an</strong> be prevented.<br />

This authentication process is shown in Fig. 4. When a tag<br />

receives the inquiry from a reader, the tag will first create a<br />

r<strong>an</strong>dom number k <strong>an</strong>d send it out. After the r<strong>an</strong>dom number<br />

k is received by the reader, the reader sends k back <strong>to</strong> the<br />

backend database. The backend database hashes (ReaderID<br />

|| k) <strong>an</strong>d sends out the hash value <strong>to</strong> the reader. The reader<br />

then sends it <strong>to</strong> the tag. In the me<strong>an</strong>time, the tag also hashes<br />

(ReaderID || k). Then the tag compares the hash value<br />

calculated by the tag with that by the reader. If they equal,<br />

the reader passes the authentication <strong>an</strong>d the tag is ready <strong>to</strong><br />

provide some tag ID related in<strong>for</strong>mation. Otherwise, the<br />

reader is not authenticated <strong>an</strong>d the tag will keep silent.<br />

2) Obtaining a tag’s ID<br />

Illustrated in Fig. 5., after the verification process, the tag<br />

will respond the “ Good Reader” with its hashed TagID.<br />

When the reader receives the hash value <strong>of</strong> TagID, it will<br />

communicate with the back-end database <strong>an</strong>d find the pair<br />

<strong>of</strong> (TagID, Hash(TagID)). Thus, the corresponding TagID is<br />

obtained by the reader.<br />

Even if the hashed TagID is eavesdropped, when the tag is<br />

sending it out, the eavesdropper will not know the TagID<br />

value, since he has no idea about the relationship between<br />

actual TagID <strong>an</strong>d its hash value.<br />

3) Updating the authenticated ReaderID in a tag’s memory<br />

When <strong>an</strong> object is tr<strong>an</strong>sported from one warehouse <strong>to</strong><br />

<strong>an</strong>other one, the authenticated readers will be ch<strong>an</strong>ged from<br />

the previous warehouse readers <strong>to</strong> the destination warehouse<br />

readers. This process is illustrated in Fig. 6. The reader<br />

obtains the hash value <strong>of</strong> the tag <strong>an</strong>d then sends it <strong>to</strong> the<br />

back-end database. The database is then in<strong>for</strong>med that the<br />

Proceedings <strong>of</strong> the IEEE International Conference on E-Commerce Technology <strong>for</strong> Dynamic E-Business (CEC-East’04)<br />

0-7695-2206-8/04 $ 20.00 IEEE


ReaderID s<strong>to</strong>red in the memory <strong>of</strong> this tag has <strong>to</strong> be updated.<br />

In response, the database finds out the NewReaderID <strong>an</strong>d<br />

tr<strong>an</strong>smits it <strong>to</strong> the reader. When the reader receives the<br />

NewReaderID, it XOR it with the OldReaderID <strong>an</strong>d sends<br />

the XOR value <strong>to</strong> the tag. The tag c<strong>an</strong> obtain the<br />

NewReaderID from the XOR value <strong>an</strong>d the OldReaderID.<br />

Finally the ReaderID is updated.<br />

In this process, even if the XOR value between<br />

NewReaderID <strong>an</strong>d OldReaderID is leaked out, the adversary<br />

will not get the NewReaderID, because it has no knowledge<br />

<strong>of</strong> the OldReaderID. In this way, spo<strong>of</strong>ing is prevented.<br />

C. Analysis <strong>for</strong> typical cases<br />

1) Invulnerable <strong>to</strong> eavesdropping<br />

In the process <strong>of</strong> authentication, even if <strong>an</strong> adversary<br />

eavesdrops the reader’s output a(k), it c<strong>an</strong> not pretend <strong>to</strong> be<br />

<strong>an</strong> authorized reader in the following authentication rounds.<br />

The reason is that the required a(k) value ch<strong>an</strong>ges <strong>for</strong> every<br />

authentication processes. The a(k) value <strong>of</strong> the <strong>for</strong>mer<br />

authentication round is useless <strong>for</strong> the later authentication.<br />

After authentication, the tag will output the hash value <strong>of</strong> its<br />

TagID instead <strong>of</strong> the TagID itself. Since hash function is<br />

hardly <strong>to</strong> inverse, the TagID is protected even if the output<br />

is captured by <strong>an</strong> adversary.<br />

When a tag w<strong>an</strong>ts <strong>to</strong> update a new ReaderID in its memory,<br />

the new ReaderID is encrypted with the old ReaderID. It is<br />

invulnerable <strong>to</strong> eavesdropping.<br />

In one word, the proposed <strong>approach</strong> is secure when <strong>an</strong>y<br />

communications between readers <strong>an</strong>d tags are eavesdropped.<br />

2) Prevent being tracked by adversary<br />

Tags keep silent <strong>to</strong> adversaries. They only respond <strong>to</strong><br />

authenticated readers. Furthermore, as explained above, it is<br />

impossible <strong>for</strong> adversaries <strong>to</strong> pretend <strong>to</strong> be a “good reader” .<br />

Since there is no tag output, adversaries are unable <strong>to</strong> track<br />

the cus<strong>to</strong>mers by the tags tagged <strong>to</strong> what they just bought<br />

after they check out. The <strong>privacy</strong> <strong>of</strong> location <strong>an</strong>d the objects<br />

the cus<strong>to</strong>mers carry is protected.<br />

3) Low computation load<br />

This scheme is fast <strong>an</strong>d low-cost. When identifying a tag<br />

from N known tags, the reader per<strong>for</strong>ms only one hash<br />

operation <strong>an</strong>d a search <strong>of</strong> N known IDs, while other<br />

<strong>approach</strong>es <strong>of</strong> r<strong>an</strong>domized access control (section II. C.)<br />

need at least N hash operations <strong>an</strong>d N searches . Obviously,<br />

the computation load <strong>of</strong> this proposed scheme is<br />

dramatically low, compared with the schemes at the similar<br />

<strong>security</strong> level. Moreover, as the authentication process<br />

relies on searching N known IDs <strong>an</strong>d a hash, the<br />

computation load increases gradually as the number <strong>of</strong> tags<br />

increases.<br />

4) Suitable <strong>for</strong> a large number <strong>of</strong> tags<br />

Since the computation load is low <strong>an</strong>d increase slowly with<br />

the number <strong>of</strong> tags, the proposed <strong>approach</strong> is suitable <strong>for</strong><br />

protecting RFID <strong>system</strong>s with a large number <strong>of</strong> tags. This<br />

feature is very import<strong>an</strong>t <strong>for</strong> a <strong>supply</strong> <strong>chain</strong>. Each part along<br />

a <strong>supply</strong> <strong>chain</strong> deploys <strong>of</strong> numerous tags. In warehouses or<br />

retail s<strong>to</strong>res, thous<strong>an</strong>ds <strong>of</strong> products need <strong>to</strong> be tagged <strong>to</strong><br />

accelerate <strong>supply</strong> <strong>chain</strong> process. There<strong>for</strong>e, a secure RFID<br />

scheme suitable <strong>for</strong> a lot <strong>of</strong> tags is the prerequisite <strong>for</strong> the<br />

popularization <strong>of</strong> RFID <strong>supply</strong> <strong>chain</strong> <strong>system</strong>.<br />

5) Scalable <strong>for</strong> further services <strong>for</strong> consumers<br />

The <strong>approach</strong> proposed in this paper is scalable <strong>for</strong> further<br />

services <strong>for</strong> consumers. For example, a consumer c<strong>an</strong> s<strong>to</strong>re<br />

the ReaderID <strong>of</strong> his home in the tag’s memory, which is<br />

tagged <strong>to</strong> a box <strong>of</strong> milk he bought from a supermarket. The<br />

reader in the refrigera<strong>to</strong>r will detect milk <strong>an</strong>d let the owner<br />

know whether there is enough milk.<br />

IV. CONCLUSION<br />

This paper proposed <strong>an</strong> <strong>approach</strong> <strong>to</strong> <strong>security</strong> <strong>an</strong>d <strong>privacy</strong><br />

protection in RFID <strong>system</strong>s, especially <strong>for</strong> <strong>supply</strong> <strong>chain</strong>. It<br />

requires the tag <strong>to</strong> have a rewritable memory <strong>an</strong>d a simple<br />

logic circuit. These requirements are practical <strong>an</strong>d easy <strong>to</strong><br />

implement.<br />

An adv<strong>an</strong>tage <strong>of</strong> the proposed <strong>approach</strong> is the high <strong>security</strong>.<br />

It prevents spo<strong>of</strong>ing, m<strong>an</strong>-in-the-middle attack. Adversary<br />

c<strong>an</strong> not get the tag ID even if the tag’s outputs are<br />

eavesdropped.<br />

REFERENCES<br />

[1] Vince St<strong>an</strong><strong>for</strong>d, “ Pervasive computing goes the last<br />

hundred feet with RFID <strong>system</strong>s”, IEEE pervasive<br />

computing, Volume: 2 , Issue: 2 , Pages:9 – 14,April-<br />

June 2003<br />

[2] Au<strong>to</strong>-ID Center, “860MHz-960MHz Class I Radio<br />

Frequency Identification Tag Radio Frequency &<br />

Logical communication Interface Specification Proposed<br />

Recommendation Version 1.0.0” , Technical Report<br />

MIT-AUTOID-TR-007, Nov. 2002<br />

[3] Sozo Inoue, Hiro<strong>to</strong> Yasuura, “ RFID <strong>privacy</strong> using usercontrollable<br />

uniqueness” , RFID Privacy Workshop @<br />

MIT,2003<br />

[4] Sozo Inoue, S. Konomi, Hiro<strong>to</strong> Yasuura., “Privacy in the<br />

digitally named world with RFID tags” , Workshop on<br />

socially-in<strong>for</strong>med design <strong>of</strong> <strong>privacy</strong>-enh<strong>an</strong>cing solutions<br />

in ubiqui<strong>to</strong>us computing, 2002<br />

[5] Shingo Kinosita, Fumitaka Hoshino, Tomoyuki Komuro,<br />

Akiko Fujimura <strong>an</strong>d Miyako Ohkubo, “ Non-identifiable<br />

Anonymous-ID Scheme <strong>for</strong> RFID Privacy Protection” ,<br />

<strong>to</strong> appear in CSS 2003 in Jap<strong>an</strong>ese.<br />

[6] Stephen A. Weis, S<strong>an</strong>jay E. Sarma, Ronald L. Rivest <strong>an</strong>d<br />

D<strong>an</strong>iel W. Engels , “Security <strong>an</strong>d Privacy Aspects <strong>of</strong><br />

Proceedings <strong>of</strong> the IEEE International Conference on E-Commerce Technology <strong>for</strong> Dynamic E-Business (CEC-East’04)<br />

0-7695-2206-8/04 $ 20.00 IEEE


Low-Cost Radio Frequency Identification Systems”,<br />

First International Conference on Security in Pervasive<br />

Computing. March, 2003.<br />

Database<br />

k<br />

Reader<br />

Hi!<br />

k<br />

Tag<br />

Create a r<strong>an</strong>dom number : k<br />

Get s<strong>to</strong>red Reader ID;<br />

a(k)=hash(ReaderID || k)<br />

a(k)<br />

a(k)<br />

a(k)*=hash(ReaderID || k)<br />

a(k)*== a(k)*<br />

Y<br />

N<br />

Authenticated!<br />

Keep silent<br />

Fig. 4. Authentication <strong>of</strong> a “ Good Reader”<br />

Authenticated<br />

Found:<br />

Database<br />

Hash (TagID)<br />

Reader<br />

Hash (TagID)<br />

Tag<br />

(TagID, Hash(TagID))<br />

Fig. 5. Obtaining a tag’s ID<br />

Database<br />

Hash(TagID);<br />

ReaderID<br />

Reader<br />

Obtaining TagID<br />

Tag<br />

NewReaderID<br />

(NewReaderID)XOR<br />

(OldReaderID)<br />

Updated Memory:<br />

Hash (TagID)<br />

NewReaderID<br />

Fig. 6. Updating the authenticated ReaderID in a tag’s memory<br />

Proceedings <strong>of</strong> the IEEE International Conference on E-Commerce Technology <strong>for</strong> Dynamic E-Business (CEC-East’04)<br />

0-7695-2206-8/04 $ 20.00 IEEE

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!