Follow the POW!
--
POW tells everyone what Bitcoin is, although not in the simplistic view that Miners would govern through POW.
Segwit2X was rightly perceived as an attack on Bitcoin. It failed, but left many with the impression that this was a win by lucky circumstances and that a similar attack is the biggest threat to Bitcoin, so dangerous that only full nodes should be used.
Some even recommend using Wallets connected to a random electrum server or to the server of the Wallet’s author instead of a software that follows POW, usually referred to as SPV client.
A random electrum node might be operated by those collecting network intelligence, like with Facebook and Google you pay with your privacy. A wallet server might be hacked and mislead you to think you got paid while you were not.
You could say, that’s the problem of those using random servers, I use mine and nothing else. Their problems do not affect my financial sovereignty. True. You should do so whenever you can.
With the growth of the network however we get people who do not understand the technical requirements of financial sovereignty. Let’s assume a mobile phone Wallet is backed with its own full node becomes available on AppStore and PlayStore. Do you really want a Bitcoin network where a company decides on upgrades and even auto-upgrades of a large number of full nodes? Most people using those phones would not even recognize that they are using a wallet that has all the inefficiencies of a decentralized network while all the weaknesses of a centrally controlled PayPal.
What should you recommend people to run, who are not tech savvy or understand the real requirements of financial sovereignty?
I’d rather recommend an SPV wallet to them than exposing them to fraudsters, spies and filling up the network with full nodes that are centrally update-able to a vendor preferred flavor of Bitcoin. The later would even be system wide threat capable of hard forking away a large number of users at a whim.
Many think that SPV wallets are dangerous because they unconditionally follow POW created by miners. But wait, what is the actual danger there?
POW has several utilities, one of them is telling everyone what full nodes think Bitcoin is. Miner lose their revenue if their coins are not accepted by full nodes, therefore full nodes are the true rulers of the network. This is why failure of Segwit2X under the threat of UASF was not a lucky strike but a demonstration of real power to those who mistakenly though that they would be in power.
Miner would again and again lose a fight against the full nodes as full nodes decide what miner are paid for, unless someone managed to centralize update of full nodes, and that I consider more of a threat than SPV nodes.
If you consider that full nodes force miner to follow the network rules and miner communicate via POW what blocks comply with network rules, then what is the argument against recommending SPV nodes on millions of mobiles?
A reason some reject SPV mobiles is the bad reputation of the server side block filter (BIP37) that practically gives up address privacy to random full nodes it connects to. This weakness is about to be eliminated with implementations of client side block filters (BIP157-158). Implementation of these BIPs are forthcoming, most well known in the Neutrino client, but also in Bitcoin Core and in Murmel, the Rust-Bitcoin project I work on.
Your financial sovereignty is best protected by your own full node, but the next best to it is a node that observes the dictate of full nodes what Bitcoin is, through the proxy of POW. Why trust (a foreign node) if you can verify (POW yourself)?