Author

Topic: How to create a deterministic/provably fair/cheatproof lottery? (Read 730 times)

newbie
Activity: 2
Merit: 0
There's probably some fancy cryptographic ways to do it that has a trustless drawing

That's what I really want.

but I'd probably just go with a simple provably fair scheme such as:

https://bitcointalksearch.org/topic/m.11576333

I like that system, but really there are tons of ways to make the drawing part provable. It's the paying of the funds that is the unsolved part. If I knew for sure that people would play the game I would offer a big bounty to the serious crypto developers to come up with a working scheme.
legendary
Activity: 1463
Merit: 1886
There's probably some fancy cryptographic ways to do it that has a trustless drawing, but I'd probably just go with a simple provably fair scheme such as:

https://bitcointalksearch.org/topic/m.11576333

and make some awesome tooling for people to verify and use. Since the game is provably fair, there would be nothing wrong with you dumping a lot of your own money into the game (knowing you'll win most games), although it may take longer to build up some trust.

Or one way to kick-start the whole process would be to build all the tooling which easy for people (especially the escrow) to run/verify and then find someone very trusted (e.g. dooglus) to escrow the funds and payout at each drawing

newbie
Activity: 2
Merit: 0
I want to create a really big lottery, like 100 BTC or 200 BTC each drawing (yes, I have the funds). But I have no reputation so everyone would just say it's a scam.

So it must be provably fair. Provably fair individual rounds are easy enough. But I really want to do the lottery format where people buy tickets and then there is a single drawing once a week. I think that's the only way I will be able to collect enough to offer such large jackpots.

With all of the recent advances like multisig and sidechains and that time-delay-return-funds thing there must be some way to create a provably fair lottery, right?

I think the safeguards people would want would be:

  • Once you buy a ticket, if that ticket is a winning ticket, you are guaranteed to receive the prize once the "drawing time" is reached. Because of that there can't be any real "drawing" done by the site. So even if the site disappeared, a winning ticket would still get their funds.
  • At least one winning ticket needs to be issued each drawing. Or at least the odds of a winning ticket being issued need to be provable.
  • I don't think issuing the tickets needs to be provably guaranteed. I mean, the time to buy a ticket is only a few minutes and I think people are ok taking the risk that the site won't disappear right after they send in the money for their ticket.

That means the challenges that needs to be solved are:

  • A way of issuing a ticket that can be used to access funds after a certain point in time.
  • A way of proving that the site is issuing a winning ticket every X% of the time.
  • Importantly, a ticket holder can't know that their ticket is a winning ticket until the "drawing time" is reached. Otherwise no one would buy tickets after the winner said they have the winning ticket.

So, ideas on how to make this a reality?
Jump to: