0

I suppose the nodes would only listen and re-broadcast new block from and to a limited subset of other nodes (assuming the block is valid).

How is this subset chosen? Does Bitcoin Core software choose them? (if one uses it)

I'm thinking if most of the nodes are listening to only the "popular" sources, then these sources would have too much power to influence what nodes will or will not hear. (Like how the media in real life affects people)

Thanks

3 Answers 3

0

Yes. Bitcoin core software chooses subset of outbound nodes randomly for you.

Initially, seed nodes addresses are hard coded. Using these nodes, client search for other peer nodes and form subset of outbound nodes randomly. Earlier, bitcoin core client used to join IRC channel to get more addresses of bitcoin nodes to randomization to the selection process.

You can also manually specify and configure outbound nodes for your node but is comparatively less secure.

Refer this for more info: https://en.bitcoin.it/wiki/Satoshi_Client_Node_Discovery

2
  • "Nowdays, bitcoin core client can also join IRC channel" It's the opposite. Older (0.8? 0.6?) Core clients used to join IRC channels to find other nodes, and no clients use this nowdays.
    – MCCCS
    Feb 18, 2018 at 10:49
  • My mistake. Earlier, IRC channel were used for peer discovery.
    – Preet
    Feb 18, 2018 at 10:55
0

The Bitcoin Core connected outbound nodes are chosen using a random method. The only time that they are very predictable is if nodes are manually added.

0

bitcoin selects 8 nodes for outgoing connections. the selection of these nodes are random in nature. -seednode command helps you to connect to a node of your choice. the random node selection prevents the discovery of the network and also protects against attacks like partitioning and eclipse attacks.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.