Bitcoin Forum

Bitcoin => Mining => Topic started by: KingsDen on June 22, 2021, 07:08:04 AM



Title: Does a Miner have a choice to the Transaction to Process?
Post by: KingsDen on June 22, 2021, 07:08:04 AM
Does a miner actually have the right to choose a transaction to process over the other? Maybe, he'll probably choose as transaction with a higher transaction fee over the one with small transaction fee, thereby causing an undue delay.
OR
Is it done, First Transaction In, First Transaction To Process?
Thank you.


Title: Re: Does a Miner have a choice to the Transaction to Process?
Post by: Upgrade00 on June 22, 2021, 07:41:46 AM
Does a miner actually have the right to choose a transaction to process over the other?
Yes, miners can choose what transaction to confirm based on the fees and also the transaction size. They have limited space in a block and have to minimize it by including the most optimum transactions.

Is it done, First Transaction In, First Transaction To Process?
No, a transaction with a low fee would compared to the current ferrate would take a long time to be confirmed regardless of when it was broadcasted, and in some cases, it might never get picked up by miners.


Title: Re: Does a Miner have a choice to the Transaction to Process?
Post by: mocacinno on June 22, 2021, 07:47:30 AM
--snip--
Yes, miners can choose what transaction to confirm based on the fees and also the transaction size. They have limited space in a block and have to minimize it by including the most optimum transactions.

I know what you're saying, but just to be clear: a miner has full controll over which transaction he/she includes in a block (as long as it's a valid transaction, otherwise his block would be rejected by the other nodes).

A miner can add a 0 sat/byte tx into the block he's trying to mine, even if his mempool has 1 Gb of transactions with a fee over 100 sat/vbyte.

Even a small, home miner using a default setup node has a very simple command to increase the priority of low fee transactions in his mempool.

Offcourse, financial incentives do push him/her to add the transactions with the highest fee (in sat/vbyte).



Title: Re: Does a Miner have a choice to the Transaction to Process?
Post by: OgNasty on June 22, 2021, 09:22:05 AM
It should be noted that the above responses referencing a “miner” are assuming the miner is solo mining and not part of a mining pool. If you are mining on a pool you have no say what transactions are included in the blocks. The pool decides this, you as a miner on the pool only provide the hash needed to add a block to the chain.


Title: Re: Does a Miner have a choice to the Transaction to Process?
Post by: mikeywith on June 23, 2021, 12:19:06 AM
Does a miner actually have the right to choose a transaction to process over the other?

Yes, they can even chose to NOT include any transactions at all.


Quote
Maybe, he'll probably choose as transaction with a higher transaction fee over the one with small transaction fee, thereby causing an undue delay.
OR

This is exactly how things work if you send a transaction with x fees, and just so happen that there are enough transactions that pay x+ a fraction to keep the blocks full for say 10 days, then your transaction will be stuck for 10 days.

There is an expectation which is the miner's rewards for pool miners, most pools will include their daily reward transactions in the first block they mine regardless of the fees, the other exception is some entities such as Marathon which mines "OFAC Compliant Bitcoin Blocks", in other words, they censorship transactions coming in/going to addresses that are blacklisted by the "Office of Foreign Assets Control" even if those transactions pay 10 times more fees than the rest.




Title: Re: Does a Miner have a choice to the Transaction to Process?
Post by: BitMaxz on June 23, 2021, 07:00:43 PM
I agree with OgNasty for solo mining you can choose what transactions you want to include it on the block but only big farm or pool operators can do such a thing.
Small miners can but it takes months or years before they can mine one block.


However, I know there is one pool that they let you submit your unconfirmed transaction to include on the recent block they mine. F2pool will let you submit the transaction they mostly called it accelerator/speedup transaction even it's has a low miner's fee they will include it on the recent block they mine.


Title: Re: Does a Miner have a choice to the Transaction to Process?
Post by: kano on June 25, 2021, 12:28:18 AM
From the point of view of general choice of transactions, there is no available software to let you decide about what transactions to include.

You can of course prioritise transactions in your bitcoind, so the getblocktemplate is forced to include a transaction independent of it's fee.

So anyone wanting to do this, would have to write a pool (or solo miner code) and modify it's use of the results of getblocktemplate and write their own transaction selection code.

Other than using 'prioritise' to help include low fee transactions or one's own transactions, modifying your choice of transactions is bad for bitcoin since it is an attempt to add centralised control to transaction selection.
This of course will be to the disadvantage of the miner, since getblocktemplate will maximise your block reward based on the transactions it knows about, rather than adding some centralised bias that also leads to the block getting lower total transaction fees i.e. lower block reward.


Title: Re: Does a Miner have a choice to the Transaction to Process?
Post by: BlackHatCoiner on June 26, 2021, 02:42:17 PM
A miner can add a 0 sat/byte tx into the block he's trying to mine, even if his mempool has 1 Gb of transactions with a fee over 100 sat/vbyte.
Exactly. People tend to forget that transactions whose fees are lower than the dust limit aren't invalid; they can be included into a block, what they can't do is being included into nodes' memory pool and that if we assume that there are no nodes that will accept them. Your node has a default limit for the fee if I'm not mistaken, but this can change from bitcoin.conf. Theoretically, you could set it to zero and reject no transactions. Although, there is no need to do that if you're not a mining pool that solves blocks and shares them to other nodes. Your sharing wouldn't reach other nodes and thus, it'd be useless to keep them.

I'd also want to add that including such transaction (with fee lower than the dust amount) would be bad for the miner's privacy. With a block chain analysis, you could expose the miner's rewarding address and the related transaction. In other words, you could know that the specific transaction was made by the miner. There wouldn't be any reason I could think of to do that, though; the fee would be sent to the rewarding address and the miner wouldn't pay for anything ultimately.


Title: Re: Does a Miner have a choice to the Transaction to Process?
Post by: dansus021 on July 02, 2021, 01:20:52 AM


i hear about mining wars that happen US and CHina i seen it on youtube they say miner can block the transaction so basically it will not get any confirmation from blacklisted address or specific tx
my question is ? is this possible



Title: Re: Does a Miner have a choice to the Transaction to Process?
Post by: mocacinno on July 02, 2021, 06:27:22 AM


i hear about mining wars that happen US and CHina i seen it on youtube they say miner can block the transaction so basically it will not get any confirmation from blacklisted address or specific tx
my question is ? is this possible



yes and no...
A single miner (or group of miners, or mining pool) can decide to "blacklist" whatever they want... If they run a custom node with a blacklist functionality, they can decide not to include transactions including certain unspent outputs, or funding certain addresses (or whatever they want). They can blacklist on any level they want (clear out reject the transaction, not include it in it's mempool, or not select it for creating a block).
As a result, said single miner (or group of miners, or mining pools) will not include your "blacklisted" transaction into the block he/she/they is trying to solve.

However, as long as there are sufficient miners that do not use a blacklist, worst that will happen is that your transaction gets delayed untill a miner not using a blacklist includes your "blacklisted" transaction into the block he/she is trying to mine.


Title: Re: Does a Miner have a choice to the Transaction to Process?
Post by: dansus021 on July 03, 2021, 02:23:58 AM

yes and no...
A single miner (or group of miners, or mining pool) can decide to "blacklist" whatever they want... If they run a custom node with a blacklist functionality, they can decide not to include transactions including certain unspent outputs, or funding certain addresses (or whatever they want). They can blacklist on any level they want (clear out reject the transaction, not include it in it's mempool, or not select it for creating a block).
As a result, said single miner (or group of miners, or mining pools) will not include your "blacklisted" transaction into the block he/she/they is trying to solve.

However, as long as there are sufficient miners that do not use a blacklist, worst that will happen is that your transaction gets delayed untill a miner not using a blacklist includes your "blacklisted" transaction into the block he/she is trying to mine.

well it scary tho  ;D but when one of group miner ex. blaclisted my address the other node or other mining farm still confirmed my transaction right or we can using bitcoin mixing to cover up the transcation


Title: Re: Does a Miner have a choice to the Transaction to Process?
Post by: kano on July 03, 2021, 03:57:56 AM
...
or we can using bitcoin mixing to cover up the transcation
You can't move BTC without spending it ...