http://invest2nfeyjkatnooazw3uyoql55n2n7jlzduskc6tthzgshp3pvrid.onion/faucet-cryptocurrency/index30.html
One then makes a contract with the rule that, every N blocks, the contract would pick a random index in the Merkle tree (using the previous block hash, accessible from contract code, as a source of randomness), and give X ether to the first entity to supply a transaction with a simplified payment verification-like proof of ownership of the block at that particular index in the tree.