6 ms·
Show HN: Anonymous Bitcoin Lottery
- TheTaytay 13y agoI couldn't figure out how long the current lottery was going to run. I didn't see what the target # of tickets sold was for this first round, so I didn't know what the estimated date of the first drawing was.
- Prefinem 13y agoThe target is 1BTC in the pool, I have posted under the lottery table when a winner will be selected.
- tocomment 13y agoReally cool! Can you give a rough sketch of the aritechure? Are you using an API for do you code right to the bitcoin protocol?
- Prefinem 13y agoI run bitcoind --daemon and use the bitcoin API through JSON RPC. So, the website connects to the server and pretty much has complete access.
- tocomment 13y agoI'd say to add some more instructions, especially on the play page. E.g., "send X bitcoins to this address to play in this game", etc. Also on the front have a live "paid out today" widget.
- olalonde 13y agoThere are already at least hundreds of bitcoin lotteries and casinos, most of which are probably scams (see bitcointalk.org forums). How do you plan to differentiate?
- jff 13y agoWhy differentiate? Scams are apparently more profitable, or else these bitcoin lotteries would be running legit instead.
- pampa 13y agothere is one problem. you usually cant run a lottery, unless you are government, or a government affiliated company
- Prefinem 13y agoI have seen a lot of different one while I was researching, but most all seemed scam-ish. I honestly wanted one that wasn't a scam. As far as different, I am not sure other than actually doing what the site says it will do.
- iaw 13y agoI've been working on a BTC Raffle site also although I'm targeting lower fees and plan on making it provably fair. Good job.
- Prefinem 13y agoI have dropped the fees to help early adopters. If you are interested in how this works, send me an email: prefinem@gmail.com
- benjoffe 13y ago> Currently the lottery has a 25% cut of the total amount in the lottery. This is used to pay for development, server costs and maintainence. Eventually, my goal is to decrease the fee to as small as possible to allow for the largest winning. This will take place when the development stops (meaning there are no features to be added) and/or the lotteries take place more often. I find this to be backwards, you are effectively punishing your early adopters. It seems to make much more sense to make the cut lower (or zero) now, and increase it later when you have more users.
- Prefinem 13y agoI like your idea. I will cut the fees to something like 1% to pay for the transaction fees
- shloime 13y agoGood call.
- Prefinem 13y agoThanks
- jswift 13y agoIt's a good idea but any cut above this will make the lottery very expensive. National lotteries can pay out 50% because they have a monopoly and the remainder usually goes towards a community project.
- Prefinem 13y agoI will probably increase fees (nothing to exorbitant) to covers costs if this takes off. I don't think it will require to much to run unless it becomes insanely popular. At that time, I will open up more lotteries for different payout ranges to make it more beneficial for costs.
- 13y ago
- seanalltogether 13y agoOn your lottery page, I initially thought the addresses listed in the grid were the ones to send bitcoins to. You should really consider laying out that page differently to avoid confusion.
- Prefinem 13y agoI would love to hear suggestions.
- seanalltogether 13y agoThe problem I think is that the bitcoin address to send money to looks like its part of the table header description. So you naturally gloss over it and focus your attention on the table data.
- Prefinem 13y agoI have given it some whitespace and put a true header on the table.
- tptacek 13y agoHow poetic.
- crntaylor 13y agoThe implementation is really simple. Buy 1 BTC at current prices. Wait a year. Now your 1 BTC is either worth 1000x as much (with low probability) or nothing (with high probability). Instant lottery!
- shocks 13y agoYou should make this provably fair...
- grimtrigger 13y agohttp://cstheory.stackexchange.com/questions/11722/a-lottery-that-you-can-be-convinced-that-it-is-fair http://cstheory.stackexchange.com/questions/11722/a-lottery-...
- Prefinem 13y agoIf I could prove the fairness (paying out to the winner) without compromising anything, I would. If you know of a way, I would be more than willing to do so.
- slig 13y agoI'm not an expert, but the way satoshidice.com does verification seems legit. Anyone here can verify that?
- mcherm 13y agoHere is a simple algorithm that gives you the basic ideas. A different bitcoin wallet is set up for each day's lottery. The total number of bitcoins received can be seen in the blockchain. A source of entropy is chosen which can easily be verified but cannot be controlled or predicted before a date after the cutoff for that day's lottery, for instance, use the NYSE stock market closing price. A hash of that is divided by the number of bitcoins received in the lottery (plus an overhead for the small percentage that funds running the lottery) to determine the winner. Anyone entering can confirm that that their contribution was a certain percentage of the total funds received and that they had that same percentage of the chance for winning: even if the operator of the lottery wanted to be malicious they couldn't do so without making it obvious to anyone who checked. There are some additional details that would matter, if you wanted to implement this seriously you may contact me separately for a discussion of some of those details.
- 13y ago
- jimrandomh 13y agoAnd the winner is... Anonymous Coward 961! Who is absolutely not the operator's secret alter-identity! Now if you'll excuse me, this yacht won't buy itself. I don't know whether this is actually a scam, but you need to put a considerable amount of work to make into making it not look like one. As it is, I see: disposable identity, Bitcoin, and a straightforward opportunity to steal without getting caught.
- Prefinem 13y agoOf course, you could just watch who the payment is made out to and verify if the owner is the winner. I could show the selection method of the winner and show that it is a random generator that grabs the winner. Either way, its still a gamble. If you don't trust the site (or me) then you won't trust any of the code I post to show the random selection of the user.
- Prefinem 13y agoI have implemented a system that adds verification. You can read about it here: https://www.btc-l.com/about#verification https://www.btc-l.com/about#verification
- jimrandomh 13y agoThis is progress, but it doesn't look done yet - you need to explain how someone would perform the verification, and why prior knowledge of the seed won't let someone manipulate the results by placing strategic bets.
- nbdbvcrea 13y agoI like SatoshiDice more. It's "provably trustworthy" and you can adjust price multiplier from 1.004x to 64000.000x.
- IanCal 13y agoPlease check the legal implications of this. I know that you can't run a lottery in the UK unless you're a charity.
- tzs 13y agoI'm curious--how many here would work on this kind of project? I'd love to from an engineering point of view. It would be quite fun. However, I suspect it will be a net detriment to its typical user, and don't see any real benefits to counteract that, so would have trouble working on such a thing due to the moral issues. People who like to gamble and are able to do so responsibly already have plenty of easy outlets in which to indulge their hobby. It seems to me that this service will disproportionally attract people who have a gambling problem, and I'd feel quite troubled helping with that.
- Prefinem 13y agoJust to send out an update on the site. Fixed quite a few issues today. Thanks for the help everyone. One of the big things was changing the fee to 1% to help pay any transaction fees and make sure early adopters win almost all of the lottery. Another was the incorrect display of # of tickets purchased and amount of bitcoin in the pool. This has been fixed with no loss of data and there is now more bitcoin showing up in the pool.
- v-1971 13y agoHere is an alternate algorithm, based on mcherm's suggestion. Choose a publicly available number, such as NYSE closing price, that is not revealed until after the lottery closes. The hash of this is the target. The exact format of what is hashed is announced in advance. All purchasers' bitcoin addresses are posted publicly, in the order they come in. They are salted with the ticket number, i.e. mybitcoinaddress-001 represents the first ticket I bought. All of these addresses (including salt) are hashed. The one that is closest to the target is the winner. Closeness can be measured as integers (absolute value) with ties possible but extremely unlikely.