@@ -199,6 +199,13 @@ WWW-Authenticate: PrivateToken challenge=abc..., token-key=123...,
199
199
PrivateToken challenge=def..., token-key=234...
200
200
~~~
201
201
202
+ If a Client fetches a batch of multiple tokens for future use that are bound
203
+ to a specific redemption context (the redemption_context in the TokenChallenge
204
+ was not empty), Clients SHOULD discard these tokens upon flushing state such as
205
+ HTTP cookies {{?COOKIES=I-D.ietf-httpbis-rfc6265bis}}, or changing networks.
206
+ Using these tokens in a context that otherwise would not be linkable to the
207
+ original context could allow the Origin to recognize a Client.
208
+
202
209
# # Token Redemption {#redemption}
203
210
204
211
The output of the issuance protocol is a token that corresponds to the origin's
@@ -336,15 +343,20 @@ party by another, as shown below.
336
343
{: # fig-replay title="Token Architectural Components"}
337
344
338
345
Context-bound token challenges require clients to obtain matching tokens when challenged,
339
- rather than presenting a token that was obtained in the past. This can make it more likely
340
- that issuance and redemption events will occur at approximately the same time. For example, if
341
- a client is challenged for a token with a unique context at time T1 and then subsequently obtains
342
- a token at time T2, a colluding issuer and origin can link this to the same client if
343
- T2 is unique to the client. This linkability is less feasible as the number of issuance
344
- events at time T2 increases. Depending on the "max-age" token challenge attribute,
345
- clients MAY try to augment the time between getting challenged then redeeming a token
346
- so as to make this sort of linkability more difficult. For more discussion on correlation risks between
347
- token issuance and redemption, see {{?I-D.ietf-privacypass-architecture}}.
346
+ rather than presenting a token that was obtained from a different context in the past. This
347
+ can make it more likely that issuance and redemption events will occur at approximately the
348
+ same time. For example, if a client is challenged for a token with a unique context at
349
+ time T1 and then subsequently obtains a token at time T2, a colluding issuer and origin can
350
+ link this to the same client if T2 is unique to the client. This linkability is less
351
+ feasible as the number of issuance events at time T2 increases. Depending on the "max-age"
352
+ token challenge attribute, clients MAY try to augment the time between getting challenged
353
+ then redeeming a token so as to make this sort of linkability more difficult. For more
354
+ discussion on correlation risks between token issuance and redemption, see
355
+ {{?I-D.ietf-privacypass-architecture}}.
356
+
357
+ As discussed in {{challenge}}, clients SHOULD discard any context-bound tokens upon flushing
358
+ cookies or changing networks, to prevent an Origin using the redemption context state as
359
+ a cookie to recognize clients.
348
360
349
361
Applications SHOULD constrain tokens to a single origin unless the use case can
350
362
accommodate such replay attacks.
0 commit comments