Precommitment is a solved problem which doesn’t need a trusted website. For example, simplicio could’ve released a hash precommitment (made using a local hash utility like sha512sum) to Yvain after taking the survey and just now unveiled that input, if he was serious about the counterfactual.
(He would also want to replace the ‘flip a coin’ with eg. ‘total number of survey participants was odd’.)
You can even still easily do a verifiable coin flip now. For example, you could pick a commonly observable future event like a property of a Bitcoin block 24 hours from now, or you could both post a hash precommitment of a random bit, then when both are posted, each releases the chosen bit, verifies the other’s hash, and XOR the 2 bits to choose the winner.
Precommitment is a solved problem which doesn’t need a trusted website. For example, simplicio could’ve released a hash precommitment (made using a local hash utility like
sha512sum
) to Yvain after taking the survey and just now unveiled that input, if he was serious about the counterfactual.(He would also want to replace the ‘flip a coin’ with eg. ‘total number of survey participants was odd’.)
You can even still easily do a verifiable coin flip now. For example, you could pick a commonly observable future event like a property of a Bitcoin block 24 hours from now, or you could both post a hash precommitment of a random bit, then when both are posted, each releases the chosen bit, verifies the other’s hash, and XOR the 2 bits to choose the winner.
No need for Bitcoin etc; one side commits to a bit, then the other side calls heads or tails, and they win if the call was correct.