A full node is a software program that anyone download and run to interact with the global Bitcoin network. The client called Bitcoin Core is the most popular implementation but there are others available.
Using a Bitcoin full node is the equivalent of being your own self-soverign central bank. It's the only way to fully benefit from using Bitcoin. If you aren't using a full node yourself, there is a certain level of trust you must place into the company being used whenever you transact with their wallet.
Validates all the rules of Bitcoin - A full node ensures you are actually receiving the bitcoin you think you are. Not running a full node means you are outsourcing the truth from an external source. It's better to use the source of truth directly.
Increases privacy - If you don't use a full node your transactions need to be broadcasted by a third party meaning they could track transactions. A full node broadcasts transactions directly to the Bitcoin network.
It helps the network - Running a full node increases network decentralization which increases the security of the network as a whole. In addition, if you open port 8333, others will be able to download blockchain data from you.
Your voice - In the event of a hard fork, running a full node is the only sure way to know which network consensus rules you are following.
May take +1 days to sync the blockchain from scratch depending on your hardware specs.
Wallet's send function isn't fully functional until the blockchain is fully synced.
Must run online 24/7 to continuously sync new blockchain data or it will need to catch up once back online.
The blockchain uses +321 GB of hard drive space (as of Jun 19/2020) and grows roughly every 10 minutes.
The Bitcoin Core wallet backup options are limited to a digital backup file or individual private keys. There is no seedp hrase backup option.
Note: You can enable pruned mode to reduce the disk space required to as little as 2 GB.
- +321 GB (as of Jun 19/2020) of hard drive space for the standard full node or +10 GB for a pruned node.
- 2 GB of RAM or more.
- Internet plan that can accommodate the initial +321 GB (as of Jun19/2020) download of the entire blockchain and the +20 GB sync per month.
Note: If you open port 8333 your internet plan must accomodate the upload bandwidth used by others downloading data from your full node.
Let's go over the 3 ways you can utilize a full node:
Download the bitcoin core software and use the built in wallet to transact.
Use a wallet that supports connecting your full node to the wallet. You'll need to have Bitcoin Core installed and synced.
Use a wallet that auto-connects to someone else's node. This is convenient but the least desirable as it requires more trust in the company.
Running a full node is easy and can be done on any computer:
- Download and install the Bitcoin Core software.
Note: You can download a full node on Android here.
- Open the program and let it sync the blockchain
Note: It may take a few hours or up to a day to sync and the wallet isn't usable until it's fully synced.
Optional: Port forward 8333 on your firewall if you want to help update other full nodes on the network. (Requires internet plan with high upload cap)