Bitcoin Forum
April 26, 2024, 11:13:11 PM *
News: Latest Bitcoin Core release: 27.0 [Torrent]
 
   Home   Help Search Login Register More  
Pages: [1]
  Print  
Author Topic: As a regular Full node operator, how can I block a mining pool?  (Read 1252 times)
d5000 (OP)
Legendary
*
Offline Offline

Activity: 3892
Merit: 6095


Decentralization Maximalist


View Profile
February 21, 2017, 05:32:45 PM
 #1

I read in other topics of this forum that there is a way for regular users (with full Bitcoin nodes) to block mining pools - more precisely: to not accept blocks from certain pools.

That would be an interesting option if the current stalemate regarding Segwit continues. For example, if I'm pro-segwit I could be interested in blocking all mining pools that do not signal it. Obviously, as a single node operator I would not make any difference, but if many users join, it could be an interesting way to pressure the mining pools to follow the interests of the majority of users.

So, how must I proceed if I want to do that? Do I need to know the IP address of the pool or can I block a pool directly for messages it sends, for example because not signalling for Segwit? Would there be code changes required? It would be nice if someone could give me an explanation that a non-programmer could understand. Thanks in advance!

(If this topic belongs to Technical Support, feel free to move it.)

█▀▀▀











█▄▄▄
▀▀▀▀▀▀▀▀▀▀▀
e
▄▄▄▄▄▄▄▄▄▄▄
█████████████
████████████▄███
██▐███████▄█████▀
█████████▄████▀
███▐████▄███▀
████▐██████▀
█████▀█████
███████████▄
████████████▄
██▄█████▀█████▄
▄█████████▀█████▀
███████████▀██▀
████▀█████████
▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
c.h.
▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄
▀▀▀█











▄▄▄█
▄██████▄▄▄
█████████████▄▄
███████████████
███████████████
███████████████
███████████████
███░░█████████
███▌▐█████████
█████████████
███████████▀
██████████▀
████████▀
▀██▀▀
Each block is stacked on top of the previous one. Adding another block to the top makes all lower blocks more difficult to remove: there is more "weight" above each block. A transaction in a block 6 blocks deep (6 confirmations) will be very difficult to remove.
Advertised sites are not endorsed by the Bitcoin Forum. They may be unsafe, untrustworthy, or illegal in your jurisdiction.
1714173191
Hero Member
*
Offline Offline

Posts: 1714173191

View Profile Personal Message (Offline)

Ignore
1714173191
Reply with quote  #2

1714173191
Report to moderator
1714173191
Hero Member
*
Offline Offline

Posts: 1714173191

View Profile Personal Message (Offline)

Ignore
1714173191
Reply with quote  #2

1714173191
Report to moderator
franky1
Legendary
*
Offline Offline

Activity: 4200
Merit: 4447



View Profile
February 21, 2017, 06:23:48 PM
 #2

your talking about causing an intentional split.

think long and hard about what you want to do to YOURSELF
you are personally wanting to reject blocks and have a different set of data than the rest of the network.. for segwit.(which solves nothing anyway)

yet cry like a baby when anyone proposes a full node consensus that can actually include real fixes(which could include a practical way to implement segwit) which does not cause an intentional split, purely because of fear it may cause a split.

you are basically asking to amputate your leg to pretend your avoiding getting shot in the foot, but the end result is worse then the fear your concerned about.

i think you have been talking to the wrong people selling you scare stories and overselling segwits possibilities.



I DO NOT TRADE OR ACT AS ESCROW ON THIS FORUM EVER.
Please do your own research & respect what is written here as both opinion & information gleaned from experience. many people replying with insults but no on-topic content substance, automatically are 'facepalmed' and yawned at
franky1
Legendary
*
Offline Offline

Activity: 4200
Merit: 4447



View Profile
February 21, 2017, 06:29:27 PM
 #3

it definetly shouldnt be done. but it can be done.

its not about IP addresses.. its just about identifying block version numbers and having a code mechanism that auto rejects blocks that have a certain version number

I DO NOT TRADE OR ACT AS ESCROW ON THIS FORUM EVER.
Please do your own research & respect what is written here as both opinion & information gleaned from experience. many people replying with insults but no on-topic content substance, automatically are 'facepalmed' and yawned at
d5000 (OP)
Legendary
*
Offline Offline

Activity: 3892
Merit: 6095


Decentralization Maximalist


View Profile
February 21, 2017, 07:45:11 PM
 #4

I have no plans to do this, at least for now. I was interested in the mechanism. Anyway, thank you - will investigate more about the version messages.

The goal is to know more about the relation between miners and full node operators. In an ideal Bitcoin world, miners should not be the only rulers of the network, but other node operators also should have a kind of "democratic" power to vote for and against certain changes. It's simply an implication of the soft fork mechanism.

█▀▀▀











█▄▄▄
▀▀▀▀▀▀▀▀▀▀▀
e
▄▄▄▄▄▄▄▄▄▄▄
█████████████
████████████▄███
██▐███████▄█████▀
█████████▄████▀
███▐████▄███▀
████▐██████▀
█████▀█████
███████████▄
████████████▄
██▄█████▀█████▄
▄█████████▀█████▀
███████████▀██▀
████▀█████████
▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
c.h.
▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄
▀▀▀█











▄▄▄█
▄██████▄▄▄
█████████████▄▄
███████████████
███████████████
███████████████
███████████████
███░░█████████
███▌▐█████████
█████████████
███████████▀
██████████▀
████████▀
▀██▀▀
franky1
Legendary
*
Offline Offline

Activity: 4200
Merit: 4447



View Profile
February 21, 2017, 07:52:08 PM
Last edit: February 21, 2017, 08:23:09 PM by franky1
 #5

I have no plans to do this, at least for now. I was interested in the mechanism. Anyway, thank you - will investigate more about the version messages.

The goal is to know more about the relation between miners and full node operators. In an ideal Bitcoin world, miners should not be the only rulers of the network, but other node operators also should have a kind of "democratic" power to vote for and against certain changes. It's simply an implication of the soft fork mechanism.

miners are NOT the rulers.

what you have to understand is blockstream bypassed real consensus.
pools are not stupid enough to produce something that nodes are not prepared for. pools only produce what the nodes will accept. not the other way round. (otherwise what they make is orphaned off and a waste of even trying to make it)

so this is where core has failed with their soft implementation. 60% of pools are undecided because although blockstream allowed the pools to be the sole voters. the pools are still waiting to see what nodes desire.

blockstreams mindset is if segwit activates blockstream will take the glory, if fail they will blame the pools. blockstreams game plan is obvious.
dont blame pools when it was blockstream that decided.

just think about the fake reason blockstream decided that route. and then realise your own reaction. which even contravenes blockstreams fake reason to go that route.

I DO NOT TRADE OR ACT AS ESCROW ON THIS FORUM EVER.
Please do your own research & respect what is written here as both opinion & information gleaned from experience. many people replying with insults but no on-topic content substance, automatically are 'facepalmed' and yawned at
odolvlobo
Legendary
*
Offline Offline

Activity: 4298
Merit: 3209



View Profile
February 21, 2017, 09:30:56 PM
 #6

I read in other topics of this forum that there is a way for regular users (with full Bitcoin nodes) to block mining pools - more precisely: to not accept blocks from certain pools.

You can refuse to accept any blocks that don't signal segwit. You will need to modify the code in order to do that. However, be aware that your block chain will be stuck because there are no miners that will build on your self-imposed fork.

Perhaps a workable approach would be to refuse to relay any blocks that don't signal segwit. The effect would be to increase the probably of those blocks being orphaned, albeit only by a tiny amount.

Join an anti-signature campaign: Click ignore on the members of signature campaigns.
PGP Fingerprint: 6B6BC26599EC24EF7E29A405EAF050539D0B2925 Signing address: 13GAVJo8YaAuenj6keiEykwxWUZ7jMoSLt
d5000 (OP)
Legendary
*
Offline Offline

Activity: 3892
Merit: 6095


Decentralization Maximalist


View Profile
February 21, 2017, 11:47:24 PM
 #7

Perhaps a workable approach would be to refuse to relay any blocks that don't signal segwit. The effect would be to increase the probably of those blocks being orphaned, albeit only by a tiny amount.

That second method, I think, was the technique I read. Do you know if that requires code changes?

Now, if we think about that scenario, wouldn't that be a possible sybil attack vector? A person or group interested in "bringing through" a soft fork proposal could possibly spawn thousands of nodes worldwide and then influence the miners' decision by giving them economic incentives to accept the soft fork. Obviously it would not be a real attack because the blockchain would not be affected, but I think that scenario cannot be easily avoided.


█▀▀▀











█▄▄▄
▀▀▀▀▀▀▀▀▀▀▀
e
▄▄▄▄▄▄▄▄▄▄▄
█████████████
████████████▄███
██▐███████▄█████▀
█████████▄████▀
███▐████▄███▀
████▐██████▀
█████▀█████
███████████▄
████████████▄
██▄█████▀█████▄
▄█████████▀█████▀
███████████▀██▀
████▀█████████
▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
c.h.
▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄
▀▀▀█











▄▄▄█
▄██████▄▄▄
█████████████▄▄
███████████████
███████████████
███████████████
███████████████
███░░█████████
███▌▐█████████
█████████████
███████████▀
██████████▀
████████▀
▀██▀▀
Velkro
Legendary
*
Offline Offline

Activity: 2296
Merit: 1014



View Profile
February 22, 2017, 12:08:58 AM
 #8

Quote
As a regular Full node operator, how can I block a mining pool?
That would be risky, i mean, dangerous precedence.
U have officially no reason to block miners as long as you run official bitcoin code (it handle malicious miners automatically).

So be very carefull what you want to accomplish here, because in reality you could cause very bad things for bitcoin as a whole.
odolvlobo
Legendary
*
Offline Offline

Activity: 4298
Merit: 3209



View Profile
February 22, 2017, 12:24:21 AM
 #9

Quote
As a regular Full node operator, how can I block a mining pool?
That would be risky, i mean, dangerous precedence.
U have officially no reason to block miners as long as you run official bitcoin code (it handle malicious miners automatically).

So be very carefull what you want to accomplish here, because in reality you could cause very bad things for bitcoin as a whole.

There is no "official bitcoin code".

Join an anti-signature campaign: Click ignore on the members of signature campaigns.
PGP Fingerprint: 6B6BC26599EC24EF7E29A405EAF050539D0B2925 Signing address: 13GAVJo8YaAuenj6keiEykwxWUZ7jMoSLt
unamis76
Legendary
*
Offline Offline

Activity: 1512
Merit: 1005


View Profile
February 22, 2017, 12:26:14 AM
 #10

There are many custom clients on the network, coded for different features, so this is definitely possible. Given the current situation regarding Bitcoin and scaling, if I knew how to code such, I wouldn't post it publicly (or anywhere, for that matter) and I hope people with knowledge follow the same. Time to come together and not split everyone. Being "picky" is exactly what we don't need right now.

PS: I understood that the OP doesn't necessarily want to do this and was questioning out of curiosity...
ImHash
Hero Member
*****
Offline Offline

Activity: 924
Merit: 506


View Profile
February 22, 2017, 12:32:32 AM
 #11

You could do that and get banned as retaliation, honestly I only run a node 6 hours a day in a CNC factory office and never understood anything other than a hot PC even with liquid nitrogen cooling system.
What you trying to do is creating a fork for software version like BU/classic etc. what you could do is to ban IPs running any version other than Core Cheesy

Quote
As a regular Full node operator, how can I block a mining pool?
That would be risky, i mean, dangerous precedence.
U have officially no reason to block miners as long as you run official bitcoin code (it handle malicious miners automatically).

So be very carefull what you want to accomplish here, because in reality you could cause very bad things for bitcoin as a whole.

There is no "official bitcoin code".

Wrong, there is a source reference code that needs consensus to even change a dot in the code.
And for software the Core is the official.
Jerean
Newbie
*
Offline Offline

Activity: 8
Merit: 0


View Profile
February 22, 2017, 05:06:34 AM
 #12

You can do that but you shouldn't do that.
mezzomix
Legendary
*
Offline Offline

Activity: 2618
Merit: 1252


View Profile
February 22, 2017, 08:10:22 AM
 #13

Quote
As a regular Full node operator, how can I block a mining pool?
That would be risky, i mean, dangerous precedence.
U have officially no reason to block miners as long as you run official bitcoin code (it handle malicious miners automatically).

So be very carefull what you want to accomplish here, because in reality you could cause very bad things for bitcoin as a whole.

The mechanism is to to withhold a non-segwit block until a segwit block extends this block. If a segwit block with the same height is received, this segwit block is relayed instead of the non-segwit block.

This mechanism makes sense if most nodes would like to change the system but some of the miners are blocking this change.
d5000 (OP)
Legendary
*
Offline Offline

Activity: 3892
Merit: 6095


Decentralization Maximalist


View Profile
February 24, 2017, 05:54:28 PM
 #14

As discussed with mezzomix in the German subforum, the "sybil attack" scenario would only be a danger if there is indecision among the node operators to accept or not accept a soft fork proposal - that's if the majority of nodes are "apolitical".

If a large majority of the real users that operate a node (above all, service providers and merchants) do support a soft fork change then it should not be too relevant if the opposite side launches a sybil attack spawning thousands of nodes - because they would only be "circlejerking" and distribute blocks in their own "sub-network". (I have to think a bit more thoroughly about it, however, as I'm not completely sure there could not be an incentive to launch that kind of attack).

█▀▀▀











█▄▄▄
▀▀▀▀▀▀▀▀▀▀▀
e
▄▄▄▄▄▄▄▄▄▄▄
█████████████
████████████▄███
██▐███████▄█████▀
█████████▄████▀
███▐████▄███▀
████▐██████▀
█████▀█████
███████████▄
████████████▄
██▄█████▀█████▄
▄█████████▀█████▀
███████████▀██▀
████▀█████████
▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
c.h.
▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄
▀▀▀█











▄▄▄█
▄██████▄▄▄
█████████████▄▄
███████████████
███████████████
███████████████
███████████████
███░░█████████
███▌▐█████████
█████████████
███████████▀
██████████▀
████████▀
▀██▀▀
DooMAD
Legendary
*
Offline Offline

Activity: 3766
Merit: 3100


Leave no FUD unchallenged


View Profile
February 24, 2017, 07:20:49 PM
 #15

A similar idea was floated in the development and technical subforum back in November, but rather than blocking entire pools, simply ignored individual blocks.  The outcome would be the same, though. 

.
.HUGE.
▄██████████▄▄
▄█████████████████▄
▄█████████████████████▄
▄███████████████████████▄
▄█████████████████████████▄
███████▌██▌▐██▐██▐████▄███
████▐██▐████▌██▌██▌██▌██
█████▀███▀███▀▐██▐██▐█████

▀█████████████████████████▀

▀███████████████████████▀

▀█████████████████████▀

▀█████████████████▀

▀██████████▀▀
█▀▀▀▀











█▄▄▄▄
▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
.
CASINSPORTSBOOK
▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄
▀▀▀▀█











▄▄▄▄█
dinofelis
Hero Member
*****
Offline Offline

Activity: 770
Merit: 629


View Profile
March 15, 2017, 05:11:02 AM
 #16

I read in other topics of this forum that there is a way for regular users (with full Bitcoin nodes) to block mining pools - more precisely: to not accept blocks from certain pools.

Non mining nodes have 0 to say about the block chain.  The ONLY thing that non mining nodes can do, is to signal to miners what the MARKET SENTIMENT might be if they do or not do something.  Because miners are sensitive to market sentiment: after all, it are the users on who the miners dump their gains in coin, and it are the users that finance the miners.

But that's it.

I've written already quite some posts about this total misunderstanding of how a proof of work consensus system works, and WHY non mining nodes are totally meaningless (apart for their owners).   Please read this:

https://bitcointalk.org/index.php?topic=1821817.msg18175256#msg18175256

https://bitcointalk.org/index.php?topic=1821817.msg18170595#msg18170595

https://bitcointalk.org/index.php?topic=1821817.msg18178541#msg18178541

https://bitcointalk.org/index.php?topic=1820846.msg18155418#msg18155418

https://bitcointalk.org/index.php?topic=1827198.msg18192654#msg18192654

TL;DR:

A crypto currency is a group of miners making the block chain, and a group of users doing transactions on that block chain against value.  Users need to get their transactions into the block chain by miners, and miners need to obtain transactions from users, and sell their gains to users.    Miners need to communicate well amongst themselves to build the block chain and not get their blocks orphaned.  So a strong miner network, and good network infrastructure by them towards users, is all that is needed.
dinofelis
Hero Member
*****
Offline Offline

Activity: 770
Merit: 629


View Profile
March 15, 2017, 05:16:46 AM
 #17

A similar idea was floated in the development and technical subforum back in November, but rather than blocking entire pools, simply ignored individual blocks.  The outcome would be the same, though. 

If a node "blocks" (considers invalid) a single block, and that block is part of what the miners call the main chain, then that node simply stops working.   While the miners continue happily to make the block chain.   Suppose that I don't want to see a specific transaction, and I write node software that considers a given transaction invalid (a soft fork !).  Well, that node will take the block chain until it finds the block with that transaction, and considers that block invalid.  And will never ever hear about another block that follows it, and come to a halt.  Period.  In what way did my node stop that chain to be built ?

You think that if almost all non-mining nodes do that, miners will be obliged ?  Why ?  They connect amongst themselves and continue to make the blocks THEY have a consensus on.  And users (say, exchanges) don't want their nodes to stop, so they connect directly to miner nodes to get the growing chain.  Because the other nodes simply don't send anything any more.  In what way do non-mining nodes interfere ?

Of course, miners may be sensitive to the fact that most non-mining nodes don't want this, and might "vote in the market" if they don't comply to users' wishes.  They might be afraid that the market cap of their coin drops.  So miners will most probably take into account this "market sentiment" signal.  But that's it.

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!