Author

Topic: Full nodes and miners nodes - what does Bitcoin security rely on? (Read 263 times)

legendary
Activity: 2380
Merit: 5213
So, about this pruned nodes, can a new user specify the exact blocks he wants to start downloading from ?, Or the whole thing performs the calculation manually thereby selecting random blocks to start from?.
Even if you run a pruned node, you have to start from the first block and download the entire blockchain.
Take note that the purpose of running a pruned node is to reduce the required storage size. It's not that you run a full node to download less data.
legendary
Activity: 2898
Merit: 1823
Wait!!, If I understood this right, is it that the miners uses same node as the ones used by regular users like me that decides to a run node?, But they further use some machines that aid them creating Blocks?.
Yes, they run pretty much the same thing although there are definitely some modifications to have "extra options".

For example take ViaBTC pool. Their software has to have extra code that reserves a fixed number of places for the transactions they accept in their mempool regardless of how much fees they each pay. That's not an option that already exists in a Full Node software like bitcoin core, they have to had added this.

The rest that involves consensus rules, the P2P protocol, etc has to be the same. They can't modify those.

Quote
So can we practically say that miners are a major attributite to Bitcoin security level?.
Yes.


Perhaps the best way to make OP understand is that it doesn't matter which implementation of Bitcoin anyone uses - Bitcoin Core, Bitcoin Knots, BTCD, or another full node implementations. What matters is the nodes follow the consensus rules. If it does that, then it's part of the network, validating transactions/blocks, and propagating them to the rest of the network.

Plus pruned nodes = still full nodes.
legendary
Activity: 3472
Merit: 10611
Wait!!, If I understood this right, is it that the miners uses same node as the ones used by regular users like me that decides to a run node?, But they further use some machines that aid them creating Blocks?.
Yes, they run pretty much the same thing although there are definitely some modifications to have "extra options".

For example take ViaBTC pool. Their software has to have extra code that reserves a fixed number of places for the transactions they accept in their mempool regardless of how much fees they each pay. That's not an option that already exists in a Full Node software like bitcoin core, they have to had added this.

The rest that involves consensus rules, the P2P protocol, etc has to be the same. They can't modify those.

Quote
So can we practically say that miners are a major attributite to Bitcoin security level?.
Yes.
legendary
Activity: 2870
Merit: 7490
Crypto Swap Exchange
Quote
We don't really categorize them as "full nodes" and "miner nodes".
A node is a peer in the P2P network so the concepts we have are only "full nodes" and "miners".
A full node is what I explained above (a peer downloading and verifying blocks and has a mempool) and a miner is someone who uses a full node to construct a candid block from its mempool to mine (compute hashes over and over until the desired hash is found).

Wait!!, If I understood this right, is it that the miners uses same node as the ones used by regular users like me that decides to a run node? But they further use some machines that aid them creating Blocks?.

Yes and yes. Although to be more accurate, mining pool is the one who run the full node along with additional software which create block template and send mining work to the miner. Miner usually only connect to the pool to get the mining work.

There are ways to run full node on mobile devices, such as using ABCore or UserLAnd (where you need to install Linux and Bitcoin Core). But usually it's deemed impractical due to making the device very hot or require decent device to operate smoothly.

Is there a thread that has been created on the forum, that explains how this can be done. I have a mobile device just to try it out.

Check [ANN] Smartino - Android Bitcoin Core Full Node. It use Androidx rather than UserLAnd, but the principle is similar. ABCode also have it's own announcement thread on [ANN] ABCore - the first Bitcoin Core running on Android - Support Thread, but has little description.
full member
Activity: 252
Merit: 175
cout << "Bitcoin";
That's not the definition of a node.
A node is a software on a computer that enforces the Bitcoin consensus rules. To do that it has to be able to communicate with the rest of the nodes in the peer-to-peer network so that it can download and verify every single transaction from block 1 to the tip.

Thanks for pointing this out. This is why asking questions is very important, because it's obvious I have read the wrong and process the wrong concept from a wrong source. I recently layed my hands on the mastering Bitcoin material, which i think some of the replies in the comment section correlate with what is been written there.

There are ways to run full node on mobile devices, such as using ABCore or UserLAnd (where you need to install Linux and Bitcoin Core). But usually it's deemed impractical due to making the device very hot or require decent device to operate smoothly.

Is there a thread that has been created on the forum, that explains how this can be done. I have a mobile device just to try it out.

Not all are full nodes. 95% are pruned nodes.

infact maybe only a very few are full nodes because downloading the full block requires a lots of disk space, so most of the people in the challenge choose pruned nodes, in order to manage their storage capacity.

So, about this pruned nodes, can a new user specify the exact blocks he wants to start downloading from ?, Or the whole thing performs the calculation manually thereby selecting random blocks to start from?.
legendary
Activity: 3472
Merit: 10611
Perhaps you might be getting it all wrong mate!
To be honest I have no idea about what percentage are running pruned nodes which is why I asked.
I even tried checking bitnodes.io[1] but that chart doesn't make sense because AFAIK full pruned nodes advertise NODE_NETWORK_LIMITED and NODE_NETWORK together and non-pruned nodes advertise NODE_NETWORK alone so unless I'm wrong there should be more NODE_NETWORK count than NODE_NETWORK_LIMITED service but it is the opposite!

[1] https://bitnodes.io/dashboard/#services
legendary
Activity: 2898
Merit: 1823
OP, nodes are nodes no matter who is running them. Because from the point of view of the network, each and every full node validates. It doesn't matter if it's a user from South Africa or if a miner actually ran his own node in China. They all validate and enforce the consensus rules.

Quote

Which of these nodes is mainly responsible for Bitcoin security and blockchain immutability?


All of them from the network's perspective.
member
Activity: 66
Merit: 5
Eloncoin.org - Mars, here we come!
Not all are full nodes. 95% are pruned nodes.
The verification is important and the fact that all full nodes (both full archival nodes or full pruned nodes) perform verification, construct their own chainstate and can verify and relay any new transaction or blocks that are sent their way.

BTW do you have a reference for 95%, I'm just curious?
Perhaps you might be getting it all wrong mate!

Below is the question op asked, looking [CHALLENGE] Run A Bitcoin Node: 14 Days To 14 Merits, looking at the complaint of participants you can tell a good number are only running the pruned node and not a full node.

95% might not be accurate but it's closer than you can think, it's just a 14 days challenge and for merits, downloading the full nodes will surely be a challenge as it might seem too much for people, maybe digaran said such in that thread.

NotATether also included a guide for the pruned node which means slots of people requested runing a pruned node.

What about the "Running a Bitcoin node" challenge that you organized? The nodes that are been runned in the contest, is it a full node ?.
member
Activity: 351
Merit: 37
Miners are not nodes.

There is no such thing as "miner nodes".

All miners run a full node, because that is the only way to submit mined blocks to the blockchain, but the mining software themselves are not mining nodes that are connected to the network, because all that needs to be done is fetch the current difficulty level and generate a hash that is less than that.
and hash of previous block
legendary
Activity: 3472
Merit: 10611
Not all are full nodes. 95% are pruned nodes.
The verification is important and the fact that all full nodes (both full archival nodes or full pruned nodes) perform verification, construct their own chainstate and can verify and relay any new transaction or blocks that are sent their way.

BTW do you have a reference for 95%, I'm just curious?
legendary
Activity: 2870
Merit: 7490
Crypto Swap Exchange
I am not sure if the Bitcoin software is available for mobile devices, which excludes them from the category of devices that can operate smoothly.

There are ways to run full node on mobile devices, such as using ABCore or UserLAnd (where you need to install Linux and Bitcoin Core). But usually it's deemed impractical due to making the device very hot or require decent device to operate smoothly.

Both of them are very important in bitcoin network security. The full node picks up transactions, verify and validate them and keep the full update on the blockchain. Full node prevents 51% attack.

Miners node is use to verify transactions and add them into the blockchain for a new block to be mined by computation prowess. It is the mining node that builds up new block on the blockchain and provides rewards for miners when they have successfully add a new block to the blockchain.

cointelegraph dot com/learn/bitcoin-nodes-vs-miners

Please stop using cointelegraph as reference. It usually provide inaccurate details or lack of detail. Full node cannot stop 51% attack and all node supposed to verify all transaction.

member
Activity: 66
Merit: 5
Eloncoin.org - Mars, here we come!
Miners are not nodes.

There is no such thing as "miner nodes".

All miners run a full node, because that is the only way to submit mined blocks to the blockchain, but the mining software themselves are not mining nodes that are connected to the network, because all that needs to be done is fetch the current difficulty level and generate a hash that is less than that.

Noted.
What about the "Running a Bitcoin node" challenge that you organized? The nodes that are been runned in the contest, is it a full node ?.
Not all are full nodes. 95% are pruned nodes.

infact maybe only a very few are full nodes because downloading the full block requires a lots of disk space, so most of the people in the challenge choose pruned nodes, in order to manage their storage capacity.

block size is around 849,412 blocks which is about 660.39 GB. This means you are required about 2 TB disk space to run the full nodes and a good number of rams in order not to encounter issues.

full member
Activity: 252
Merit: 175
cout << "Bitcoin";
Miners are not nodes.

There is no such thing as "miner nodes".

All miners run a full node, because that is the only way to submit mined blocks to the blockchain, but the mining software themselves are not mining nodes that are connected to the network, because all that needs to be done is fetch the current difficulty level and generate a hash that is less than that.

Noted.
What about the "Running a Bitcoin node" challenge that you organized? The nodes that are been runned in the contest, is it a full node ?.
legendary
Activity: 1568
Merit: 6660
bitcoincleanup.com / bitmixlist.org
Miners are not nodes.

There is no such thing as "miner nodes".

All miners run a full node, because that is the only way to submit mined blocks to the blockchain, but the mining software themselves are not mining nodes that are connected to the network, because all that needs to be done is fetch the current difficulty level and generate a hash that is less than that.
legendary
Activity: 3472
Merit: 10611
A node is practically a very important term we use when trying to describe how the Bitcoin network works. When relating to Bitcoin, we describe it as a powerful computer that runs the Bitcoin software smoothly and efficiently. A few and common examples of these nodes are personal computers and laptops.
That's not the definition of a node.
A node is a software on a computer that enforces the Bitcoin consensus rules. To do that it has to be able to communicate with the rest of the nodes in the peer-to-peer network so that it can download and verify every single transaction from block 1 to the tip.

Quote
I am not sure if the Bitcoin software is available for mobile devices, which excludes them from the category of devices that can operate smoothly.
That's the reason why I said your definition is wrong. We don't define node based on how smoothly it is being run. You can run a full node on a smart phone or the least efficient hardware out there and it still be a full node as long as it can download and verify everything.

Quote
I recently came across a relation between full nodes and miner nodes
We don't really categorize them as "full nodes" and "miner nodes".
A node is a peer in the P2P network so the concepts we have are only "full nodes" and "miners".
A full node is what I explained above (a peer downloading and verifying blocks and has a mempool) and a miner is someone who uses a full node to construct a candid block from its mempool to mine (compute hashes over and over until the desired hash is found).

Quote
Which of these nodes is mainly responsible for Bitcoin security and blockchain immutability?
The way Bitcoin is designed as a whole and the way the rules are ensures that. Bitcoin is a combination of miners, nodes, market, developers, etc.

For example the blockchain is immutable because the rules that are enforced by the nodes dictate that we follow the chain with the most work and it all works based on the assumption that the majority of the network is honest.
So if a minority of miners decides to change history (make chain mutable) they'd fail because they can not produce more work than the rest of the network combined.
legendary
Activity: 1512
Merit: 4795
Leading Crypto Sports Betting & Casino Platform
I am not sure if the Bitcoin software is available for mobile devices, which excludes them from the category of devices that can operate smoothly.
There are ways that it is possible. Also you can run full node on Raspberry Pi 4.

1. Full nodes - The more nodes that keep running the Bitcoin software, the more secure the network becomes.
Not the more secure the network. It is the more decentralized the network.

Which of these nodes is mainly responsible for Bitcoin security and blockchain immutability?
Mining nodes.

Full node prevents 51% attack.
Generating bitcoin mining hashrates and how they are generated by miners in a way no one among them is generating almost or more than half hash rate compared to the rest prevents 51% attack. So miners prevent 51% attack and not the nodes. The more the hashrates the miners are generating, the more secure the bitcoin network.

Miners node is use to verify transactions and add them into the blockchain for a new block to be mined by computation prowess.
There are some mining nodes that does not verify transactions at all.

Solo miners and pool operators are full nodes.
sr. member
Activity: 476
Merit: 385
Baba God Noni
Both of them are very important in bitcoin network security. The full node picks up transactions, verify and validate them and keep the full update on the blockchain. Full node prevents 51% attack.

Miners node is use to verify transactions and add them into the blockchain for a new block to be mined by computation prowess. It is the mining node that builds up new block on the blockchain and provides rewards for miners when they have successfully add a new block to the blockchain.

https://cointelegraph.com/learn/bitcoin-nodes-vs-miners
full member
Activity: 252
Merit: 175
cout << "Bitcoin";
One of the first posts I came across after joining this forum is the post by NotATether, where he introduced a "Run A Bitcoin Node" challenge https://bitcointalksearch.org/topic/peachbitcoin-challenge-run-a-bitcoin-node-14-days-to-14-merits-5480200 . Till this very minute, I haven't been able to make an attempt, as I still need to check out the work of others before giving it a try, all let's just say that I don't understand the process.

A node is practically a very important term we use when trying to describe how the Bitcoin network works. When relating to Bitcoin, we describe it as a powerful computer that runs the Bitcoin software smoothly and efficiently. A few and common examples of these nodes are personal computers and laptops. I am not sure if the Bitcoin software is available for mobile devices, which excludes them from the category of devices that can operate smoothly.

I recently came across a relation between full nodes and miner nodes but wasn't really sure of what difference it made. I had to carry out my own research to see if I could come up with something that differentiates both.

A full node happens to have a similar meaning to the one above, as they are seen as computers that obtain and store the entire copy of blockchain data. Nodes that join later on are required to download the previous data before continuing with the recent data(stored transactions). The full node performs the validation and broadcast of transactions across all other connected nodes on the same network.

Miner nodes on the other hand, work with the proof of work mechanism, thereby collecting unconfirmed transactions from the mempool in order to build a block. This process requires them to compete for a valid hash of the required block. After successfully securing the block, the block is submitted to the network (which is made up of full nodes) where validation is done.

There are literally confusing concepts that have placed me in the middle. They are:
1. Full nodes - The more nodes that keep running the Bitcoin software, the more secure the network becomes.
2. Miner nodes - The hash rate of all miners is a huge factor in Bitcoin security.

So here is my question:
Which of these nodes is mainly responsible for Bitcoin security and blockchain immutability?



I am 100% open to correction as I still see myself as a learner. Pardon any of my error and share your personal opinion. You might want to also DYOR after reading this.
Jump to: