Bitcoin Forum
November 09, 2024, 11:12:39 AM *
News: Latest Bitcoin Core release: 28.0 [Torrent]
 
   Home   Help Search Login Register More  
Pages: [1]
  Print  
Author Topic: How to create a deterministic/provably fair/cheatproof lottery?  (Read 727 times)
biglottery (OP)
Newbie
*
Offline Offline

Activity: 2
Merit: 0


View Profile
June 11, 2015, 11:40:49 PM
 #1

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?
RHavar
Legendary
*
Offline Offline

Activity: 1463
Merit: 1886



View Profile
June 11, 2015, 11:47:10 PM
 #2

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://bitcointalk.org/index.php?topic=1084670.msg11576333#msg11576333

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


Check out gamblingsitefinder.com for a decent list/rankings of crypto casinos. Note: I have no affiliation or interest in it, and don't even agree with all the rankings ... but it's the only uncorrupted review site I'm aware of.
biglottery (OP)
Newbie
*
Offline Offline

Activity: 2
Merit: 0


View Profile
June 12, 2015, 12:59:33 AM
 #3

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://bitcointalk.org/index.php?topic=1084670.msg11576333#msg11576333

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.
Pages: [1]
  Print  
 
Jump to:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.19 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!