Author

Topic: Bitcoin Lottery: minimum just 0.01 btc! Next draw: July 1 Jackpot 1.52 btc (Read 10978 times)

newbie
Activity: 28
Merit: 0
I am considering also to use Mega Millions numbers, like BitLotto. Any input?
I think it's a great idea!  Grin Would you hash it like me?
Yes, I think I will use the same hash... Wink
hero member
Activity: 672
Merit: 500
BitLotto - best odds + best payouts + cheat-proof
I am considering also to use Mega Millions numbers, like BitLotto. Any input?
I think it's a great idea!  Grin Would you hash it like me?
newbie
Activity: 42
Merit: 0
I always kill these things when I sign up.  First was Double Trouble, now this.  Lol.  I am the last transaction on both
newbie
Activity: 28
Merit: 0
I am considering also to use Mega Millions numbers, like BitLotto. Any input?
newbie
Activity: 28
Merit: 0
Great!
Jackpot 1.52 btc.
newbie
Activity: 42
Merit: 0
I put in 2 entries at .25BTC each.  Here's to dreaming!
newbie
Activity: 28
Merit: 0
26 days to go! Jackpot 1.02 btc!
newbie
Activity: 28
Merit: 0
Thought i'd give it a whirl, just put in 0.47 jackpot now 0.98  Grin
No, it is even bigger, 1.02 btc  Cheesy. (There were some bitcoin cents used to pay the previous winner).
hero member
Activity: 910
Merit: 1005
Thought i'd give it a whirl, just put in 0.47 jackpot now 0.98  Grin
newbie
Activity: 2
Merit: 0
sent my .01 bitcoins. now i'm broke until the mining pool i'm in pays out
newbie
Activity: 28
Merit: 0
I just sent 0.01, do you see my address?
Yes: 1KSHom9Nve3zAhdrBB5PZGnTaPVS93YAgE

Jackpot is 0.54 btc now!
PIO
newbie
Activity: 27
Merit: 0
I just sent 0.01, do you see my address?
newbie
Activity: 28
Merit: 0
Jackpot is 0.33 btc now!
newbie
Activity: 41
Merit: 0
How can you only own one of those addresses? Are you using an e-wallet or something?

http://sites.google.com/site/altpluzf4/lotto.png

I have no idea.

*Edit* Right before submitting...
Thanks for the clarification Maged. I guess I've not invested enough time into learning the inner workings of bitcoin :-/
Sorry for my stupidity.

Thanks for your time.
legendary
Activity: 1204
Merit: 1015
Stupid question, but...

I made this transaction: http://blockexplorer.com/tx/7341ab3a4ad66dfb7750e21fdd61f78d25f33cf1562da3180ae14508c949ada1

It has two addresses though.
1eA54G3kn36wEfDazdF1DEizaWkc2pXTF
14FMPixUmA8ha77LzzDaNJfVMhd9zrdqVr

The first address, is not mine. The second one is.
So, what happens if my "ticket" won? Would the winnings go to that other address? :-/

That first address was used to give you your "change" from a previous transaction. You own that address, it's just hidden from you in the UI. You will still receive bitcoins just fine on that address.
ene
newbie
Activity: 42
Merit: 0
How can you only own one of those addresses? Are you using an e-wallet or something?
newbie
Activity: 41
Merit: 0
Stupid question, but...

I made this transaction: http://blockexplorer.com/tx/7341ab3a4ad66dfb7750e21fdd61f78d25f33cf1562da3180ae14508c949ada1

It has two addresses though.
1eA54G3kn36wEfDazdF1DEizaWkc2pXTF
14FMPixUmA8ha77LzzDaNJfVMhd9zrdqVr

The first address, is not mine. The second one is.
So, what happens if my "ticket" won? Would the winnings go to that other address? :-/
newbie
Activity: 28
Merit: 0
newbie
Activity: 28
Merit: 0
newbie
Activity: 28
Merit: 0
The expected amount here is exactly the same you put in.

My mistake, in the same post I simultaneously remembered and forgot that you aren't charging any fees.  Cheesy
Never mind.
ene
newbie
Activity: 42
Merit: 0
The expected amount here is exactly the same you put in.

My mistake, in the same post I simultaneously remembered and forgot that you aren't charging any fees.  Cheesy
newbie
Activity: 28
Merit: 0
Can't you just send 100 BTC into the fund a few minutes before the draw closes, and then almost certainly win everybody's bitcoins? Then use those bitcoins again for the next lottery.
Yes, the chance of winning is proportional to the amount. You have also a small chance of loosing (almost) all your bitcoins if the average is small. It is about the same as buying almost all tickets of a lottery. And if you win, you almost win nothing (compared to your 100 btc)

Yes, like any lottery the expected amount of winning will be less than the amount you put in (unless you are the only person playing the lottery). But since you're you, you can just choose not to pay out the money in that case and leave the forum forever. You don't make any profit from this lottery (or any future lottery) so you have no reason to hang around.
The expected amount here is exactly the same you put in.
It is just the fun. Maybe some day I create a lottery that does make some profit, but for now I leave it this way. Making 1 or 2 percent profit is also not worth the time you put in it (or the Jackpot must be really really high).
ene
newbie
Activity: 42
Merit: 0
Can't you just send 100 BTC into the fund a few minutes before the draw closes, and then almost certainly win everybody's bitcoins? Then use those bitcoins again for the next lottery.
Yes, the chance of winning is proportional to the amount. You have also a small chance of loosing (almost) all your bitcoins if the average is small. It is about the same as buying almost all tickets of a lottery. And if you win, you almost win nothing (compared to your 100 btc)

Yes, like any lottery the expected amount of winning will be less than the amount you put in (unless you are the only person playing the lottery). But since you're you, you can just choose not to pay out the money in that case and leave the forum forever. You don't make any profit from this lottery (or any future lottery) so you have no reason to hang around.
newbie
Activity: 28
Merit: 0
Can't you just send 100 BTC into the fund a few minutes before the draw closes, and then almost certainly win everybody's bitcoins? Then use those bitcoins again for the next lottery.
Yes, the chance of winning is proportional to the amount. You have also a small chance of loosing (almost) all your bitcoins if the average is small. It is about the same as buying almost all tickets of a lottery. And if you win, you almost win nothing (compared to your 100 btc)
ene
newbie
Activity: 42
Merit: 0
Can't you just send 100 BTC into the fund a few minutes before the draw closes, and then almost certainly win everybody's bitcoins? Then use those bitcoins again for the next lottery.
newbie
Activity: 28
Merit: 0
Paid it: http://blockexplorer.com/address/113Wq7ngZiqosdwrmjzXxmvf5boPUaQw95
(It is the one with date 2011-05-31 05:58:20)
Congratulations!
newbie
Activity: 28
Merit: 0
0.01 btc to go...

Jackpot for 3 July is 0.04 btc!
newbie
Activity: 28
Merit: 0
newbie
Activity: 28
Merit: 0
I need 0.03 bitcoin for the transaction... But I have only 0.36 btc because of the first six times bonus... So the wait is till I get some mining cents or new tickets.
newbie
Activity: 28
Merit: 0
113Wq7ngZiqosdwrmjzXxmvf5boPUaQw95 won 0.36 btc!

The random key was

Xgh=P3cTMcCGV=QMwywOa\3DyK^tW9P?u]3GnD\X0f3ZXfJK>
with tickets:
    ["1Km4sASEeKUWPtjRaSxmVghF5FfkadWVei",2],
    ["18uZGH42pcmHVtZ8sux7bCf8oJJtSCAAJs",1],
    ["1Jmn97kfJ6DBBCuft6Z1oW8e2Lwgheyr6s",2],
    ["1Jmn97kfJ6DBBCuft6Z1oW8e2Lwgheyr6s",1],
    ["1Jmn97kfJ6DBBCuft6Z1oW8e2Lwgheyr6s",1],
    ["1Myn229CXkW796kDrUd9obGbC43aYzeTAb",3],
    ["1368J5rDUheBr1kvaubWuDDFBnSaTcBogK",1],
    ["1EVP7etmA6RRBFW7sgf595QtiUxX3fs1Mt",4],
    ["1F35MvPKPSEc1L198dPR1weyXnkDG516fN",1],
    ["113Wq7ngZiqosdwrmjzXxmvf5boPUaQw95",10],
    ["1NcG2RD6SQ2DE34tuT2fEFy2BEBP1ritpA",10]
newbie
Activity: 28
Merit: 0
I sent 0.1, hope I'm not too late Smiley (also am I one of the six?)

No unfortunately not. Jackpot is now 0.36 btc. I will look tommorow who won. But let's say the game stops at 23:59:59 28 may UTC (3 hours). The others will participate in next lotto.
newbie
Activity: 24
Merit: 0
I sent 0.1, hope I'm not too late Smiley (also am I one of the six?)
newbie
Activity: 28
Merit: 0
Then it must be 0.16 btc now =)
member
Activity: 71
Merit: 10
newbie
Activity: 28
Merit: 0
Wait are you saying I am guaranteed 0.01 BTC in profit + a chance to win if I transfer you my 0.01 BTC?Huh?
Yes, that was actually the case Wink For me 6 * 0.03 = 0.18, bigger than the jackpot size Wink
newbie
Activity: 22
Merit: 0
hero member
Activity: 740
Merit: 500
Hello world!
Wait are you saying I am guaranteed 0.01 BTC in profit + a chance to win if I transfer you my 0.01 BTC?Huh?
newbie
Activity: 28
Merit: 0
Size is 0.11 bitcoin now!
newbie
Activity: 28
Merit: 0
newbie
Activity: 28
Merit: 0
newbie
Activity: 23
Merit: 0
ok i finally managed to transfer Cheesy am i still on of the first 6 ?
newbie
Activity: 28
Merit: 0
Just 14 hours to go! You can still get your 0.02 btc!
hero member
Activity: 672
Merit: 500
BitLotto - best odds + best payouts + cheat-proof
Do you know whether the transaction hashes are totally random/uncontrollable? If so, the hashes can be added up and used for the random generator as quite easy alternative.
They are fairly random. BUT the RANDOM number for the winner has to come after all the tickets, for IF the user knows what transaction hash will win they could re-send over and over until they get a hash that wins. For mine, I wait till the tickets are in then set up finding who won.
Do you think it is secure now?

Edit: okay it is still possible for me to try and try till I win... so that's the reason to add the hash of block 1 and 2 after 0:00... =) I maybe implement that next week.
Ya, I think your getting why I use block data as well. Your hash of random data is secure against others cheating but you still could. Adding block data makes it so you can't as well.
newbie
Activity: 28
Merit: 0
Do you know whether the transaction hashes are totally random/uncontrollable? If so, the hashes can be added up and used for the random generator as quite easy alternative.
They are fairly random. BUT the RANDOM number for the winner has to come after all the tickets, for IF the user knows what transaction hash will win they could re-send over and over until they get a hash that wins. For mine, I wait till the tickets are in then set up finding who won.
Do you think it is secure now?

Edit: okay it is still possible for me to try and try till I win... so that's the reason to add the hash of block 1 and 2 after 0:00... =) I maybe implement that next week.
newbie
Activity: 28
Merit: 0
Okay, I implemented a somewhat simple random generator. It is quite secure for now, but I will likely improve it in the future. The SHA 256 hash for the random string is:
Quote
8b3de709bd7c91e2eeeb42c2cce5f63f38866fa72075b3d4da8aa8c88f2c5a7c
newbie
Activity: 28
Merit: 0
The algorithm changed by the way. The block size is now the average deposit.
newbie
Activity: 28
Merit: 0
Do you know whether the transaction hashes are totally random/uncontrollable? If so, the hashes can be added up and used for the random generator as quite easy alternative.
They are fairly random. BUT the RANDOM number for the winner has to come after all the tickets, for IF the user knows what transaction hash will win they could re-send over and over until they get a hash that wins. For mine, I wait till the tickets are in then set up finding who won.
Yes I thought about that later. So basically secure hash the (big) random value and distribute the hash?
hero member
Activity: 672
Merit: 500
BitLotto - best odds + best payouts + cheat-proof
Do you know whether the transaction hashes are totally random/uncontrollable? If so, the hashes can be added up and used for the random generator as quite easy alternative.
They are fairly random. BUT the RANDOM number for the winner has to come after all the tickets, for IF the user knows what transaction hash will win they could re-send over and over until they get a hash that wins. For mine, I wait till the tickets are in then set up finding who won.
newbie
Activity: 28
Merit: 0
I would like to join aswell, but I am new to bitcoin and only got 0.02 bc and it wont let me send 0.01
Always says something about transaction fee because the amount is too large!? Huh
The current client asks 0.01 btc if you send small amounts. That amount is far larger in the development code.
Strange that it won't let you send 0.01 if you have 0.02... Maybe try to get some other cents (mining, trading, etc)?
newbie
Activity: 23
Merit: 0
I would like to join aswell, but I am new to bitcoin and only got 0.02 bc and it wont let me send 0.01
Always says something about transaction fee because the amount is too large!? Huh
newbie
Activity: 28
Merit: 0
Do you know whether the transaction hashes are totally random/uncontrollable? If so, the hashes can be added up and used for the random generator as quite easy alternative.
newbie
Activity: 28
Merit: 0
Okay, great point! If the jackpot contains more than a few bitcoins I will surely look at what I can do. Your method is very nice by the way!
hero member
Activity: 672
Merit: 500
BitLotto - best odds + best payouts + cheat-proof
Yes, but I apply the same method as you do: people can see what comes in and out. So people can see it is paid to one / a few that participated=).
Yes, you are right in that you show the winnings move around BUT unlike yours *I have NO control* over picking the winner. I can not fake the random numbers. That was what I was getting at. Yes, you show that you are paying. BUT, the results themselves can not be verified in yours. The key is getting some type of list of entrants, publish it, THEN have the winners come from random numbers that you CAN NOT manipulate but still everyone can get those random numbers. If you want help coming up with something I'm willing to help...
newbie
Activity: 28
Merit: 0
I think I get what your doing... I think. I'm pretty tired and I don't know python so I'll have to look later.
I get that your trying to be open but even though people can see the code there is no way really for the users to know you are actually running it. Someone could just -say- they are going to run that code. Enter a few of their own entries. Tell the users that they ran the code but instead just pay themselves and make up results that fit. (I'm not saying you are doing this but for people to bet lot's of money they need CERTAINTY you can't cheat. I've seen a few lottery scams but I am willing to help you make it so that you can't cheat...) Anyways, good luck!
Yes, but I apply the same method as you do: people can see what comes in and out. So people can see it is paid to one / a few that participated=).
hero member
Activity: 672
Merit: 500
BitLotto - best odds + best payouts + cheat-proof
I think I get what your doing... I think. I'm pretty tired and I don't know python so I'll have to look later.
I get that your trying to be open but even though people can see the code there is no way really for the users to know you are actually running it. Someone could just -say- they are going to run that code. Enter a few of their own entries. Tell the users that they ran the code but instead just pay themselves and make up results that fit. (I'm not saying you are doing this but for people to bet lot's of money they need CERTAINTY you can't cheat. I've seen a few lottery scams but I am willing to help you make it so that you can't cheat...) Anyways, good luck!

Eh I guess it's still a possibility but he did indeed send me my .02 BTC for being one of the first 6....
I know. I'm not saying he is a scammer but he could change a few things to eliminate a very easy way to fake results.
newbie
Activity: 25
Merit: 0
I think I get what your doing... I think. I'm pretty tired and I don't know python so I'll have to look later.
I get that your trying to be open but even though people can see the code there is no way really for the users to know you are actually running it. Someone could just -say- they are going to run that code. Enter a few of their own entries. Tell the users that they ran the code but instead just pay themselves and make up results that fit. (I'm not saying you are doing this but for people to bet lot's of money they need CERTAINTY you can't cheat. I've seen a few lottery scams but I am willing to help you make it so that you can't cheat...) Anyways, good luck!

Eh I guess it's still a possibility but he did indeed send me my .02 BTC for being one of the first 6....
hero member
Activity: 672
Merit: 500
BitLotto - best odds + best payouts + cheat-proof
I think I get what your doing... I think. I'm pretty tired and I don't know python so I'll have to look later.
I get that your trying to be open but even though people can see the code there is no way really for the users to know you are actually running it. Someone could just -say- they are going to run that code. Enter a few of their own entries. Tell the users that they ran the code but instead just pay themselves and make up results that fit. (I'm not saying you are doing this but for people to bet lot's of money they need CERTAINTY you can't cheat. I've seen a few lottery scams but I am willing to help you make it so that you can't cheat...) Anyways, good luck!
newbie
Activity: 28
Merit: 0
Jackpot: 0.07, two days to go!
If the total jackpot is not more than a bitcoin I am inclined to reduce the size of the blocks (to not give everyone his deposit back, but get one or a few winners). I am thinking about what size would be the best? The average deposit?
Input welcome!
newbie
Activity: 25
Merit: 0
newbie
Activity: 28
Merit: 0
I sent you the 0.02 coin!
E
full member
Activity: 234
Merit: 100
newbie
Activity: 25
Merit: 0
Eh I guess it's worth a shot. Something to spend my free bitcoins I got on.
newbie
Activity: 28
Merit: 0
The first 6 participants will get 0.02 bitcoin. So when you enter with 0.01 bitcoin you earn 0.01 and can also win the lottery!
newbie
Activity: 28
Merit: 0
Note: this lottery is just for fun, I don't want to earn any money with it.
newbie
Activity: 28
Merit: 0
What is the Bitcoin Lottery?

The Bitcoin Lottery is a lottery where anyone can win, the lottery takes no share and the process is transparent. The code that picks the winner(s) is open source.

How does it work?
You can send an arbitrary amount of bitcoins (minimum 0.01 bitcoin) to an adress. The adress for next lottery (closes July 1) is:

Quote
1LUeahDNnVwqh8utERNxPhoh7zdzSmh4AG
(view: http://blockexplorer.com/address/1LUeahDNnVwqh8utERNxPhoh7zdzSmh4AG)

When do I win and how much?
All bets are randomly assigned to a block. Each block is equal to the average deposit. The program picks randomly a block and returns the winners and their share (in percent).
For example, if you send 0.1 bitcoin and the average is 1 bitcoin, you probably end up in one block and then you win 10% of the draw.
If you send 1 bitcoin and the average is 1 bitcoin, you probably end up in two blocks randomly, for example 10 cents in one block and 90 cents in another. If you win with the first block you win 10%, the second block will return 90% of the draw. So to be sure to have the chance of winning 100% you need 2 bitcoins.
The program is designed in such a way the lottery will always return 100% of the jackpot size.

Don't you cheat?
No. The first and second block on 1 July (after 0:00 UTC) will be used as random strings by adding them and create a SHA256 hash.

The code (Python)
Code:
import math
tickets = [
    ["1Km4sASEeKUWPtjRaSxmVghF5FfkadWVei",2],
    ["18uZGH42pcmHVtZ8sux7bCf8oJJtSCAAJs",1],
    ["1Jmn97kfJ6DBBCuft6Z1oW8e2Lwgheyr6s",2],
    ["1Jmn97kfJ6DBBCuft6Z1oW8e2Lwgheyr6s",1],
    ["1Jmn97kfJ6DBBCuft6Z1oW8e2Lwgheyr6s",1],
    ]

class BitcoinLottery:
    def __init__(self):
        self.total = 0
        for x in tickets:
            self.total += x[1]
        self.BLOCKSIZE = int(math.ceil(self.total/float(len(tickets))))

    def shuffle(self, rand):
        i = 0
        prevx = 0
        for t in range(len(tickets)):
           j=0
           shuffle=0
           for x in range(t, len(rand)):
               j = j + ord(rand[x])
           shuffle = j % len(tickets) - i          
           tickets[i], tickets[i+shuffle] = tickets[i+shuffle], tickets[i]
           if (i < len(rand)-1):
               i+=1
           else:
               i=0  
   
    def calculate(self):
        blocks = []
        block=0
        for x in tickets:
            k = x[0]
            v = x[1]
            nblock=block
            while(v>0):
                r = self.BLOCKSIZE - block % self.BLOCKSIZE
                if (v <= r):
                    a = v
                    nblock+=v
                    v = 0
                else:
                    a = r
                    v -= r
                    nblock += r
                blocks.append([int(block/self.BLOCKSIZE),k,a])
                block = nblock
        rand = 0
        print("total: " + str(float(self.total)/100) + " bitcoins")
        for x in blocks:
            if (x[0] == rand):
                print(x[1] + " won " + str(float(x[2]*self.total)/10000 * (100/self.BLOCKSIZE)) + " bitcoins")
bit = BitcoinLottery()
bit.shuffle('3029309209i1');
bit.calculate()
Jump to: