Learn Crypto's section on using cryptocurrency has so far covered the basics from the perspective of someone wanting to enjoy the utility of crypto as a new form of internet money, investing in its properties as store of value, or directing speculating on crypto as a tradable asset.
There is however, one use case we haven't covered yet, which is arguably the most important, and that is actively supporting blockchains by running a node.
Crypto is predicated on the exponential strength of network effects, and can provide contribute to the power of the network by helping run it.
You can choose any blockchain support depending on how you value their use case, but for this example we are going to look at how to run a Bitcoin Node.
We're going to keep things relatively simple, giving you enough knowledge to understand the process but would recommend that you do further research before jumping in, as Learn Crypto is focused on users just beginning their journey into crypto.
In the context of the Bitcoin blockchain, a Node is a program supporting the key functions of Bitcoin - validating transactions and blocks that store transactions. Validated blocks are added to blockchain, which continues to grow. So running a Node helps support and grow Bitcoin.
Nodes act either as a communication endpoint or as a redistribution point that may perform different functions.
Any device that connects to the cryptocurrency's interface may be called a node in the sense that they communicate with each other through the blockchain network.
Nodes can also transmit information about blocks and transactions within the blockchain network of devices by using Bitcoin's p2p2 protocol.
Each node has its predefined functions, therefore different types of Bitcoin nodes exist.
A full node is responsible for verifying, authenticating, and storing all transactions occurring on a blockchain network and acts as a core server, which means it is data-heavy. Given the data load a full node can be expensive to run and requires advanced computing power and energy. As per Datalight's research, over 10,000 full nodes are operating on the Bitcoin network.
In addition to the overall security and validity of a Bitcoin network, a full node has other specific responsibilities that make it different from other nodes. Two important distinguishing features are:
Unlike full nodes, Lightweight nodes do not contribute to the security of the Bitcoin network as they don't record transactions.
Also known as Simplified Payment Verification clients, these nodes enable users to check if transactions were included in a block or not, without requiring a user to download the whole copy of the blockchain. Essentially, lightweight nodes participate in the network as communication endpoints.
While a full node verifies all the transactions and has a complete copy of the blockchain, a miner creates the blocks which the nodes keep. A miner works on a transaction for about 10 minutes to solve a cryptographic puzzle and comes up with the best combination to store that data.
On the other hand, nodes record that result forever after verifying the data. So, miners are completely different from nodes but the interchangeable language of Bitcoin as meant that sometimes the two things are conflated..
Running a full bitcoin node doesn't have any coin rewards, however, it comes with its intangible benefits. They include:
By running a Bitcoin node you can actively participate in the crypto revolution helping shape an alternative monetary system. Before you start with the process, you need to know the risks and requirements associated with running a Bitcoin node. Let's dive into that-
When running a Bitcoin node, you need what is called a client. Since Bitcoin's inception until today, the most common client is called Bitcoin Core. It is a software you must install on your device. You can also store your Bitcoins in the Bitcoin Core wallet, however; take safety measures as you would for running any other crypto wallet.
Note: Ensure your laptop or desktop is running at optimal condition since most of the operating systems allow your computers to enter a low-power mode as soon as the screensaver activates. This will halt or slow down the traffic.
There are three options to run a Bitcoin full node:
We're going to focus on the first option, which is running a node on a Virtual Private Network.
Step 1: The first step is to get your hardware ready to run the Bitcoin node.
Step 2: Choose the operating system you wish to use to run the Bitcoin node. Some options are Windows (7,8, or 10), Linux (Debian, Ubuntu, etc), and Mac OS. If you choose a customised solution like Raspberry Pi you can use Umbrel.
Step 3: Install Bitcoin on your hardware using these step-by-step instructions.
Step 4: Follow these steps to configure your router to allow port 8333:
a) Login to your router, and look for the port forwarding (Virtual Server) section. You'll find it under the "NAT" section.
b) Input your IP address..
c) Type '8333' on both Internal Port Start and External Port Start.
d) Select TCP/UDP in the "Protocol" section.
e) Click Apply/Save
Verify with websites like "earn.com" to ensure your Bitcoin node is reachable.
Full nodes are essential to ensure Bitcoin does as Satoshi intended, functioning as a decentralised peer-to-peer cash system.
There are no direct financial rewards for running a node but it is a great way to improve your knowledge of how Bitcoin works. You may benefit as a business that accepts bitcoin, or as a trader who can derive value from the data running a node puts at your fingertips.
You'll also enjoy the kudos of knowing that you are helping support and grow an entirely new inclusive financial system without borders or restrictions that can give people a new kind of financial freedom.
As mentioned above, Bitcoin Core is the definitive client that the majority of Bitcoin nodes use. It was the original client used by satoshi to launch Bitcoin. It is the client that core developers generally use, and is the most mature of all the clients, constantly updated and patched.
On the other hand, there are also good reasons to use other clients -- client diversity is one. Client diversity ensures that Bitcoin as a network can still operate if a critical failure were to hit Bitcoin Core. Being the dominant client, Bitcoin Core theoretically makes the network vulnerable to a single-client failure as it holds undue influence over upgrades or consensus rules.
As of July 2024, Bitcoin Core makes up a staggering 98% of clients in the entire node population. There are alternatives to consider if you are thinking of setting up a Bitcoin node: