# A Privacy Model for RFID Tag Ownership Transfer

Authors: Xingchun Yang; Chunxiang Xu; Chaorong Li
Journal: Security and Communication Networks
 (2017)

---

## Abstract

The ownership of RFID tag is often transferred from one owner to another in its life cycle. To address the privacy problem caused by tag ownership transfer, we propose a tag privacy model which captures the adversary’s abilities to get secret information inside readers, to corrupt tags, to authenticate tags, and to observe tag ownership transfer processes. This model gives formal definitions for tag forward privacy and backward privacy and can be used to measure the privacy property of tag ownership transfer scheme. We also present a tag ownership transfer scheme, which is privacy-preserving under the proposed model and satisfies the other common security requirements, in addition to achieving better performance.


---

## Body

## 1. Introduction

RFID (Radio-Frequency Identification) technology is widespread in commercial industry such as supply chain management, inventory management, and access control for people and vehicles. A RFID application system mainly consists of tags, readers/interrogators, and back-end server. A passive tag is basically a device embedded with a small chip and a coiled antenna, in which the chip has limited computation capability and small memory to store its secret key and identifier, and the antenna communicates with its reader via radio-frequency signal. A reader is used to interrogate tags and send the data received from tags to a back-end server for product identification or inventory tracking. The back-end server stores tag’s secret keys, identifiers, and the information of the items labeled by tags and executes product identification or inventory tracking.However, the privacy issue (e.g., information leakage, location tracking, and profiling individuals) caused by RFID technology has raised grave concerns among the public. A recommendation on this issue was published by the Commission of the European Communities [1], which gave particular attention to the individual tracking and the access to personal data. Take the medicine supply chain for example, those tags attached to medicines are often transferred from one owner to another, however, the previous owner of a tag may infer the tag’s track from its future interactions with a new owner, and as a result, the new owner’s privacy may be infringed. Another serious scenario is that terrorists may exploit this technology to track their target who holds the RFID tags. Once those tags are distinguished at specific point (e.g., the checkpoint or toll station) by the terrorist’s surreptitious devices, particular devices such as a bomb may be triggered.The privacy of RFID tag means anonymity and untraceability [2], namely, an adversary cannot distinguish or track a tag from other tags at the protocol level. It is observed that many studies [2–16] on tag privacy have focused on the privacy problems caused by tag authentication or tag identification, but little attention was paid to the tag ownership transfer which may leak out tag’s privacy.Meanwhile, there are some other works [17–31] focusing on design and analysis for concrete tag ownership transfer schemes or protocols, but few of them use formal methods to analyze the privacy problem resulting from tag ownership transfer. As Munilla et al. [32] pointed out, strong privacy remains an open problem for lightweight RFID applications.Actually, a malicious owner has access to the back-end server which stores all the information of readers and tags, and he has advantage to distinguish a tag after the tag ownership transfer or inferring the past activities of a tag when getting the tag’s ownership. This attack belongs to insider attack, which is serious in practice, but IND-CCA2 encryption can be employed to prevent such kind of attack [33].Concentrating on tag ownership transfer, we propose a privacy model which introduces strong adversaries, who have abilities to obtain the full information of readers, to authenticate tags, to observe the whole transfer process, and to corrupt tags. With this model, we briefly analyze the scheme [17] which is based on public key encryption on tags. We also present a tag ownership transfer scheme, which is forward and backward privacy-preserving under our model.The rest of this paper is organized as follows. In Section2, we review the relevant work on tag ownership transfer, and then we describe the proposed model in Section 3. In Section 4, a recent tag ownership transfer scheme is briefly analyzed, and the proposed ownership transfer scheme is described and analyzed in Section 5. Section 6 concludes the paper.


## 2. Related Work

Soundness, correctness, and privacy are the required properties for RFID system. Briefly, soundness which is also called security in [2, 9] means that a fake tag cannot be accepted by the system except with negligible probability; correctness means a legitimate tag is always accepted by the system with an overwhelming probability. Canard et al. [6] gave the definitions of soundness and correctness.In terms of tag ownership transfer scenario, tag forward privacy means an owner of a tagTi cannot distinguish Ti from others if Ti’s ownership was transferred to another owner, and tag backward privacy means the current owner of Ti cannot link Ti to its previous interactions (e.g., the transcripts of authentication and ownership transfer process with its previous owner).In Section3, we will give the proposed privacy model, which defines tag forward privacy and backward privacy. Since our model concentrates on the privacy problem caused by tag ownership transfer, the properties of soundness and correctness will not be discussed further. However, their definitions can be combined compatibly with our model.


### 2.1. Tag Ownership

A tag is often attached to an item and authenticated to its back-end server, and it would be transferred from one owner to another in its lifetime. As for a tag ownership transfer, the current owner may launch authentication procedure to authenticate or identify the tag and then transfer the tag’s secret key or identifier to a new owner’s server. Upon getting these secret data, the new owner has ability to authenticate or identify the tag. In this sense, these secret data used for tag authentication/identification are called ownership. In order to prevent the previous owner from authenticating or identifying the tag, the new owner will launch update procedure to make the tag and the new server refresh these shared secret data.


### 2.2. Tag Ownership Transfer

Tag ownership transfer is more complicated than tag authentication to reader or their mutual authentication, because the current owner and the new owner are involved in the ownership transfer process. Moreover, tag ownership transfer is closely related to tag authentication to its reader.Several tag ownership transfer schemes are derived from tag authentication protocols. Molnar et al. [22] proposed a scalable and delegatable pseudonym authentication protocol which enables tag ownership transfer; however, a trusted center is required. Lim and Kwon [21] proposed a robust authentication protocol enabling ownership transfer, whereas their scheme cannot achieve tag untraceability under the model in [34]. Song [25] suggested a tag ownership transfer scheme, which enables authorization recovery and protects the privacy of both current and previous owners, but this scheme is vulnerable to tag location tracking, tag forward traceability, and desynchronization attack [23]. Later, Song and Mitchell [26] proposed another RFID protocol and claimed it supports tag ownership transfer, tag delegation, and authorization recovery. Recently, Kardaş et al. [20] introduced an authentication protocol enabling tag ownership transfer with hash and XOR operation and claimed the protocol achieves tag untraceability against strong adversaries.There are some ownership transfer schemes for the tags supporting public key encryption. Fu and Guo [27] designed a mutual authentication protocol supporting tag ownership transfer based on the SQUASH scheme [35], but the authors did not exhibit the tag ownership transfer process. Cheng et al. [17] presented an ownership transfer scheme, which employs elliptic curve cryptography (ECC) and will be briefly analyzed in Section 4.There are some other ownership transfer schemes based on the public key encryption on readers. Elkhiyaoui et al. [18] designed a transfer scheme consisting of three subprotocols, but the scheme is vulnerable to the privacy track initiated by the tag’s previous owner [36], because their definitions neglected the ability of the previous owner who ever controls the secret key of the target tag, and some revisions in [29] were presented to correct this flaw. Xin et al. [28] proposed a privacy-preserving ownership transfer scheme and claimed it guarantees privacy and other security properties; however, this scheme employed a powerful Trusted Third Party.Some researches on tag ownership transfer focus on mobile RFID environment, and the readers interested in this may refer to [30, 37, 38] for further investigation.


## 2.1. Tag Ownership

A tag is often attached to an item and authenticated to its back-end server, and it would be transferred from one owner to another in its lifetime. As for a tag ownership transfer, the current owner may launch authentication procedure to authenticate or identify the tag and then transfer the tag’s secret key or identifier to a new owner’s server. Upon getting these secret data, the new owner has ability to authenticate or identify the tag. In this sense, these secret data used for tag authentication/identification are called ownership. In order to prevent the previous owner from authenticating or identifying the tag, the new owner will launch update procedure to make the tag and the new server refresh these shared secret data.


## 2.2. Tag Ownership Transfer

Tag ownership transfer is more complicated than tag authentication to reader or their mutual authentication, because the current owner and the new owner are involved in the ownership transfer process. Moreover, tag ownership transfer is closely related to tag authentication to its reader.Several tag ownership transfer schemes are derived from tag authentication protocols. Molnar et al. [22] proposed a scalable and delegatable pseudonym authentication protocol which enables tag ownership transfer; however, a trusted center is required. Lim and Kwon [21] proposed a robust authentication protocol enabling ownership transfer, whereas their scheme cannot achieve tag untraceability under the model in [34]. Song [25] suggested a tag ownership transfer scheme, which enables authorization recovery and protects the privacy of both current and previous owners, but this scheme is vulnerable to tag location tracking, tag forward traceability, and desynchronization attack [23]. Later, Song and Mitchell [26] proposed another RFID protocol and claimed it supports tag ownership transfer, tag delegation, and authorization recovery. Recently, Kardaş et al. [20] introduced an authentication protocol enabling tag ownership transfer with hash and XOR operation and claimed the protocol achieves tag untraceability against strong adversaries.There are some ownership transfer schemes for the tags supporting public key encryption. Fu and Guo [27] designed a mutual authentication protocol supporting tag ownership transfer based on the SQUASH scheme [35], but the authors did not exhibit the tag ownership transfer process. Cheng et al. [17] presented an ownership transfer scheme, which employs elliptic curve cryptography (ECC) and will be briefly analyzed in Section 4.There are some other ownership transfer schemes based on the public key encryption on readers. Elkhiyaoui et al. [18] designed a transfer scheme consisting of three subprotocols, but the scheme is vulnerable to the privacy track initiated by the tag’s previous owner [36], because their definitions neglected the ability of the previous owner who ever controls the secret key of the target tag, and some revisions in [29] were presented to correct this flaw. Xin et al. [28] proposed a privacy-preserving ownership transfer scheme and claimed it guarantees privacy and other security properties; however, this scheme employed a powerful Trusted Third Party.Some researches on tag ownership transfer focus on mobile RFID environment, and the readers interested in this may refer to [30, 37, 38] for further investigation.


## 3. The Proposed Privacy Model

Most schemes introduced in Section2.2 overlooked the fact that the owner may be malicious, and it lacks formal definitions to analyze the privacy property of tag ownership transfer scheme.van Deursen and Radomirović [33] introduced the insider attack which is serious to the RFID system, because adversaries have the knowledge of readers and tags. In this section, we propose a privacy model for RFID tag ownership transfer. This model provides adversaries with abilities to get the reader’s secret information, to constantly eavesdrop on the communications between reader and its tags, to corrupt tags, and to transfer tag’s ownership to another owner. In the model, the goal of the adversary is to distinguish or infer the target tag from others.


### 3.1. Entities in the Proposed Model

For simplicity, we suppose the RFID system in the model consists of two owners denoted byA with a reader RA and by B with a reader RB. Because the reader and its back-end server are powerful devices and communicate via secure channel, we also suppose the back-end server is integrated with the reader. Moreover, we suppose the temporary information (e.g., the nonce generated by reader and tags) will be automatically erased when the authentication or ownership transfer process is completed. The notations used in the following sections are listed in Notations for readability.


### 3.2. Oracles Provided for Adversaries

In a realistic scenario, adversaries can exploit the following information to attack tag’s privacy:(1) the secret information inside reader and tags, (2) the authentication information between reader and tags, (3) the results that adversaries launch authentication procedures with tags, and (4) the ownership transfer information between reader and tags.We give an adversaryA the following oracles to simulate his abilities to attack the privacy of a tag Tid.(1)
Authenticate(R,Tid)→(τ,kDB,tDB,kid,tid,result,…): This oracle is provided for A to make a reader R launch authentication session with Tid. If the adversary controls the secret information of R and Tid, it returns τ, the secret information such as key and identifier pairs (kDB,tDB), (kid,tid) as well as the authentication result. Otherwise, it only returns the authentication result and the process transcripts; namely, it returns (τ,-,-,-,-,result,…). This oracle simulates the adversary’s abilities to launch active attack and to get side channel information (e.g., the result whether or not a tag is accepted by its reader).(2)
Observe(R,Tid)→(τ,result): This oracle makes R launch authentication session with the tag Tid and returns the execution transcripts as well as the authentication result. The adversary can query this oracle to eavesdrop on the communication between the target tag and its reader.(3)
Corrupt(Tid)→(kid,tid,…): This oracle is provided for the adversary to corrupt tags. It returns the secret key, the identifier, and the other information inside Tid.(4)
Transfer(RA,Tid,RB)→(tvid,τ): The adversary can query this oracle to get the information of the ownership transfer process. It transfers Tid’s ownership from a current owner who controls RA to a new owner who controls RB and returns a virtual identifier tvid for the tag as well as the transcripts of the transfer process.(5)
Test(Tid0j,Tid1j)→(tidj+1,τ): This oracle is provided for the adversary only once at any time. It accepts two tags and then selects a bit b∈R(0,1) to transfer the ownership of Tidbj to a new owner. This oracle returns the identifier of Tidbj+1 and the transcripts of the transfer process.We denote the first four oracles byo1, o2, o3, o4 and the number of times that the adversary queries them by no1, no2, no3, no4, respectively, and denote the set (o1,o2,o3,o4) by O. We say that an adversary A is a (t,O)-adversary, if the number of times that A queries the above oracles is at most ∑i=14‍noi≤t, where t is polynomial in l.As for a tag ownership transfer process, a new owner will get the tag’s secret information (e.g., the key and identifier) from the current owner and then update some information inside the tag to prevent the current owner from successfully identifying or tracking the tag.


### 3.3. Definition of Forward Privacy

We denote a tagTid at time point just before its ownership is transferred by Tidj and denote it by Tidj+k(k=1,2,…) after the transfer process is finished. The transfer scheme should guarantee the previous owner cannot infer the identity of Tidj+k(k=1,2,…) from the identity of Tidj. Without loss of generality, we suppose the current reader of the tag is RA and the new reader is RB.Definition 1.
Provided with the information ofRA any (t,O)-adversary A can query oracles in O at most t times, we denote the probability that A selects two corrupted tags (Tid0j,Tid1j)∈IDA for querying Test(Tid0j,Tid1j) and correctly guesses b by succAforward(l), with permission to query Corrupt(Tidbj+k)(k=1,2,…). The tag is forward privacy if advAforward(l)=|succAforward(l)-1/2| is negligible.


### 3.4. Definition of Backward Privacy

After the ownership of the tagTidj has been successfully transferred to a new owner, the transfer scheme should guarantee the new owner cannot link the information of Tidj+k(k=1,2,…) to the previous activities of the tag. With the same way to define tag forward privacy, we define tag backward privacy as follows.Definition 2.
Provided with all the information ofRB any (t,O)-adversary A queries oracles in O at most t times, we denote the probability that A chooses uncorrupted tags (Tid0j,Tid1j)∈IDA for querying Test(Tid0j,Tid1j) and then correctly guesses b by succAbackward(l) with being given the identifier of Tidbj. We also denote the advantage that A infers which of Tid0j and Tid1j is chosen by advAbackward(l)=|succAbackward(l)-1/2|. The tag is backward privacy if advAbackward(l) is negligible.


## 3.1. Entities in the Proposed Model

For simplicity, we suppose the RFID system in the model consists of two owners denoted byA with a reader RA and by B with a reader RB. Because the reader and its back-end server are powerful devices and communicate via secure channel, we also suppose the back-end server is integrated with the reader. Moreover, we suppose the temporary information (e.g., the nonce generated by reader and tags) will be automatically erased when the authentication or ownership transfer process is completed. The notations used in the following sections are listed in Notations for readability.


## 3.2. Oracles Provided for Adversaries

In a realistic scenario, adversaries can exploit the following information to attack tag’s privacy:(1) the secret information inside reader and tags, (2) the authentication information between reader and tags, (3) the results that adversaries launch authentication procedures with tags, and (4) the ownership transfer information between reader and tags.We give an adversaryA the following oracles to simulate his abilities to attack the privacy of a tag Tid.(1)
Authenticate(R,Tid)→(τ,kDB,tDB,kid,tid,result,…): This oracle is provided for A to make a reader R launch authentication session with Tid. If the adversary controls the secret information of R and Tid, it returns τ, the secret information such as key and identifier pairs (kDB,tDB), (kid,tid) as well as the authentication result. Otherwise, it only returns the authentication result and the process transcripts; namely, it returns (τ,-,-,-,-,result,…). This oracle simulates the adversary’s abilities to launch active attack and to get side channel information (e.g., the result whether or not a tag is accepted by its reader).(2)
Observe(R,Tid)→(τ,result): This oracle makes R launch authentication session with the tag Tid and returns the execution transcripts as well as the authentication result. The adversary can query this oracle to eavesdrop on the communication between the target tag and its reader.(3)
Corrupt(Tid)→(kid,tid,…): This oracle is provided for the adversary to corrupt tags. It returns the secret key, the identifier, and the other information inside Tid.(4)
Transfer(RA,Tid,RB)→(tvid,τ): The adversary can query this oracle to get the information of the ownership transfer process. It transfers Tid’s ownership from a current owner who controls RA to a new owner who controls RB and returns a virtual identifier tvid for the tag as well as the transcripts of the transfer process.(5)
Test(Tid0j,Tid1j)→(tidj+1,τ): This oracle is provided for the adversary only once at any time. It accepts two tags and then selects a bit b∈R(0,1) to transfer the ownership of Tidbj to a new owner. This oracle returns the identifier of Tidbj+1 and the transcripts of the transfer process.We denote the first four oracles byo1, o2, o3, o4 and the number of times that the adversary queries them by no1, no2, no3, no4, respectively, and denote the set (o1,o2,o3,o4) by O. We say that an adversary A is a (t,O)-adversary, if the number of times that A queries the above oracles is at most ∑i=14‍noi≤t, where t is polynomial in l.As for a tag ownership transfer process, a new owner will get the tag’s secret information (e.g., the key and identifier) from the current owner and then update some information inside the tag to prevent the current owner from successfully identifying or tracking the tag.


## 3.3. Definition of Forward Privacy

We denote a tagTid at time point just before its ownership is transferred by Tidj and denote it by Tidj+k(k=1,2,…) after the transfer process is finished. The transfer scheme should guarantee the previous owner cannot infer the identity of Tidj+k(k=1,2,…) from the identity of Tidj. Without loss of generality, we suppose the current reader of the tag is RA and the new reader is RB.Definition 1.
Provided with the information ofRA any (t,O)-adversary A can query oracles in O at most t times, we denote the probability that A selects two corrupted tags (Tid0j,Tid1j)∈IDA for querying Test(Tid0j,Tid1j) and correctly guesses b by succAforward(l), with permission to query Corrupt(Tidbj+k)(k=1,2,…). The tag is forward privacy if advAforward(l)=|succAforward(l)-1/2| is negligible.


## 3.4. Definition of Backward Privacy

After the ownership of the tagTidj has been successfully transferred to a new owner, the transfer scheme should guarantee the new owner cannot link the information of Tidj+k(k=1,2,…) to the previous activities of the tag. With the same way to define tag forward privacy, we define tag backward privacy as follows.Definition 2.
Provided with all the information ofRB any (t,O)-adversary A queries oracles in O at most t times, we denote the probability that A chooses uncorrupted tags (Tid0j,Tid1j)∈IDA for querying Test(Tid0j,Tid1j) and then correctly guesses b by succAbackward(l) with being given the identifier of Tidbj. We also denote the advantage that A infers which of Tid0j and Tid1j is chosen by advAbackward(l)=|succAbackward(l)-1/2|. The tag is backward privacy if advAbackward(l) is negligible.


## 4. Brief Analysis for an ECC-Based Tag Ownership Transfer Scheme

Some tag ownership transfer schemes such as [18, 20, 26] are not based on public key encryption on tags. To achieve forward privacy or backward privacy for tags, tag owner is required to run extra tag authentication sessions in an environment where adversaries cannot eavesdrop on the authentication sessions. Such requirements do not satisfy our model in which adversaries can always eavesdrop on the interactions between the tag and its reader, in addition to corrupting the tag after the ownership transfer.To guarantee security and privacy, a few tag authentication protocols [27, 39–41] are based on tags that support public key encryption, and to the best of our knowledge, the authors of [17] presented a complete ownership transfer scheme based on tags supporting ECC. We briefly analyze this scheme as follows and demonstrate that it is not forward privacy under our definitions.This ownership transfer scheme consists of four subprotocols: tag key change protocol (P1), tag key update protocol (P2), ownership transfer protocol (P3), and controlled delegation protocol (P4); however, the authentication protocol between reader and tags is not given. Before the current owner (e.g.,RA) transfers the tag Tid to the new owner (e.g., RB), RA first launches P1 to refresh the information inside Tid and then runs P3 to transfer the ownership of Tid to RB. Finally, RB launches P2 to update the information inside Tid.Under Definition1, after querying the oracles in O at most t times, a (t,O)-adversary A chooses two corrupted tags (Tid0j,Tid1j)∈IDA for querying Test(Tid0j,Tid1j) and then guesses a bit b∈(0,1). However, since A can corrupt Tidbj+1 to get its secret key kb, and kb is not updated throughout the whole ownership transfer process, A can always correctly guess the value ofb.Under Definition2, after querying Test(Tid0j,Tid1j), the adversary A will guess a bit b, provided that the secret key kb is given. Yet it is unclear whether or not A can link kb to the previous transcripts that Tidbj-1 authenticates to its reader, because the authentication protocol is not given in [17]. In other words, it is not ensured whether or not A can infer kb from the previous authentication information.


## 5. The Proposed Tag Ownership Transfer Scheme

Motivated by the slightly higher performance tags like [42, 43] that support public key encryption, we propose a tag ownership transfer scheme in this section. This scheme consists of a mutual authentication protocol (AP) and an ownership transfer protocol (TP). We demonstrate it is both forward privacy and backward privacy under our model and give the security analysis in Appendix.We suppose the database DB of the back-end server stores(tidnew,tidold,sk,…) for each tag Tid as well as the information of the products that are labeled by tags, and DB is integrated into the reader R. Tid stores its identifier and its reader’s public key (tidj,pk). In the following sections, we first describe the mutual authentication protocol and then the tag ownership transfer protocol.


### 5.1. The Mutual Authentication Protocol

This protocol provides mutual authentication for the reader and tags; we give the details in Figure1 and the interpretation as follows.(1)
R first sends a nonce r1 and an access command query to Tid.(2)
Upon receivingr1 and query, Tid selects another nonce r2 and responds with c1=Encpk(tidj∥r1∥r2).(3)
Upon receivingc1, R decrypts it to get tid′,r1′,r2′. If (r1′=r1) does not hold, R interrupts this process.If(r1′=r1) holds, R then retrieves tid′ in its DB. If both (tid′≠tidnew) and (tid′≠tidold) hold, R assigns another nonce to the variable c2. Otherwise, R assigns the hash value H(r2′∥tid′) to c2 and updates tidold with tidnew if tid′ equals tidnew. R also updates tidnew with the value H(r2′). Finally, R sends back c2 to Tid.(4)
Upon receivingc2, if (c2=H(r2∥tidj)) holds, Tid updates tidj with the value H(r2); namely, tidj+1←H(r2).Figure 1
The proposed mutual authentication protocol.


### 5.2. The Tag Ownership Transfer Protocol

This protocol transfersTid’s ownership from the current owner of RA to the new owner of RB. Before the transfer process, RA and RB should authenticate to each other and setup a secure channel, and then RA sends tidnew, tidold and the other information of Tid to RB.After finishing the ownership transfer process,Tid’s identifier is updated with a new value which is shared with RB, and the public key stored in Tid is replaced with RB’s public key; Figure 2 shows the details.(1)
RB first sends its public key pkB, a nonce r1, and the access command change to Tid.(2)
Once receivingpkB, r1 and change, Tid selects another nonce r2 and assigns the value EncpkB(tidj∥r1∥r2) to c1 and then sends c2=EncpkA(c1) to RA.(3)
Upon receivingc2, RA decrypts it to get c1′ and then forwards c1′ to RB.(4)
Upon receivingc1′, RB decrypts it to get tid′, r1′, and r2′. If (r1′≠r1) holds, RB interrupts this process. If both (tid′≠tidnew) and (tid′≠tidold) hold, RB assigns a nonce to a variable c3; otherwise, RB assigns the value of H(r2′) to c3 and updates tidold with tidnew if tid′ equals tidnew. RB also updates tidnew with H(r2′∥tid′). Finally, RB sends back c3 to Tid(5)
Ifc3 is equal to H(r2), Tid replaces pkA with pkB and updates tidj with H(r2∥tidj) to successfully finish the transfer process.Figure 2
The proposed tag ownership transfer protocol.


### 5.3. Forward Privacy of the Proposed Scheme

According to Definition1 of the proposed model, an (t,O)-adversary A obtains all the information of RA and queries oracles in O in the first stage. A selects two corrupted tags (Tid0j,Tid1j)∈IDA in the second stage to query Test(Tid0j,Tid1j) and guess a bit b∈(0,1) with permission to corrupt Tidbj+k(k=1,2,…).First, there is no link between the identifiertidbj+1 and the knowledge that A obtains in the first stage, because the scheme employs the hash value of a nonce to update the tag’s identifier in authentication and ownership transfer process. Hence, A cannot benefit from this stage to enhance his advantage to infer Tidbj+k(k=1,2,…) from Tid0j and Tid1j, except to guess b with probability of 1/2.Second, Test(Tid0j,Tid1j) will return the transcripts τ(pkB,r1,change,c2,c1′=EncpkB(tidbj∥r1∥r2),c3=H(r2′)) in the second stage; therefore A can take advantage of these transcripts to guess b in the following ways.(1)
Decryptingc1′ to get the nonce r2 and compare the hash value H(r2∥tid0j), H(r2∥tid1j) with tidbj+1=H(r2∥tidbj), respectively, in order to determine the value of b. However, since A does not hold the secret key skB, the probability that he decrypts c1′ with a random secret key is 1/l. In other words, the advantage that A correctly guesses b is 1/l in this way.(2)
Inverting the one-way hash functionH(·) to get the nonce r2′ from c3=H(r2′) and then calculating H(r2∥tid0j) and H(r2∥tid1j) to compare the results with tidbj+1. However, as we all know, it is hard to invert one-way hash function so far, and the adversary can only guess the value of r2′. Hence, the probability A correctly guesses b is 1/lr in this way.Third, after querying Test(Tid0j,Tid1j), A can corrupt Tidbj+1 to obtain its identifier tidbj+1 which is the hash value of H(r2∥tidbj) and then invert this value (namely, tidbj+1) to get tidbj. However, it is difficult to invert the one-way hash function, and A can only guess a value as the input of the hash function. As a result, the probability that A correctly guesses b is 1/lr.Finally, the adversary could keep on corruptingTidbj+k(k=2,3,…) in the future interactions between the tag and its reader. However, this does not help A link Tidbj to Tidbj+k(k=2,…), because the hash value of secret nonce is employed to update the tag’s identifier in our scheme.To sum it up, according to the proposed model the advantage that a(t,O)-adversary A attacks the forward privacy of the scheme is negligible.


### 5.4. Backward Privacy of the Proposed Scheme

Under Definition2, a (t,O)-adversary A receives all the information of RB and queries oracles in O in the first stage. A selects two uncorrupted tags (Tid0j,Tid1j)∈IDA in the second stage for querying Test(Tid0j,Tid1j) and then guesses a bit b∈(0,1), provided the identifier tidbj is given.Except for guessingb with probability 1/2, A can guess b by the following ways.(1) Inferringb from the relation between the interaction transcripts that RA authenticates Tid0j-1/Tid1j-1 and the identifier tidbj=H(r2)=H(r2′):A queries Authenticate(RA,Tid0j-1/Tid1j-1) or Observe(RA,Tid0j-1/Tid1j-1) to get the authentication transcripts c1=EncpkA(tid0j-1∥r1∥r2), c2=H(r2′∥tid0′) (or c1=EncpkA(tid1j-1∥r1∥r2), c2=H(r2′∥tid1′)). However, A cannot gain r2 from c1 because c1 is a ciphertext by the public key pkA; he can only guess the secret key skA with probability 1/l to decrypt c1. A also cannot gain r2′ from c2 by inverting the one-way hash function H(·), except to guess r2′ with probability 1/lr. Hence, in this way the probability that A correctly guesses b is negligible.(2) Inferringb from the test transcripts (pkB,r1,change,c2,c1′=EncpkB(tidbj∥r1∥r2),c3=H(r2′)) as well as the identifier tidbj+1=H(r2∥tidbj): However, tidbj is not related to (pkB,r1,change) and c3, which is a hash value of a nonce. Moreover, c2 is the result of the encryption for c1′, and c1′ is the ciphertext of r1, r2, and tidbj. Hence, this information cannot contribute to the adversary to infer which of Tid0j and Tid1j is selected. In other words, A can only infer tidbj from Tid0j/Tid1j with negligible probability in this way.Furthermore, sincetidbj+1 is the hash value of tidbj and a nonce, the probability that A directly links tidbj+1 to Tid0j/Tid1j is negligible.In summary, the advantage of the adversary attacking the backward privacy of the scheme is negligible according to the proposed model.


### 5.5. Privacy Comparison with Some Related Work

Recently, some tag ownership transfer schemes have been proposed; we compare the privacy property between those schemes and ours in Table1 under the proposed model.Table 1
Comparisons of privacy property.
Schemes
Forward privacy
Backward privacy
Extra process
[18]
No
No
Yes
[20]
No
No
Yes
[26]
No
No
Yes
[17]
No
—
—
Ours
Yes
Yes
NoFrom the table, it can be seen that our scheme enjoys privacy property. Although the schemes proposed in [17, 18, 20, 26] are forward privacy and backward privacy under their model or their specific processes, which need extra steps to protect tag’s privacy, those schemes cannot achieve forward privacy and backward privacy under our model, because in our model adversaries are permitted to corrupt tags after tag ownership transfer. Moreover, our model does not need extra processes to protect tag’s privacy, and our scheme uses evolving hash value of secret nonce to update tag’s identifier after each authentication or ownership transfer.


### 5.6. Performance Comparisons

Since RFID reader and server support enough complex cryptographic primitives, we only analyze the computation cost on tag side and the communication cost for messages that tag sends and directly receives from reader side, and we suppose our scheme is based on ECC.For the sake of fair comparison, we suppose an elliptic curve is defined on finite fieldF(2160), which needs 40 bytes and 20 bytes to store an elliptic curve point and an element in the field, respectively. We employ the hash scheme H-PRESENT-128 [44] with 128 bits’ (16 bytes) output. We also suppose the bit length of a random number is 4 bytes and suppose the length of a tag’s identifier is 12 bytes in compliance with the EPC (Electronic Product Code) Class-1 Generation-2 standard. The length of an access command sent by reader is negligible.Comparisons of Communication Cost. Table 2 shows the comparison results of communication cost for some recently proposed tag ownership transfer schemes.Table 2
Comparisons of communication cost.
Schemes
Reader side
Tag side
Total cost (bytes)
[18]
60
60
120
[20]
96
144
240
[26]
80
32
112
[17]
320
160
480
TP
60
60
120The results listed in the table show our scheme achieves better performance on communication cost, and we explain the results as follows. The tag ownership transfer process in [18] uses ElGamal encryption scheme to encrypt tag’s identification information, so we suppose the length of a prime number in the scheme is 20 bytes. The scheme in [20] runs the authentication protocol three times to finish a tag’s ownership transfer, and the protocol (denoted by P2) proposed in [26] will be executed twice to complete the ownership transfer for a tag, while our scheme just runs the ownership transfer protocol only once. To finish a tag’s ownership transfer, a tag in the scheme [17] receives 8 elliptic curve points and sends 4 elliptic curve points; hence it sustains the heaviest communication cost.Comparisons of Computation Cost. We denote the running time of a scalar multiplication operation over an elliptic curve by Ecm and a hash function operation by Ha; Table 3 shows the computation cost on tag side for some recent ownership transfer schemes and ours.Table 3
Comparisons of computation cost.
[18]
[20]
[26]
[17]
TP
3Ha
12Ha
6Ha
14Ecm
≈ 4Ecm + 2HaBecause our ownership transfer protocol TP aims at those tags supporting ECC, thus the computation cost on tag side is higher than those tags not supporting ECC [18, 20, 26]; however, the computation cost of the TP is superior to the schemes in [17], which is also based on ECC on tags.


## 5.1. The Mutual Authentication Protocol

This protocol provides mutual authentication for the reader and tags; we give the details in Figure1 and the interpretation as follows.(1)
R first sends a nonce r1 and an access command query to Tid.(2)
Upon receivingr1 and query, Tid selects another nonce r2 and responds with c1=Encpk(tidj∥r1∥r2).(3)
Upon receivingc1, R decrypts it to get tid′,r1′,r2′. If (r1′=r1) does not hold, R interrupts this process.If(r1′=r1) holds, R then retrieves tid′ in its DB. If both (tid′≠tidnew) and (tid′≠tidold) hold, R assigns another nonce to the variable c2. Otherwise, R assigns the hash value H(r2′∥tid′) to c2 and updates tidold with tidnew if tid′ equals tidnew. R also updates tidnew with the value H(r2′). Finally, R sends back c2 to Tid.(4)
Upon receivingc2, if (c2=H(r2∥tidj)) holds, Tid updates tidj with the value H(r2); namely, tidj+1←H(r2).Figure 1
The proposed mutual authentication protocol.


## 5.2. The Tag Ownership Transfer Protocol

This protocol transfersTid’s ownership from the current owner of RA to the new owner of RB. Before the transfer process, RA and RB should authenticate to each other and setup a secure channel, and then RA sends tidnew, tidold and the other information of Tid to RB.After finishing the ownership transfer process,Tid’s identifier is updated with a new value which is shared with RB, and the public key stored in Tid is replaced with RB’s public key; Figure 2 shows the details.(1)
RB first sends its public key pkB, a nonce r1, and the access command change to Tid.(2)
Once receivingpkB, r1 and change, Tid selects another nonce r2 and assigns the value EncpkB(tidj∥r1∥r2) to c1 and then sends c2=EncpkA(c1) to RA.(3)
Upon receivingc2, RA decrypts it to get c1′ and then forwards c1′ to RB.(4)
Upon receivingc1′, RB decrypts it to get tid′, r1′, and r2′. If (r1′≠r1) holds, RB interrupts this process. If both (tid′≠tidnew) and (tid′≠tidold) hold, RB assigns a nonce to a variable c3; otherwise, RB assigns the value of H(r2′) to c3 and updates tidold with tidnew if tid′ equals tidnew. RB also updates tidnew with H(r2′∥tid′). Finally, RB sends back c3 to Tid(5)
Ifc3 is equal to H(r2), Tid replaces pkA with pkB and updates tidj with H(r2∥tidj) to successfully finish the transfer process.Figure 2
The proposed tag ownership transfer protocol.


## 5.3. Forward Privacy of the Proposed Scheme

According to Definition1 of the proposed model, an (t,O)-adversary A obtains all the information of RA and queries oracles in O in the first stage. A selects two corrupted tags (Tid0j,Tid1j)∈IDA in the second stage to query Test(Tid0j,Tid1j) and guess a bit b∈(0,1) with permission to corrupt Tidbj+k(k=1,2,…).First, there is no link between the identifiertidbj+1 and the knowledge that A obtains in the first stage, because the scheme employs the hash value of a nonce to update the tag’s identifier in authentication and ownership transfer process. Hence, A cannot benefit from this stage to enhance his advantage to infer Tidbj+k(k=1,2,…) from Tid0j and Tid1j, except to guess b with probability of 1/2.Second, Test(Tid0j,Tid1j) will return the transcripts τ(pkB,r1,change,c2,c1′=EncpkB(tidbj∥r1∥r2),c3=H(r2′)) in the second stage; therefore A can take advantage of these transcripts to guess b in the following ways.(1)
Decryptingc1′ to get the nonce r2 and compare the hash value H(r2∥tid0j), H(r2∥tid1j) with tidbj+1=H(r2∥tidbj), respectively, in order to determine the value of b. However, since A does not hold the secret key skB, the probability that he decrypts c1′ with a random secret key is 1/l. In other words, the advantage that A correctly guesses b is 1/l in this way.(2)
Inverting the one-way hash functionH(·) to get the nonce r2′ from c3=H(r2′) and then calculating H(r2∥tid0j) and H(r2∥tid1j) to compare the results with tidbj+1. However, as we all know, it is hard to invert one-way hash function so far, and the adversary can only guess the value of r2′. Hence, the probability A correctly guesses b is 1/lr in this way.Third, after querying Test(Tid0j,Tid1j), A can corrupt Tidbj+1 to obtain its identifier tidbj+1 which is the hash value of H(r2∥tidbj) and then invert this value (namely, tidbj+1) to get tidbj. However, it is difficult to invert the one-way hash function, and A can only guess a value as the input of the hash function. As a result, the probability that A correctly guesses b is 1/lr.Finally, the adversary could keep on corruptingTidbj+k(k=2,3,…) in the future interactions between the tag and its reader. However, this does not help A link Tidbj to Tidbj+k(k=2,…), because the hash value of secret nonce is employed to update the tag’s identifier in our scheme.To sum it up, according to the proposed model the advantage that a(t,O)-adversary A attacks the forward privacy of the scheme is negligible.


## 5.4. Backward Privacy of the Proposed Scheme

Under Definition2, a (t,O)-adversary A receives all the information of RB and queries oracles in O in the first stage. A selects two uncorrupted tags (Tid0j,Tid1j)∈IDA in the second stage for querying Test(Tid0j,Tid1j) and then guesses a bit b∈(0,1), provided the identifier tidbj is given.Except for guessingb with probability 1/2, A can guess b by the following ways.(1) Inferringb from the relation between the interaction transcripts that RA authenticates Tid0j-1/Tid1j-1 and the identifier tidbj=H(r2)=H(r2′):A queries Authenticate(RA,Tid0j-1/Tid1j-1) or Observe(RA,Tid0j-1/Tid1j-1) to get the authentication transcripts c1=EncpkA(tid0j-1∥r1∥r2), c2=H(r2′∥tid0′) (or c1=EncpkA(tid1j-1∥r1∥r2), c2=H(r2′∥tid1′)). However, A cannot gain r2 from c1 because c1 is a ciphertext by the public key pkA; he can only guess the secret key skA with probability 1/l to decrypt c1. A also cannot gain r2′ from c2 by inverting the one-way hash function H(·), except to guess r2′ with probability 1/lr. Hence, in this way the probability that A correctly guesses b is negligible.(2) Inferringb from the test transcripts (pkB,r1,change,c2,c1′=EncpkB(tidbj∥r1∥r2),c3=H(r2′)) as well as the identifier tidbj+1=H(r2∥tidbj): However, tidbj is not related to (pkB,r1,change) and c3, which is a hash value of a nonce. Moreover, c2 is the result of the encryption for c1′, and c1′ is the ciphertext of r1, r2, and tidbj. Hence, this information cannot contribute to the adversary to infer which of Tid0j and Tid1j is selected. In other words, A can only infer tidbj from Tid0j/Tid1j with negligible probability in this way.Furthermore, sincetidbj+1 is the hash value of tidbj and a nonce, the probability that A directly links tidbj+1 to Tid0j/Tid1j is negligible.In summary, the advantage of the adversary attacking the backward privacy of the scheme is negligible according to the proposed model.


## 5.5. Privacy Comparison with Some Related Work

Recently, some tag ownership transfer schemes have been proposed; we compare the privacy property between those schemes and ours in Table1 under the proposed model.Table 1
Comparisons of privacy property.
Schemes
Forward privacy
Backward privacy
Extra process
[18]
No
No
Yes
[20]
No
No
Yes
[26]
No
No
Yes
[17]
No
—
—
Ours
Yes
Yes
NoFrom the table, it can be seen that our scheme enjoys privacy property. Although the schemes proposed in [17, 18, 20, 26] are forward privacy and backward privacy under their model or their specific processes, which need extra steps to protect tag’s privacy, those schemes cannot achieve forward privacy and backward privacy under our model, because in our model adversaries are permitted to corrupt tags after tag ownership transfer. Moreover, our model does not need extra processes to protect tag’s privacy, and our scheme uses evolving hash value of secret nonce to update tag’s identifier after each authentication or ownership transfer.


## 5.6. Performance Comparisons

Since RFID reader and server support enough complex cryptographic primitives, we only analyze the computation cost on tag side and the communication cost for messages that tag sends and directly receives from reader side, and we suppose our scheme is based on ECC.For the sake of fair comparison, we suppose an elliptic curve is defined on finite fieldF(2160), which needs 40 bytes and 20 bytes to store an elliptic curve point and an element in the field, respectively. We employ the hash scheme H-PRESENT-128 [44] with 128 bits’ (16 bytes) output. We also suppose the bit length of a random number is 4 bytes and suppose the length of a tag’s identifier is 12 bytes in compliance with the EPC (Electronic Product Code) Class-1 Generation-2 standard. The length of an access command sent by reader is negligible.Comparisons of Communication Cost. Table 2 shows the comparison results of communication cost for some recently proposed tag ownership transfer schemes.Table 2
Comparisons of communication cost.
Schemes
Reader side
Tag side
Total cost (bytes)
[18]
60
60
120
[20]
96
144
240
[26]
80
32
112
[17]
320
160
480
TP
60
60
120The results listed in the table show our scheme achieves better performance on communication cost, and we explain the results as follows. The tag ownership transfer process in [18] uses ElGamal encryption scheme to encrypt tag’s identification information, so we suppose the length of a prime number in the scheme is 20 bytes. The scheme in [20] runs the authentication protocol three times to finish a tag’s ownership transfer, and the protocol (denoted by P2) proposed in [26] will be executed twice to complete the ownership transfer for a tag, while our scheme just runs the ownership transfer protocol only once. To finish a tag’s ownership transfer, a tag in the scheme [17] receives 8 elliptic curve points and sends 4 elliptic curve points; hence it sustains the heaviest communication cost.Comparisons of Computation Cost. We denote the running time of a scalar multiplication operation over an elliptic curve by Ecm and a hash function operation by Ha; Table 3 shows the computation cost on tag side for some recent ownership transfer schemes and ours.Table 3
Comparisons of computation cost.
[18]
[20]
[26]
[17]
TP
3Ha
12Ha
6Ha
14Ecm
≈ 4Ecm + 2HaBecause our ownership transfer protocol TP aims at those tags supporting ECC, thus the computation cost on tag side is higher than those tags not supporting ECC [18, 20, 26]; however, the computation cost of the TP is superior to the schemes in [17], which is also based on ECC on tags.


## 6. Conclusions

The privacy leakage caused by RFID tags is an important issue and has drawn wide attention. Some studies focused on the privacy problem caused by authentications between reader and tags, and a few researches paid attention to the privacy problem caused by tag ownership transfer. Yet few of them take the malicious owner into account or use formal methods to analyze the privacy leakage caused by tag ownership transfer.In this paper, we propose a privacy model, which concentrates on the privacy problem caused by RFID tag ownership transfer. This model can be used to measure the privacy property of tag ownership transfer scheme, yet it cannot be directly applied to the authentications between reader and tags.We also designed a tag ownership transfer scheme for the tags supporting public key encryption. According to the proposed model, we demonstrate our scheme enjoys both forward privacy and backward privacy. We also give the security analysis in Appendix. Upon comprehensive consideration on privacy protection, communication, and computation cost, our scheme is superior to those compared ones, and the implementation of this scheme would be our next work.



---

*Source: 5084636-2017-03-05.xml*