Set-up Phase
When each tag is manufactured, each smart tag is associated with a secret
identifier, u, and two polynomial functions:
| A(x,u) | = Au,1 ⋅x + Au,0 | ||
| Au,1 | = a11 ⋅ u + a01 | ||
| Au,0 | = a10 ⋅ u + a00 | ||
| B(x,u) | = Bu,1 ⋅x + Bu,0 | ||
| Bu,1 | = b11 ⋅ u + b01 | ||
| Bu,0 | = b10 ⋅ u + b00 |
{a11,a10,a01,a00},{b11,b10,b01,b00}
.
When a RFID reader is initialized, the reader is preloaded with an elliptic point α, and three different polynomial functions
| C(x) | = c1 ⋅x + c0 | ||
| D(x) | = d1 ⋅x + d0 | ||
| E(x) | = e2 ⋅x2 + e 1 ⋅x + e0 | ||
Communication Phase
Each transmission starts, when the reader first sends a random session
nonce, γ0 to the tag. After receiving data from reader, the tag generate a random
session nonce of its own, called γ1, and hash the concatenations of these two
random session. Afterwards, the user computes its secret functions A and B given
γ2. That is, γ2 = H(γ1|γ0). Last, the tag sends back a packet of data
< γ1,A(γ2,u),B(γ2,u) > to reader side.
Authentication Phase
With the carefully selected coefficients, the authentication process could be
achieved by checking the following equality, as shown in the figure 1
below5:
Ĉ(γ2) × A(γ2,u) + (γ2) × B(γ2,u) | |||||
| = α × C(γ2) ⋅ A(γ2,u) + α × D(γ2) ⋅ B(γ2,u) | |||||
= α × C(γ2) ⋅ A(γ2,u) + D(γ2) ⋅ B(γ2,u)![]() | |||||
| = α × E(γ2) | (Equation 6) |
Vulnerability to Tag Compromise Attack
All tags are preloaded with the same coefficient < a11,a10,a01,a00,b11,b10,b01,b00 >.
Assume an attacker has compromised k tags, and each secret function in the tag
could leak out 2 pieces of meaningful information about the tag secret u. In other
words, the attacker could obtain the following equations:
| Tag 1: | ![]() | ||
| … | |||
| Tag k: | ![]() |
If the attacker could fix the dynamic input x, such as having a rogue reader
interrogating the compromised tags, then x would no longer be an effect. In that
case, there would be in total 4k equations for k different tags, and the unknowns
include
(k+8) unknowns. Since the
number of variables is less than the number of equation in the linear system,
thus, the attacker is able to reveal the secret parameters by solving this linear
system.