You submit a seed with your bet, which gets hashed with a unique, sequential bet_id. That hash is then signed by a key pair on our server. The contract knows the public key, and then verifies that this signature is correct. Due to the intricacies of ECC, this signature must be unique and random. This is then used for a provably fair random number. All results can be verified on the blockchain.