  In this paper, we consider the problem of generating fair randomness in a
deterministic, multi-agent context (for instance, a decentralised game built on
a blockchain). The existing state-of-the-art approaches are either susceptible
to manipulation if the stakes are high enough, or they are not generally
applicable (specifically for massive game worlds as opposed to games between a
small set of players). We propose a novel method based on game theory: By
allowing agents to bet on the outcomes of random events against the miners (who
are ultimately responsible for the randomness), we are able to align the
incentives so that the distribution of random events is skewed only slightly
even if miners are trying to maximise their profit and engage in block
withholding to cheat in games.
