Run your own Bitcoin node
Running your own Bitcoin node is as important as storing your own Bitcoin keys. A step-to-step guide to more self sovereignty.
As you will see, running your own node is at least as important as holding your own Bitcoin keys. It is also much easier than many think. In this episode, I will explain why it is important and how you can do it without barely any technical knowledge. I have to admit, though, that I am not an expert on the technological side myself. I am sure that there are countless other (maybe cheaper and easier) ways to run a Bitcoin node. I'll show you my, non-techie. At the end of the day, we all try to do our part and learn from each other.
Why
A key feature and a main value proposition of Bitcoin is that you don't have to trust anyone to use the network. The basis to make it happen is information, more specific, distributed information. A trustless system only works properly if everyone has all the information of the network at all times. Only then is it possible for network participants to verify all network activities themselves, independently of trusting others. To ensure this, there are so-called Bitcoin nodes. A Bitcoin node is nothing more than a computer running a special Bitcoin software
You can envision nodes as electronic mailmans that store, validate and distribute the Bitcoin ledger to the Bitcoin network participants in a Peer to Peer fashion. This allows each participant to check in real time whether the Bitcoin network is working according to the established rules, and all players of the network play by those rules.
Beside storing the entire blockchain and distributing it to the network participants, Bitcoin full nodes also validate each block and each transaction before adding them to the Bitcoin blockchain, thus serving as arbiters of the Bitcoin network, setting and enforcing the rules about which transactions and blocks are valid and which are invalid.
As we will see, with running your own node, you contribute to the greater good, but it is also self-serving. The following reasons are not conclusive, but in my opinion very important. Let’s have a deeper look.
Keep Bitcoin decentralized
Because each bitcoin full node has the entire Bitcoin blockchain stored, another node means another copy of the Bitcoin ledger and a further distribution of the Bitcoin code. The more individual copies exist and the wider those copies are spread around the globe, the harder it is to turn Bitcoin off. In fact, in order to kill Bitcoin, every single copy of the Bitcoin ledger must be destroyed.
This means that your copy alone (your node) could carry the idea of Bitcoin forward if all other copies were burned. In this context, I always have to think of the book burning of the Germans in the Second World War, where numerous literary works critical to the Nazi ideology were destroyed forever. A copy beyond the reach of the people in power would have been enough to allow the idea expressed in the books to live on. With your own node, you yourself guarantee that the Bitcoin idea will be carried forward. Each node therefore counts.
One node, one vote
In the Bitcoin network, every participant is treated equally, regardless of status or Bitcoin ownership. Nodes ensure compliance with the rules in the Bitcoin network. You vote with the version of Bitcoin software you are running on your node. In the event of disagreement, the majority principle decides. The more Bitcoin nodes there are, the more difficult it is for bad participants to assert themselves and change the network rules against your will. It also makes it therefore less vulnerable for fraudulent actors to harm the network by running fraudulent software.
For example: If a group of "powerful" people band together, as they did in 2017, and decide to try to change the rules of how Bitcoin works (for example, by increasing the block size), you can choose to not upgrade your node to the new changed code. This will result in a pool of people running the unchanged Bitcoin core code and a pool of people running the changed version - a fork. This is exactly how Bitcoin Cash was born. If you weren’t running your own node at the time, you had no voice in this war.
Imagine if your wallet might have been connected to a node, that changed to the new version, and now runs Bitcoin Cash, and then someone might have paid you in Bitcoin Cash instead of Bitcoin. Thus, you might trade goods in exchange for coins that you didn’t want in the first place.
Don’t trust, verify
All information of the Bitcoin Network is stored in the Bitcoin ledger, which in turn is stored on nodes. One therefore needs a Bitcoin node to access this information. If you do not operate your own node, you are again dependent on a third party that operates a node and provides you with this information. You trust this node that the information provided is correct. Above that, with connecting your wallet to another node, personal information can be compromised.
For example, when your wallet tells you your bitcoin balance, it asks a random public Bitcoin node what balance each of your addresses contains. It then gives you the results, and you see your total amount of Bitcoin in that wallet, but you don't know if that amount is true or fake. In exchange, this third party can also receive private information like your transaction history, your IP address, your physical location, all of your current and future addresses you'll use within that wallet, your bitcoin balance, and your financial counterparties. And yea, I am pretty sure, that there are nodes run by surveillance companies and/or governments.
Be your own bank
But that's not all. Every Bitcoin transaction needs to be distributed to the Bitcoin network, so that the transactions can be validated by other nodes and included in the blockchain. Those nodes check for example if you have enough balance in your wallet, to prevent double spending or similar. This also means that if you don't run your own node, you will have to rely on another node to propagate your transaction across the Bitcoin network. The third party could even block your access to the Bitcoin network altogether by not forwarding your transaction to other nodes at all.
You can imagine the whole thing like this: In our traditional financial system, we rely on banks. We register by giving up a lot of private information and log into our online banking to initiate a transaction. Before the bank approves the transaction, it checks it against certain criteria. If inconsistencies arise, the bank can block the transaction by not forwarding it to the financial counterparty. Your position in the Bitcoin network is similar if you do not run your own node because you are reliant on someone who is running the node and publish your transaction to the network.
How
As we have seen, like self-custody, running your own node is also a very important step to become independent of third parties. Unfortunately, many still think that running a Bitcoin full node is complicated and requires deep technical knowledge. This is not the case. Here is a step-to-step guide for running your own Bitcoin node: https://carlbmenger.substack.com/p/dont-trust-verify
My goal was to show you the importance of running your own node and give you an idea of how to do it step-by-step. Reach out if you have any further questions, I will try my best to answer them. As usually, comments and feedback is always appreciated.
That's it. Thanks for reading and see you hopefully in the next one. Until then, remember: Running bitcoin matters. ₿ critical, ₿ informed, ₿ prepared.
Stay in touch:
Twitter: www.twitter.com/carlbmenger
Substack: https://carlbmenger.substack.com/publish
bitcoin-cli gettxoutsetinfo muhash
but you will first need to download extra 129MB ofcoinstatsindex
from any other full node and place it in~/.bitcoin/indexes/coinstats/
directory.gettxoutsetinfo muhash
for be.anyone.eu.org full node can be seen at https://ln.uk.ms/bitcoin.html (search for "gettxoutsetinfo") or plain text of the same: https://ln.uk.ms/bitcoin.txt