Author

Topic: Anonymous Bitcoin Lottery (Read 1133 times)

newbie
Activity: 56
Merit: 0
May 01, 2013, 12:19:01 PM
#12
What about simultaneous transactions?
30 people send 0.1 each at the same time... all in the same block.

Oh and upper limits don't make sense at all, since one can easily just bet from different addresses.

Even the value of the Dow Jones is not very random and it also doesn't change every second of the day. Also I'm not too sure if you can even get quotes down to the second there.

At the time when 30 are thirty people purchasing tickets (actually, well before then) I will introduce no limit daily (or hourly) lotteries.  This means the limit won't matter anymore.

And yes, I understand the upper limit doesn't make any sense in that you can bypass it. I was actually thinking of removing it since you can easily get around it.
legendary
Activity: 2618
Merit: 1007
May 01, 2013, 12:13:08 PM
#11
What about simultaneous transactions?
30 people send 0.1 each at the same time... all in the same block.

Oh and upper limits don't make sense at all, since one can easily just bet from different addresses.

Even the value of the Dow Jones is not very random and it also doesn't change every second of the day. Also I'm not too sure if you can even get quotes down to the second there.
newbie
Activity: 56
Merit: 0
May 01, 2013, 10:11:23 AM
#10
Currently, if the lottery goes over 1BTC when the the winner is being selected, the modulus is of the total tickets.  That means, if for some reason, the lottery is at .99 and someone deposits .1, the lottery pot will go to 1.09 and the total tickets will be 1090 tickets.  The odds will change, but very little and still giving the last user who paid the .1 the same odds he/she thought they were getting before.

full member
Activity: 215
Merit: 100
Shamantastic!
May 01, 2013, 10:00:07 AM
#9
So the only issue I see is if 2 anonymous entities are vying for the last few tickets or large purchase of tickets  as 1.000BTC is approached. Split the purchase or rollover into next round? If I send 0.100 BTC and expect those odds, then surprised to find my chances were split between 2 lotteries, then I may be disappointed. Any chance of choosing a rollover option? Maybe 2 lotteries running concurrent - one for split and one for rollover.
newbie
Activity: 56
Merit: 0
May 01, 2013, 09:47:42 AM
#8
I went ahead and dropped rates to 5% to help get things rolling.  If there is enough interest, I might drop fees (except for transaction fees) completely until/if it becomes popular.
newbie
Activity: 56
Merit: 0
May 01, 2013, 09:44:44 AM
#7
I have thought of faster payouts (closing at end of day, etc) and I would eventually do that, but I would have to have more people playing to make it worth while for anyone.

Also, as soon as I get near that traffic, I will drop rates to as low as is feasible (2-3%)

Last I checked for block confirmations, I see no feasible way to predict the exact second that the block will be received and even if the miners choose this, the time has to be confirmed by two different sources for the block.  If I am wrong in this, then when the last transaction takes place, I will pick a random, verifiable source number (current price of X stock, etc etc)

Would you suggest a payout everyday if there are at least two players in the lottery?  This would ensure more lotteries (which I would assume would help build trust)?
legendary
Activity: 2618
Merit: 1007
May 01, 2013, 09:33:26 AM
#6
Since you can give a certain probability to each second in the future that a block will contain this time stamp (something miners choose by the way) I would guess it could be gamed in the long run. With these high fees and the need to trust you that you really pay out as well as the problem that 1 btc is too little for high rollers but too much for the little people I don't see this flying for other reasons.

Once the lottery pays out every hour or so, I'd love to try to game it though! Smiley
newbie
Activity: 56
Merit: 0
May 01, 2013, 09:25:22 AM
#5
The .001 ticket without the fee is the cheapest and safest way to go.  Can't argue against that.

And hopefully it is unriggable.  I talked to some very smart guys about fixing it up in such a manor but if there are any flaws, I would hope find them sooner than later.
full member
Activity: 215
Merit: 100
Shamantastic!
May 01, 2013, 09:21:05 AM
#4
Do you recommend trying to send 0.001 without TX fee? Because as long as you continue the lottery, the fee is the killer - not yours but the dumb-ass clients. I used a forked client until 8.1 because fees are no longer fractions of a BTC. Only installed 8.1 because of the blockchain screwup last month.
Good luck with your project lottery, very clean idea. Well thought out and unriggable? Hope the nerd police don't find a flaw.
newbie
Activity: 56
Merit: 0
May 01, 2013, 09:11:07 AM
#3
Reward is 90% (10% in fees which I hopefully will decrease as more people start purchasing tickets) of 1BTC (end of lottery)

That means, if you put in .001 for one ticket (1/1000) you make .9 or a 900 X Larger amount.
If you put in the max (.1) for a 100 tickets (1/10) you make .9 or a 9 X Larger amount.

Less of a gamble if you have more, but less of a reward (like all systems)

I tend to push more towards the .1 amount, but that is a personal preference.  The system allows you to win with one ticket, so even though your chances are higher, you still can loose to someone with just a tiny amount of bitcoin (reason for making this is to allow people with very little try and get more)
full member
Activity: 215
Merit: 100
Shamantastic!
May 01, 2013, 08:59:22 AM
#2
Looks legit. I think I'll try it out.
Odds are 999/1
any recommend on bet size vs. reward?
newbie
Activity: 56
Merit: 0
May 01, 2013, 08:45:57 AM
#1
With gambling and bitcoin seeming to go hand in hand, I created a system similar to Satoshi's Dice game except the principle is for a lottery based system.  The main difference is that payout is after the lottery is over versus instantly.  The upside, is payout is more even and predictable.  You can still choose your odds by how many tickets you purchase (a ticket is .001) but for those that only have a little, you have a chance to win big.

Winner selection is done by grabbing the last transaction, grabbing the time the block was submitted, converting to a unix timestamp and then finding the modulus of that and the total number of tickets.  This prevents people from gaming the system. Even if they try and submit the last transaction at X time, the block is sent after that.  This means no user has control over the randomness of the time.  Along with that, all of the information is publicly available (transaction time / block time / # of tickets) so that the winner can be verified by anyone.

Any feedback would be awesome.

http://www.btc-l.com
Jump to: