IdP: issued token

The Identity Provider (IdP) issues a signed OpenVPT JWT in response to the platform request. The token includes the platform audience (aud) and the one-time challenge (nonce) to bind it to the requesting platform and this specific session.

Issued JWT (OpenVPT token)

The platform will validate signature + aud + nonce and then store only a minimal binding.

What the IdP is doing

Issues a signed token

The IdP creates a JWT and cryptographically signs it. This signature allows the platform to verify authenticity without contacting the IdP again during verification.

Binds the token to the platform (aud)

The aud claim ensures the token is valid only for the requesting platform. Even if copied, it must be rejected by any other service.

Binds the token to this request (nonce)

The nonce is echoed back inside the signed token, proving the token is fresh and was minted specifically in response to the platform’s one-time challenge.

Returns state unchanged

The IdP does not interpret state. It simply returns it so the platform can safely match the response to the original user session and prevent cross-session attacks.

Privacy note

The token contains only policy-relevant claims (personhood / age bracket / trust level), not identity data like name, date of birth, or ID number.