Security
Authorization and replay protection
Every signature is narrow, single-use and time-limited.
Protections
- EIP-712 domain includes the chain ID and contract address, so a signature can't be used on another network or contract.
- Per-signer nonces: each signature works once.
- Every signature has a deadline.
- Acceptances are bound to the slot version and package revision, so accepting stale terms doesn't count after a change.
- Funding is bound to the configuration hash; if anything changed, it reverts with ConfigMismatch.
- The permit is wrapped so a front-run permit can't block funding.
Server checks
- API routes verify the Privy access token and that the caller is a participant of the booking.
- Invites and setup links are bound to the invited email.
- Relay, deadline, payout and faucet routes are rate-limited.