Crypto Market Commentary 

8 December 2019

Doc's Daily Commentary

 

The 12/4 ReadySetLive with Doc and Mav is listed below.

Checkmate's Corner

Bitcoin Nodes

Recently, a few RSC members have asked me about what it means to run a Bitcoin node and why you should do so. In today’s article, I will be covering what a Bitcoin node does and why you should run one.

The Humble Node

A node as we refer to it today actually differs from the way Satoshi defined it in the whitepaper. He originally called them ‘mining nodes’ which initially was correct as mining was built into the wallet software. Whilst all nodes are technically equal, there are really three types of nodes today:

Mining Nodes – These are nodes which have mining hash-power behind them and are the gateway between transactions to be mined, hash-power and are the nodes to which coin-base rewards (block rewards) are allocated in the event of a successful block find. Depending on the size of the miner, they may have their own node or they may utilise someone elses node in a mining pool. At the end of the day, a mining pool is simply a node with a distributed network of hash-power behind it.

Economic Nodes – These are nodes which technically are the same as user nodes however belong to economic hubs like exchanges, merchants, block explorers and any other service who adds value and makes Bitcoin useful as a currency.

User nodes – These are nodes which technically are the same as the other two but are run and operated by users like you and me. On a personal level, they serve three purposes: 1) they allow you to validate that your coins are really your coins and that the bitcoin blockchain fixed supply is intact. 2) They provide you with enhanced privacy as you can search the blockchain for your transaction status without leaking your IP address to a public blockchain explorer. 3) They are your vote in the consensus of which version of bitcoin you agree with.

The real purpose of a node is simply to relay transactions and events across the network to ensure a coordinated single source of truth exists. Think of them as peers in a torrent file sharing service all contributing their part to the global picture.

Why run a node?

At the core of it, the main motivation to run a node is to contribute to the network and verify your transactions privately. It may not seem like much of an incentive however if you use a Ledger hardware wallet for example, you are actually trusting Ledger’s economic Node which is feeding you data.

Every time you check your Ledger balance, they are feeding you that information and if you never verified on your own node, you may not own any bitcoin at all as you have been fed false information. Note that this is a likely scenario however it is an example of how the network is actually full of trusted setups and you can immediately see that nodes operated by Ledger are more valuable than yours when it comes to consensus votes.

Setting up a node is probably a 6/10 in terms of technical complexity, it is not perfectly simple but it is not too difficult either. I do believe it is still more complicated than is acceptable for a network 11 years old. Considering Decred’s wallet takes all of 10 seconds for a complete noob to setup and run a full node, Bitcoin has a ways to go.

Nevertheless, there are two pathways for setting up your own node I have tried and both a fairly straightforward. Both require a Raspberry Pi (3B+ works, the new model 4 is better) and an external hard drive (750GB to 1TB advised).

The Raspiblitz

This little guy comes with a nifty LCD display pre-setup as well as a shopping list for all the components. It is the more complicated of the two options however has a great interface once setup to run both a bitcoin full node and a Lightning network wallet.

https://github.com/rootzoll/raspiblitz

MYNODE

Option two is the more plug and play version and includes very valuable features such as a web-login interface and a built in blockchain explorer. If you are less comfortable with tech and command interfaces, this is the option for you. It takes about 10mins to setup the software (flashing and SD card) and a day to sync the blockchain. After that, you get a nifty little web-interface where you can access all its features.

Where I will critique this system is that one click updates are only available for Premium versions which costs $99. You can update your node manually however the devs have been extremely vague with the instructions to do so and I have not figured out how it is done. Considering upgrading nodes is an important part of consensus, this is poor form in my mind.

Bitcoin consensus

The final piece to the Bitcoin node puzzle is consensus. In short, as bitcoin undergoes upgrades, they are implemented by either soft or hard forks. With a soft fork, new updated nodes run the new code and consensus rules whilst old nodes run the old rules.

The soft fork essentially tricks the old node into believing it is doing the right thing where in reality, they will accept outdated blocks which will then be rejected by new nodes. Then the old node will be ‘corrected’ by the updated network and then accept those blocks as valid.

For a hard fork, old nodes cannot understand the new blocks and thus will reject them as violating the rules. Thus if the community decides that the new hard forked chain is the ‘Real Bitcoin’ then the old nodes get forked off the network and are running dead code with no users.

Now where this gets complicated is that miners provide security and economic nodes provide utility. What happens if the miners and economic nodes agree on a different side of the fork to users?

This is exactly what happened during the fork wars of 2017 that culminated in creating Bitcoin Cash. Many Miners and economic nodes signed up for the New York Agreement which involved supporting a block size increase and not activating SegWit. The key drivers behind this were that SegWit eliminated the ASICboost advantage of Bitmain and Coinbase had millions of dollars worth of unconsolidated dust UTXOs. With larger blocks, Coinbase could reclaim all this BTC without burning it all up in fees.

Users disagreed with this and ended up launching a counter assault by running a new version of the bitcoin code called UASF or User Activated Soft Fork. This code essentially had a patch in built that would invalidate any miners blocks which did not signal SegWit support after a certain block height. Thus, any miner who still did not signal SegWit support, would have their block reward invalidated, destroying their income.

This is Bitcoin’s governance model. It is best described as a Mexican Standoff between miners, Users, Developers and Economic Nodes. Your node is your say in the matter…

Concluding thoughts

Running a node is a great way to build up your technical knowledge and start to practice the next level of self-sovereignty. The benefits to your privacy and security on the chain is well worth the effort and I do recommend spinning up either a Raspiblitz or a Mynode to try it out.

I have also written a guide on how to setup a Decred node which similarly adds to the resilience and decentralisation of the network. It is a small but important contribution to keeping the Bitcoin and Decred peer networks resilient and secure from those who may aim to tear it down.

 

Press the "Connect" Button Below to Join Our Discord Community!

Please DM us with your email address if you are a full OMNIA member and want to be given full Discord privileges.

An Update Regarding Our Portfolio

RSC Subscribers,

We are pleased to share with you our Community Portfolio V3!

Add your own voice to our portfolio by clicking here.

We intend on this portfolio being balanced between the Three Pillars of the Token Economy & Interchain:

Crypto, STOs, and DeFi projects

We will also make a concerted effort to draw from community involvement and make this portfolio community driven.

 

Here’s our past portfolios for reference: 

 

 

RSC Managed Portfolio (V2)

 

 [visualizer id=”84848″] 

 

RSC Unmanaged Altcoin Portfolio (V2)

 

 [visualizer id=”78512″] 

 

RSC Managed Portfolio (V1)