JtiStore
in
CONTRACT.md §21.7.2 check 8 — single-use `jti` tracking for DPoP proofs.
One method, and its contract is the whole point: self::claim() must be
atomic. A contains?-then-add pair read as two calls is a race that two
concurrent replays of the same proof can both win.
iat freshness bounds the replay window; this guard is what makes the window
unusable.
Table of Contents
Methods
- claim() : bool
- Record `$jti` as used until `$expiresAtUnix`.
Methods
claim()
Record `$jti` as used until `$expiresAtUnix`.
public
claim(string $jti, int $expiresAtUnix) : bool
Parameters
- $jti : string
-
The proof's
jticlaim. - $expiresAtUnix : int
-
When the entry may be forgotten (UNIX seconds).
Return values
bool —true if this is the first sighting, false if it is a replay.