Hacker News new | past | comments | ask | show | jobs | submit login

The six-blocks-in-a-row problem seems less of an impedence to me - because the "legitimate" blocks are still available to the malicious actor.

Therefore, if our malicious miner identifies that they have had poor luck and begun to fall behind the "legitimate" chain by a block or two they can start the make-a-longer-competing-chain process over again from the legitimate head with -as far as I can see- no downsides except for some lost time/resources; the main risk to them isn't really there until they commit by initiating their double-spend, something they would almost surely not do until they're confident they've acquired their own, longer competitor to the "legitimate" chain.




They still have to get out ahead by six blocks, however.

This drops to zero every time they start over, so it doesn't change the basic calculus.


They don't need to get ahead by six blocks. They need to get ahead, with at least six blocks mined on the public chain. There's a massive difference there!

The chain starts at block 1000, and you make a spend that will be included at block 1001 on the public chain. At the same time, you start mining your private chain from block 1000 (and you don't include that transaction in it). Now, the exchange you're using requires 6 blocks of confirmation, so you need to wait until block 1006 on the public chain before you can actually take delivery. Now that you've done that, you can publish your private chain at block 1007 (or 1008, etc) and since it's the longest chain, it'll be accepted by the public.

You didn't have to get 6 blocks before the public chain got 1 - you only needed to get 1 more block than the public chain, at some point after the public chain has mined 6 more blocks.

  1000 - 1001 - 1002 - 1003 - 1004 - 1005 - 1006          1008      Public Chain
       \ 1001 - 1002 - 1003 - 1004 - 1005 - 1006 - 1007 /           Private Chain


I take your point.

We're saying the same thing, but I see now that this was unclear.

The point of this sub-thread is that 51% doesn't give you a guarantee you'll mine faster than the 49%, just an edge, and that edge narrows as more blocks are required.

A casino with a 1% house advantage would have days when it was in the red, around 178 of them in fact. By analogy, you need to line up six days in the black, in a row.

The chance of doing that is lower than 51%.


And I'm saying that you're wrong there - the chance of getting more than half of the blocks approaches 1 as the number of blocks increases, given that you have 51% of the hashing power.

You're focused on the chance of getting 6 in a row. But what you should be looking at is the chance of getting at least 7 in 13, which is given by this equation:

P(K>=N) = sum(nCr(M, k) * p^k * (1-p)^(M-k)) from k=N to M

With M=13, N=7 and p=.51 - which works out to about 53%. But 8 in 15 also works, 9 in 17, etc. The limit of that probability (n+1 in 2n+1 as n -> inf) is 1.

Also, a casino is not likely to have many days in the red, just like it won't have many years in the red. (for bets only, ignoring everything else) This is because while the chance on any one bet may only be 51%, the chance of 10,000 bets, or 1,000,000 bets having a majority go south starts to get very, very small. (~27.5% for 1000 bets, ~2.5% for 10,000 bets at 51%, etc)




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: