Let me briefly explain that a Bitcoin node is any computer that is running software (Bitcoin Core) that has some important tasks:
Your bitcoin node must keep a copy of the entire bitcoin blockchain. It has to connect to other nodes and form a communication network that propagates transactions (transactions are held in a “mempool”, ie the queue of transactions that are waiting to be included in the next block and thus added to the blockchain). It must check that all additions to the blockchain are valid and reject those that are not. It will provide other types of software that ask, such as wallets, details about the blockchain – such as balances. And it provides a copy of the blockchain to any new node that wants to join. The new node then independently checks that each transaction in the received copy is valid. It doesn’t really “trust” the connected node.
To run a node, download the Bitcoin Core software and then have the blockchain copied from other nodes and your node will check each block itself. You then leave it on and new blocks will be received approximately every 10 minutes (which contain blocks Transactions from the mempool). Your node checks whether the block is valid and, if necessary, adds it to its copy of the blockchain.
A shady block is rejected, not because everyone else rejects it and not because everyone is copying their neighbors, but because the block is invalid according to the rules of the Bitcoin Core software and everyone else running the same software also rejects this shady block.
Your Bitcoin wallet does not store a copy of the blockchain and is usually separate from Bitcoin Core (although Bitcoin Core has a wallet function). Your wallet only contains your keys. It has to ask a Bitcoin node: “Hey Mr. Node, this address of mine, does it contain Bitcoin?” Technically, that’s not exactly exactly, but that’s enough for the moment.
If you’re running your own node, don’t ask other people what their copy of Bitcoin Core is doing. It is your own copy of Bitcoin Core and you don’t need to trust anyone else. Your wallet can ask YOUR copy of the Bitcoin blockchain (establishing the digital connection between your wallet and the node is the technically demanding and critical part, not just running the node – an item for another day).
Now that the preamble is complete, the next thing I want to explain is why it is important to run your own node:
When your wallet notifies you of your Bitcoin balance, it will ask a RANDOM public Bitcoin Node which balance each of your addresses contains. It will then give you the results and you will see all of your bitcoin in that wallet. Empty addresses that you have not used are also queried. Surveillance companies operate some of these nodes. “What the hell?” Yes, it is true.
You share your IP address (which can be used to identify you) to a random entity, possibly a surveillance company, and that you have a Bitcoin wallet, and ALL of your current and future addresses that you use in that wallet and all the balances of all these addresses, now and later. Giving this information to surveillance companies is dangerous for many reasons. For example, this data can be disclosed intentionally – at the request of the government – or unintentionally (to hackers). Governments can target bitcoins with high property taxes or seizures, as the US government once did for gold with Order 6102 in 1933, and hackers can target you to blackmail or trick you into using your bitcoin.
You can confidently confirm to yourself that you are receiving real bitcoins.
For example, if you’re selling something, a tech-savvy buyer could potentially manipulate which node your wallet is connected to. They could send you fake bitcoins and your wallet would think it received real bitcoins because the malicious node lied to your wallet. Granted, this is very unlikely, but the fact that you can prevent it by running a knot doesn’t make the development of this type of attack interesting or fruitful. What actually happens to this attack? The scammer somehow gets your bitcoin wallet to read the fake blockchain from a malicious node. It moves supposed bitcoins on THIS blockchain, not the real one, and your wallet thinks you’ve been paid.
If you are scammed this way, you can accept that fake as the final payment and send goods in exchange for the fake bitcoins. If one day you connect to a real Bitcoin node, your wallet will show that in fact you never received Bitcoin. Your balance will be lower than you thought as the fake transfer never existed on the real Bitcoin blockchain.
You can prevent this by connecting your wallet to a trusted node, but it’s even better to connect to your own node. “Don’t trust, verify” is the Bitcoin’s mantra.
Failure to do so is like accepting gold as payment and asking a random person to use their XRF analyzer to verify that the gold you received is genuine. They don’t know if this random person is on the buyer’s side or if they are being honest.
You might ask, “Don’t trust? Wait, don’t I trust Bitcoin Core when I download it? How do I know THAT is not fake? ”Yes and no. There are ways to verify that the software you download is genuine, but that is beyond the scope of this article.
You might then ask yourself, “Don’t I trust the developers that the original copy will behave as I expect?” In fact, yes, unless you write the software yourself, read the code, or pay someone to source the code read – but then trust them. There needs to be some level of trust, but the idea is to keep it to a minimum. (Just to say that might get me in trouble with the bitcoin mob, shhh!) Most people (myself included) can’t and won’t read the code so there is some level of trust. It is believed that hundreds, maybe thousands, of eyes of developers scour the code looking for bugs and issues before it is released. It’s not easy to make changes to Bitcoin Core, and this is a feature, not a bug. With the gold XRF analyzer analogy, you probably won’t be building one from scratch to check if your gold is real or not and that’s fine.
Defend the Bitcoin rules from unwanted changes – like scarcity or block size.
When a group of “powerful” people have banded together, as they did in 2017, and decided to change the rules for how Bitcoin works (e.g. by increasing the block size), you will not be able to upgrade your node to the new one System and keep your current node. If you are more than the minority, there will be a pool of people running the unchanged bitcoin core and a pool of people running the modified version – a fork. This is how Bitcoin Cash was born. The new version was unanimously rejected, but those who lost the war continued to operate their nodes and also mined bitcoin cash. Those who owned Bitcoin then also owned Bitcoin cash. For a certain address there was a credit on the Bitcoin blockchain, a credit on the Bitcoin Cash blockchain.
If you didn’t have a knot of your own at the time, you had no say in this war. Your wallet may have connected to a Bitcoin Cash node and someone may have paid you in Bitcoin cash instead of Bitcoin. You may then have turned in your goods for coins that did not correspond to your preferred monetary policy.
Running a node and leaving it powered on 24 hours a day will help the network.
The more nodes running, the faster transactions can spread for everyone and the harder it is to shut down Bitcoin. To kill Bitcoin, every single copy of the blockchain must be destroyed.
Be an “Uncle Jim”.
In the future, it may be too difficult for EVERYONE to run their own node, but we don’t want people to trust random nodes. I can imagine that in every social “trust” (“Uncle Jim”) there will be a technical person that people can connect their wallets to. This tiny compromise is far better than connecting to random Bitcoin public nodes.
If you learn to operate your own node, then YOU also become a kind of human node, because one day you could help someone else operate and use their own node.
Coolness factor and street cred.
Running your own node is super cool and gives you a huge appreciation for the power of Bitcoin. You will likely end up buying more.
Hopefully it is now clear why you should do a knot. There are different possibilities. If you want individual help, see here. Help is available for computer illiterates at www.bitcoin4boomers.com.
This is a guest post by Arman the Parman. The opinions expressed are solely their own and do not necessarily reflect those of BTC Inc or Bitcoin Magazine.
Comments are closed.