How are transactions provided to the miners? And what keeps the following scenario from occurring?
A valid transaction is initially reported to a "rogue" node, A
, in the network. If that node is a miner, it simply keeps the transaction for itself so that it can (eventually) obtain the incentive the next time it gets a block into the chain. The network will accept the block since the transaction is valid, eh?
If the A
is not a miner, it simply works with a "partner" miner B
which gives A
a portion of the incentive earned for each transaction A
sends to B
and B
successfully got into the block chain.
So, in a sense, what keeps miners from (illegally) paying other nodes in the network for more (valid) transactions? In light of something like net neutrality, perhaps miners can pay to for better service from nodes that receive transactions? How many nodes must know about a transaction before it can be put in a block?