Hacker News new | ask | show | jobs
by dpkp 3120 days ago
I guess I just have never found support for that in the nakamoto paper. You obviously have strong feelings about it, and I'm not trying to provoke an argument. I just still don't understand where in the paper there is any discussion of non-mining nodes. The only place I can find mention of nodes that are not working on constructing new blocks on the network is in Section 8 re: the simplified verification protocol.
5 comments

I believe the original intention was that all nodes would be mining nodes, and that there would be tens of thousands, or even hundreds of thousands.

I believe in 2008 Satoshi did not understand the full implications of ASICs or economies of scale. (S)he probably didn't even realize that ASICs existed.

Regardless of the whitepaper, in our modern cyberscape the only way to be certain that the original rules (21m coins, can only spend your own money, etc.) are followed is to be confident that a wide and deep pool of users are verifying them. That is strictly at odds with heavy on-chain scaling.

I'll just leave this here...

http://satoshi.nakamotoinstitute.org/emails/cryptography/2/

"At first, most users would run network nodes, but as the network grows beyond a certain point, it would be left more and more to specialists with server farms of specialized hardware. A server farm would only need to have one node on the network and the rest of the LAN connects with that one node."

Satoshi was well aware of specialized hardware. If the majority of the planet were using bitcoin, it would not be necessary for every user to be a node. It would still be plenty "wide and deep" if businesses were running it. The security of SPV is actually quite good.

http://satoshi.nakamotoinstitute.org/posts/bitcointalk/188/

"I anticipate there will never be more than 100K nodes, probably less. It will reach an equilibrium where it's not worth it for more nodes to join in. The rest will be lightweight clients, which could be millions.

At equilibrium size, many nodes will be server farms with one or two network nodes that feed the rest of the farm over a LAN."

http://satoshi.nakamotoinstitute.org/posts/bitcointalk/287/

"The current system where every user is a network node is not the intended configuration for large scale. That would be like every Usenet user runs their own NNTP server. The design supports letting users just be users. The more burden it is to run a node, the fewer nodes there will be. Those few nodes will be big server farms. The rest will be client nodes that only do transactions and don't generate."

Satoshi didn't predict mining pools, but they were fully aware that mining nodes will be in minority. It's mining pools that produce centralization problem, not mining hardware.
Our understanding of Bitcoin has progressed by leaps and bounds since the system has been running for 9 years. The whitepaper is not the end-all, be-all of Bitcoin. Even Satoshi did not fully realize what he built. For more details: https://www.coindesk.com/nobody-understands-bitcoin-thats-ok...
That's because you're right and he's wrong. He's a well known bitcoin core apologist, and is just talking his political position. The original intended system design at scale had no need for non mining nodes.

This revisionism is a long running and well known war, here is the core political bloc in question actually attempting to justify editing the white paper to push their perspective over reality.

Cancerous stuff. https://github.com/bitcoin-dot-org/bitcoin.org/issues/1904

For those of us that only follow the latest on bitcoin at a high level, I think it is difficult to determine what are the points of disagreement. When I first read about bitcoin on HN in 2010, and read the whitepaper (and went to their IRC channel), I certainly don't remember thinking that non-mining nodes were that important. However, now I'm not sure, and many people making arguments on all sides seem to have good arguments at various times. I am hoping more people with good knowledge of the issues weigh-in here, rather than the over-politicized subreddits.
The real truth is that both everybody and nobody is in control.

Every participant in the system has a part to play and has a choice, miners choose which chain to mine and in doing so secure that chain from attack and earn a return, people that run nodes pick the nodes to run based on which chain they believe has the most value, or in the case of miners in order to mine the chain they believe has the most value, spv wallet users transact on the chain they value and pay fees to support the upkeep of it, the simple act of conducting trade with a cryptocurrency gives the entire apparatus basic value, so the people that don't give a damn about any given blockchain and just want to use it to move some completely unrelated asset from a to b also still give the system value, and of course the holders and traders of the actual blockchain assets give the system value and play a part in resolving contentious forks, by evaluating what they see as the market value of a given blockchain asset, forked or otherwise, and profiting or losing based on that insight.

Short of outright theft of a private key, nobody may compel even the smallest user of a blockchain to perform an action that they do not freely wish to undertake, not all the devs writing node software, shills pushing political agendas, or even miners mining blocks in the chain can change that fundamental aspect of the system that keeps it actually properly decentralised. The only way around this is to drive the vast majority of transactions off chain and force most end users to operate through third party intermediaries that manage their actual potential transactions in the system.

Like exactly what core are doing with the lightning network, for example.

https://www.reddit.com/r/btc/comments/7fsbw5/divorcing_the_s...

To be quite honest, it doesn't matter if folks think that non-mining nodes are unimportant - they can't force folks who /are/ running full validating non-mining nodes into accepting arbitrary rule changes to the protocol. That's what's important.
If non-mining nodes don't accept it then they just fall off the network like a loud angry spectator at a football game.
A couple of years of failed fork attempts have a different opinion to your understanding.
Why go on and on about the paper, instead of the implementation?
Perhaps it should give you pause with that belief structure when you realize the word 'mining' doesn't even exist in the bitcoin whitepaper. It is only the nodes that exist, because it is only the nodes that validate, and everything that didn't have anything to do with validation is rightly considered a secondary concern of the protocol.

So there are nodes, which are peers. And there are people who need nodes for performing bitcoin transactions, and some of those people are miners, and some of them are just making good-ol-fashioned transactions. The correct term is "I am a peer, and I use this node for my transactions, which create blocks". Or "I am a peer, and I use this node for my transactions, which are payments."

Download it for yourself and see.

https://bitcoincore.org/en/download/

Please read section 5 of the whitepaper on bitcoin network. You are not a node in bitcoin if you cannot perform proof-of-work. A non-mining node has no say in bitcoin.
You really should learn how bitcoin works. It will lead to a lot less frustration on your part when reality delivers a different outcome to your understanding.
one day it will click for you. hopefully.
I'm the one who understands why all of the forks you support fail mate.