Table of Contents
- A Bitcoin node stores and verifies each block in the blockchain. Nodes form a network by connecting and sharing blocks and transactions with one another.
- A node allows a user to verify bitcoin balances without a trusted third party.
- By running a node, a user is capable of enforcing the rules of the network, ensuring that they are not being deceived and that other parties cannot maliciously change Bitcoin's ruleset.
What Is a Bitcoin Node?
Bitcoin is a peer-to-peer currency that is a network of nodes running Bitcoin software. A node is able to receive and communicate transaction information with other nodes in the Bitcoin network.
There are many types of nodes on the Bitcoin network including: reference client, full node, solo miner, lightweight (SPV) wallet, mining nodes, and lightweight (SPV) Stratum wallet.
We will limit our discussion to the two node types described in the Bitcoin whitepaper – full nodes and lightweight (SPV) clients.
Types of Bitcoin Nodes
A full node’s main function is to independently verify the state of the Bitcoin blockchain. It does so by downloading every block and transaction and checking them against Bitcoin’s consensus rules. If a transaction or block violates one of Bitcoin’s consensus rules, a full node will automatically reject it.
Lightweight / SPV client
A lightweight or Simplified Payment Verification client, are similar to full nodes in that they can verify whether transactions were included in a block. However, light nodes do not verify and validate all of the network’s transactions and do not store a copy of the blockchain.
Because light nodes don’t process large amounts of data through the network, they are much cheaper to maintain. For this reason, they were historically used in mobile Bitcoin wallet but are quite rare today.
Why Run a Full Node?
Users run a Bitcoin full node for many reasons. Primarily, it allows a user to independently verify the state of the Bitcoin network. As a result, a user can:
- Verify Bitcoin’s supply. Users can independently verify the state of the Bitcoin network.
- Prevent the double spending of bitcoin. A node will automatically reject bitcoin that has been spent before.
- Use Bitcoin without third parties. A node allows users to broadcast and verify their own transactions rather than relying on a third party.
Another motivation for running a full node is to make the Bitcoin network more robust. As more nodes exist to fully validate transactions, the network becomes more resistant to certain types of attacks. Distributed, fully-functioning nodes are central to Bitcoin’s decentralized, peer-to-peer architecture and help keep the network secure.
In short, Bitcoin nodes are the central nervous system of the Bitcoin network. They broadcast, verify, and store transactions. They act both as gateways to the network and an information superhighway to relay network data to all participants.