Fully onchain ticketing with ZK proofs