Bitcoin Forum

Other => Beginners & Help => Topic started by: Krellan on April 09, 2013, 05:24:42 PM



Title: Incentive for miner in shared pool not to cheat?
Post by: Krellan on April 09, 2013, 05:24:42 PM
Hi again, last of my newbie questions.

What's to stop a Bitcoin miner, participating in a shared mining pool, from cheating?  That is, if a miner is lucky enough to discover a winning block, what's to stop them from publishing it on their own, and putting the entire 25 BTC reward in their own pocket, thus cutting out the rest of the pool?  The miner who finds a lucky low hash would know what inputs they used to create the hash, so that should be enough for them to mint the block to an account under their own control, instead of submitting it back to the pool, right?

It seems just like pooling money for traditional lottery tickets whenever there's a big jackpot: only with Bitcoin, everybody is anonymous and doesn't know each other, so there's nothing to stop the guy who holds the winning ticket from cashing out the jackpot all to himself and then skipping town.

Really glad this board doesn't throttle postings of new posters, BTW.  Amazing that it's such high volume and still essentially spam free!

Josh


Title: Re: Incentive for miner in shared pool not to cheat?
Post by: DeathAndTaxes on April 09, 2013, 05:32:41 PM
The hash the miners are looking for only solve a particular exact block.  Part of the block is the reward address where the block subsidy and all tx fees will be sent.  Change anything in the block (including the coinbase = miner compensation tx) and the block has a new header and the "winning hash" is no longer valid for the modified block.

A miner could withhold the "winning hash" (to reduce everyone's compensation including his own) but the block hash is simply a number that solves a particular, exact block.  It is utterly useless (just as useless as any other random number) for any other purpose.


Title: Re: Incentive for miner in shared pool not to cheat?
Post by: Krellan on April 09, 2013, 05:42:42 PM
Nice, thanks!  That's good to know.  So the "winning number" is already bound to the target account that will be receiving the bounty, so there's no way somebody can cheat and keep the bounty for themselves.


Title: Re: Incentive for miner in shared pool not to cheat?
Post by: DeathAndTaxes on April 09, 2013, 05:55:27 PM
Nice, thanks!  That's good to know.  So the "winning number" is already bound to the target account that will be receiving the bounty, so there's no way somebody can cheat and keep the bounty for themselves.


Well it is more complicated and secure than that. A solved block is only good as single specific entity.  Change any aspect of the block (timestamp, previous block hash, remove any transactions, add a transaction, etc) then the block will have a new random block hash which will not meet the difficulty target.