I'm curious how you think the majority of miners will notice that they are mining on a GHash.io fork instead of the main chain? Even just looking at today's stats there are periods where GHash has mined 6 blocks in a half hour, and some where they have found no blocks for an hour and a half. Even apart from the fact a large portion of GHash is their private mining pool, you're giving way too much credit to the responsiveness of most miners. While it could take a decent bit of time to reorg a 6 deep chain if they got unlucky, it would still likely happen way before enough people moved off the pool to make a difference.
the number of found blocks from ghash.io will be 0 for a very long time , because it is using its power to mine a private fork
but even then every block > 6 in a row will be ignored by the prtocol!
the code can be found here
Note for programmers: The check is implemented in the method GetMedianTimePast() and called in method AcceptBlock(), file main.cpp:
bool CBlock::AcceptBlock(CValidationState &state, CDiskBlockPos *dbp)
{
...
// Check timestamp against prev
if (GetBlockTime() <= pindexPrev->GetMedianTimePast())
return state.Invalid(error("AcceptBlock() : block's timestamp is too early"));
...
}
http://btc-base.blogspot.sk/2014/01/bitcoin-transactions-why-it-is.htmlso you have to mine more then 6 blocks in a row , this is blocked by bitcoin source code thats why its NEVER more then 6.
and then notting for a while! , its just as the code says ,
http://btc-base.blogspot.sk/2014/01/bitcoin-transactions-why-it-is.htmlso to make this possible it has to gues blocks of other miners too , and be more then 11 blocks faster!
13. Reject [a block] if timestamp is the median time of the last 11 blocks or before
This can be interpreted in a following way: If the attacker will try to mine his own private blockchain fork, other nodes will almost certainly reject it, if his length is more than 6 blocks, since the timestamp of the first such mined block will be almost certainly older than the median time of the last 11 mined blocks. Replacing 6 or less blocks is possible, but when attacker tries to replace 7 or more blocks, the first one will be too old to be accepted.
TL;DR: Six bitcoin confirmations is not an arbitrary number. If payee accepts a transaction with less than six confirmations, it is possible that the attacker, even without a majority of the hashpower, can launch a brute force attack by mining his private blockchain fork and reverse the transaction. With six or more confirmations, such an attack will be rejected by the Protocol rule 13 described above.
exlpains this...
so no ghash.io cant do this even if they want it.