Bitcoin Forum
June 30, 2024, 05:21:19 AM *
News: Latest Bitcoin Core release: 27.0 [Torrent]
 
   Home   Help Search Login Register More  
Pages: [1]
  Print  
Author Topic: Questions about pooled mining  (Read 763 times)
akahs (OP)
Newbie
*
Offline Offline

Activity: 5
Merit: 0


View Profile
October 04, 2012, 07:52:07 PM
 #1

So I think I understand a good portion of how Bitcoins are mined, but some specifics
aren't clear and I wanted to ask for clarification while recapping what I think I know.

So https://en.bitcoin.it/wiki/Block_hashing_algorithm explained the block header that miners are hashing
while looking for a hash below the difficulty number, the proof of work.

With pooled mining, multiple miners try for the proof of work and share the reward.
To prove that a miner is working, they submit proof of works for a less difficult number,
called shares, which is used to split the proceeds from any mined blocks.

So my questions are:

1) Who provides the block header to hash, the pool?

If so, how does it split up the nonce range between workers?

How does it update the workers when new transactions come in and the Merkle root updates
or when the Timestamp field changes?


2) What prevents a worker from submitting the proof of work and getting the block
rewards without sharing it with the pool? It's because the pool's block header is made to
send the rewards to a Bitcoin address controlled by the pool operator, correct?


3) What prevents the pool operator from claiming the block and not sharing it with the
workers? Obviously this doesn't matter for pure pay-per-share pools, but what about
proportional pools or the PPS variants?
firefop
Sr. Member
****
Offline Offline

Activity: 420
Merit: 250


View Profile
October 04, 2012, 08:52:06 PM
 #2

So my questions are:

1) Who provides the block header to hash, the pool?

If so, how does it split up the nonce range between workers?

How does it update the workers when new transactions come in and the Merkle root updates
or when the Timestamp field changes?

Strictly speaking that would depend on the pool.

2) What prevents a worker from submitting the proof of work and getting the block
rewards without sharing it with the pool? It's because the pool's block header is made to
send the rewards to a Bitcoin address controlled by the pool operator, correct?
Yes, that's correct.
3) What prevents the pool operator from claiming the block and not sharing it with the
workers? Obviously this doesn't matter for pure pay-per-share pools, but what about
proportional pools or the PPS variants?

You have to trust the pool operator. Which is why so many pools show lists of payouts etc.

josephliton
Hero Member
*****
Offline Offline

Activity: 644
Merit: 500


View Profile
November 09, 2012, 12:03:38 PM
 #3

Pooled mining allows many miners to work together so reduce variance in their Bitcoin reward over time.

Gabi
Legendary
*
Offline Offline

Activity: 1148
Merit: 1008


If you want to walk on water, get out of the boat


View Profile
November 09, 2012, 12:07:50 PM
 #4

2)Yes, it's correct. The worker can do nothing with his proof of work, he can only send it to the pool

3)Nothing. All normal pool rely on trust, you must trust the admin to not scam you.

Except for p2pool, where you cannot be scammed, because it's an automated pool, a bit like how bitcoin itself work. p2pool, no one can scam you.

DeathAndTaxes
Donator
Legendary
*
Offline Offline

Activity: 1218
Merit: 1079


Gerald Davis


View Profile
November 09, 2012, 07:07:56 PM
 #5

1)
Pools don't normally split nonce ranges.  They send a unique header to each worker and the worker completes the entire 2^32 nonce range returning found shares & blocks.  Pools (and solo miners) can create as many headers as they need because the block header has a coinbase field which can hold arbitrary data.  So 10,000 miners in the pool, the pool puts a unique value in the coinbase field for every miners, computes the block header and sends a UNIQUE block header to each miner.

2) The block hash only solves a specific EXACT block.  Part of the block is the coinbase transaction where the minted coins are sent to a unique address.  Yes as you stated that address goes to the pool operator.  At most a miner could simply withold the found block hash (hurt the pool) they couldn't profit from it.

3) You need to trust the pool operator.  They can (and some have in the past) walked away with the coins.  The established pools with months of history have put significant work in building, improving, and promoting their pool.   Another option is p2pool which has no pool operator.  Block headers and computed in a decentralized manner and validated by other pool participants.  The reward is directly split between the members of the pool based on the history of found shares (over the last couple days or so).
bitsnpieces
Newbie
*
Offline Offline

Activity: 10
Merit: 0


View Profile
November 09, 2012, 09:08:57 PM
 #6

They can (and some have in the past) walked away with the coins.

Can you name a few examples please?
crazyates
Legendary
*
Offline Offline

Activity: 952
Merit: 1000



View Profile
November 09, 2012, 09:58:34 PM
 #7

They can (and some have in the past) walked away with the coins.

Can you name a few examples please?

Read up on it here:
https://bitcointalk.org/index.php?topic=105866.0

Tips? 1crazy8pMqgwJ7tX7ZPZmyPwFbc6xZKM9
Previous Trade History - Sale Thread
Pages: [1]
  Print  
 
Jump to:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.19 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!