Skip to content

Data Flow

client -- blinded request + optional proof --> issuer
client <-- evaluation or blind signature -- issuer
client -- finalized V4 token -------------> verifier
verifier -- validated metadata -----------> issuer discovery
verifier -- atomic spend -----------------> Redis

Issuance

The issuer checks the optional Sybil proof and evaluates a 33-byte base64url-decoded blinded P-256 element. The client performs unblinding and constructs the redemption token.

Verification

POST /v1/verify validates the V4 token against verifier scope and issuer-trusted private verification material. An atomic store mutation decides whether the request is fresh.

POST /v1/check follows validation paths but deliberately skips the spend mutation. It must not be used as evidence that a token has been consumed.