Recently I made a poll on Twitter asking "Do you run your own node?" For those who didn't, I wanted to capture why not. I went into this with the assumption that most of the people who don't run their own node would be because they don't have any technical knowledge. However, I think I may have uncovered something which is exacerbating this problem.
The Rise of the Pi Nodes
Something really cool happened in the past few years, the combination of Lightning Network's growth and the ability to run a Bitcoin and Lightning Network node on a Raspberry Pi 4. This duo made DIY node building popular, and with the cheap and widely available Raspberry Pi, multiple projects sprung up offering an all-in-one software stack for running the Bitcoin client, a Lightning Network client, and channel management.
RaspiBlitz was probably what started this trend, since it made it easy for anyone to come along and acquire the parts list and follow some basic instructions to get a Lightning node set up. Plus it has the ability to put a really cool screen on top of it. Before RaspiBlitz, you had to not only figure out what to purchase, but also install the OS, format the drives, and install all the services you wanted manually. Being able to flash a SD card and follow some quick setup prompts was (and is) a fantastic improvement.
Then what really made running a Lightning Node popular was Umbrel. You can even go to Bitcoin Visuals and see the ramping up in 2021 was mostly driven by new Umbrel nodes coming online, according to Umbrel's data. Now I need to mention, this is great! The more nodes there are that are being used by their operators, the (slightly) more decentralized the network becomes. It would be better if Umbrel were FOSS, but at least we're getting adoption and hopefully some of those who started out with Umbrel switch to OSs that deeply care about freedom.
However, building and running the Pi nodes has mainly been for the tech savvy, the tinkerers, the geeks.
The Ones Left Behind
With popularity around running a Bitcoin/Lightning node on a Raspberry Pi growing, it actually drowned out the message of how easy it is to take self custory without having to spend a dime on new hardware or worry about maintaining an always-on computer. So many now think that the only way to run a node is to buy a dedicated machine that needs to be online 24/7, and that's literally enough to prevent them from looking any further.
These are the people that need to get their coins off exchanges but feel that they can't because either they can't find Raspberry Pis for sale, can't afford it, or just wouldn't know how even with the best instructions. At best they may have a Ledger or Trezor where they think they're taking self custody, but ultimately are relying on someone else's node.
Why Run a Node?
The network is already decentralized, why should it even matter? While it is true that you running your own node will probably not make much of a (positive) dent in the added security to the network, that doesn't mean that the importance of running a node should be ignored. Here are my top-3 reasons on why even the non-tech-savvy should still run their own node for personal usage.
1. Audit the chain
When you sync a node from genesis, your node is effectively retaining and building upon a full audit of every coin ever spent. No one can manipulate the supply and affect your node, because it would simply reject the attempt. At any time, you can audit the entire supply with
gettxoutsetinfo
.2. Validate received transactions
For the most part, users would be running Bitcoin Core at home to be able to receive coins. Building off the first reason, they can be ensured that they are actually in possession of their coins if their node which has synced from genesis tells them.
3. Increase privacy
You don't have to be a network guru simply to increase your privacy when using Bitcoin. Going from relying on someone else's node, who is able to see all of your addresses (used and unused) and their balances, to your own is a massive step in improving the privacy of the user.
Complacency
There is also the danger of becoming complacent when already running your own node. It unfortunately doesn't take much to undo the privacy gains of previously running your own node. Throwing your xpub in a wallet which isn't connected to your node gives whoever is controlling that node the ability to see all of your addresses and balances, forever. Running a node is like fighting for privacy. It takes effort to continue and it's easy to slip up and take the easy path for convenience.
If you stop using your node, it loses its effectiveness at enforcing consensus.
Think about that for a moment. Why don't we care if a 3-letter agency spins up 100k Bitcoin nodes and then change them to their own set of rules? Because no one would use them. No one would care if those nodes were to fall off the network since they don't matter. Only nodes that are actually used matter.
A Call to Action
If you're a Bitcoiner who doesn't run your own node, possibly because you thought that it meant you have to purchase a Raspberry Pi, don't worry! You can still run a node by installing Bitcoin Core on your day-to-day computer and still shut it down at night or over the weekend, and only use it when you need it. You won't harm the network by using your node this way. Head to Bitcoin Core to download the latest release for your operating system and really make an attempt to verify the download. This ensures that you're actually running Bitcoin and not something else!
If you're a Bitcoiner who does run your own node, you're probably already tech savvy, or just enough to figure it out on your own. You can help others with just getting to self custody.
Here's what you can do to help:
- Stress the importance of running your own node
- Suggest starting off by running Bitcoin Core on their personal computer that they already have
- Answer questions about storage requirements and syncing, and CPU and network utilization or point them to resources that answer them
The point should be to get more people taking self custody by not relying on someone else's node. If you're sending coins to your hardware wallet but your wallet isn't configured to use your own node, I wouldn't even call that taking self custody.