Satoshi extensively detailed the ability of participants in the Bitcoin network to use light clients, that don't fully validate the blockchain, and predicted that the vast majority of people would use such clients in the future.
The vision of Bitcoin Core that you're promoting totally contradicts the one promulgated in the Bitcoin white paper and further descriptions provided by Satoshi.
The idea of the vast majority of people not being able to hold their own private keys, because transaction fees are so high, contradicts several core features of Bitcoin that are described in the white paper.
If you don't run your own node, you need to trust a 3rd party to transact with the blockchain, because you require someone elses node in order to record a bitcoin transaction. So you are, by definition, not a peer, because you are not equal to a person who runs a node, because you need to trust a 3rd party.
You also continue to sidestep the fact that Bitcoin Core's vision of letting transaction fees rise to astronomical levels with growing usage of the blockchain is going to mean the vast majority of the world population will have to trust other parties to hold their private keys, which is a much greater reliance on trusted third parties than polling random nodes for SPV proofs, as required when running a light client, which still let's the user control their own private key.
What do you mean core? Core doesn't run my node. I do. If you can't convince the peers in bitcoin to run your node client, you don't have a solution. I know this, because I do run a node, and I am a peer in peer-to-peer cash. And I, personally, have rejected your scalability plans, because I, personally, being a peer in peer-to-peer cash, have rejected your node client. I was not happy with your security model, and therefore I, with all of the other bitcoin peers, rejected it. Which is why bitcoin remains bitcoin, and failed fork after failed fork attempts remain the failed fork attempts. Because you don't have enough peers willing to follow your consensus change.
Bitcoin nakamoto consensus in action. It is a beautiful thing.
>>As such, the verification is reliable as long as honest nodes control the network, but is more vulnerable if the network is overpowered by an attacker. While network nodes can verify transactions for themselves, the simplified method can be fooled by an attacker's fabricated transactions for as long as the attacker can continue to overpower the network. One strategy to protect against this would be to accept alerts from network nodes when they detect an invalid block, prompting the user's software to download the full block and alerted transactions to confirm the inconsistency. Businesses that receive frequent payments will probably still want to run their own nodes for more independent security and quicker verification.
While you claim that light clients betray the vision of Satoshi, based on totally unsubstantiated claims about what Satoshi meant by a light client, that are contradicted by several pieces of evidence (e.g. Satoshi communicating with Mike Hearn about Hearn's implementation of the SPV light client concept, without once claiming that his implementation fell short of Satoshi's idea of a light client, and while continuing to promote light clients on Bitcoin talk, like in this instance: http://satoshi.nakamotoinstitute.org/posts/bitcointalk/345/), you promote a future where the vast majority of the world have zero control over their own wealth, because they can't economically control their own private keys.
https://www.merriam-webster.com/dictionary/peer
> one that is of equal standing with another : equal
If you aren't running a node, you're not equal, and therefore, by definition, not a peer.
What problem do you have with people running the blockchain they prefer?
This part of the white paper is broken. Satoshi was wrong. Accepting unverifiable "alerts" from network peers as a trigger for doing large amounts of computation is a significant DoS vulnerability.
For this sort of scheme to work you would have a small-to-transmit, easy-to-verify proof of the invalidity of a block. (Called a "fraud proof" among developers who have looked at this.) Bitcoin protocol as specified by Satoshi does not allow for the full range of fraud proofs necessary to support this sort of DoS-resistant lite node implementation.
This is incorrect and plain wrong. Trusted party only exists in Ethereum, not in Bitcoin. You are not trusting anyone when you transact in Bitcoin, there is distributed consensus. How is distributed consensus trusting a third party?
Whitepaper, section 1, end of last paragraph...
"The system is secure as long as honest nodes collectively control more CPU power than any cooperating group of attacker nodes."
If that sentence is broken, like you give as an example that would fool an spv wallet, then by definition bitcoin is not secure.
Are you explaining your definition of a trust requirement in a trustless protocol?
> by definition bitcoin is not secure.
It is not secure if you use your understanding of how bitcoin works. Which, as we've demonstrated with the four failed fork attempts, is not rooted in reality.
No one was discussing the Core implementation of Bitcoin. Why do you bring it up. OP was discussing the engineering trade offs associated with engineering a blockchain.
>The idea if the vast majority of people not unable to hold their own private keys, because transaction fees...
Key custody and transaction fees have nothing to do with each other. I believe you’re referring to UTXO custody, which is influenced by fees. Miners aren’t altruistic, they won’t hash for free. Choose security and fees or no chain-tip extension / double spending is economically feasible.
>>Key custody and transaction fees have nothing to do with each other.
What are you talking about? They have everything to do with each other. If the average tx fee is $100, you will not be able to have bitcoin sent to your own private key unless you are handling large amounts of value - amounts that are way beyond what the vast majority of the world population deals with.
>>Miners aren’t altruistic, they won’t hash for free.
What does this have to do with having control over your own private key? You're changing the subject instead of addressing the fact that the Bitcoin Core idea of $100 transaction fees means the vast majority of the world population will have to rely on trusted third parties to control the private keys to their wealth, which totally contradicts the purpose of Bitcoin as described in the white paper.
>They have everything to do with each other.
You said key custody has to do with fees, which it does not. The fee market does not influence, at all, how hard or easy it is to maintain custody of keys on a blockchain. Again fees do influence the cost of updating the UXTO set. You're confusing the two terms.
>$100 transaction fees means the vast majority of the world population will have to rely on trusted third parties to control the private keys to their wealth
People pay the fees that they are willing to pay. Your position reminds me of the Yogi-ism "Nobody Goes There Anymore, It's Too Crowded". Are you arguing that people are too stupid to know how much fees they're willing to pay? Again, miners will not hash for free. If users want low fees and low security, they got what they wanted by forking off to bcash. People who wanted high security and high fees, they got what they wanted by sticking the legacy consensus rules. What is exactly the problem with this paradigm?
I had every right to bring up this debate since his argument very clearly was taking a side in it.
>>You said key custody has to do with fees, which it does not. The fee market does not influence, at all, how hard or easy it is to maintain custody of keys on a blockchain.
I just explained how it does. You didn't address my points. You're denying what common sense says is undeniably true, to promote a vision of Bitcoin where the vast majority of the world don't have private keys to their own Bitcoin wealth, because only a tiny portion of the world population can access the blockchain with any frequency.
>>People pay the fees that they are willing to pay. Your position reminds me of the Yogi-ism "Nobody Goes There Anymore, It's Too Crowded".
That's not even a point. "People pay the fees that they are willing to pay" is tautological. As fees increase, the portion of the population that can afford to access the blockchain shrinks. No amount of spin is going to conceal the fact that a 1-MB block size limit ensures mass adoption of Bitcoin, with Bitcoin remaining an affordable and peer-to-peer electronic cash, is impossible, and furthermore, that it betrays the original vision for Bitcoin as described in the white paper and Satoshi's other writings.
There is nothing stopping anyone from tweaking consensus rules to their liking. This is what the bcash team did. Sounds like you're mad at people who didn't adopt bcash.
Again: If users want low fees and low security, they got what they wanted by forking off to bcash. People who wanted high security and high fees, they got what they wanted by sticking the legacy consensus rules. What is exactly the problem with this paradigm?
I don't think there are any Satoshi quotes that definitely prove what he intended.
But there are some quotes of him talking about data centers and the like.
The miners vs nodes vs blocksize/scaling debate just wasn't a thing that anyone was thinking about back then.
A standard node will almost never produce a single new block.
For that, you need custom asic or luck.
[Nodes] vote with their CPU power, expressing their acceptance of
valid blocks by working on extending them and rejecting invalid blocks by refusing to work on
them. Any needed rules and incentives can be enforced with this consensus mechanism.
I do see the separate section on "Simplified Payment Verification", which does seem distinct from mining. Is that what you are referring to?* Another phenomenon he didn't imagine was mining pools, which drastically changed the dynamics of mining.
But that's an interesting point re mining pools. Do you have any links to more information about how they drastically changed dynamics?
Or, perhaps, you don't actually know how bitcoin works, and therefore you can't explain how miner 'support' disappeared, as soon as it came time to decide whether they wanted to be bitcoin miners, or become alt-coin miners? You know, given that the nodes police and enforce consensus in bitcoin 'n all. Miners had a choice. Do what you're told, and mine according to node consensus rules, or don't get paid in bitcoin. So they did what they were told.
And here you are, with you still trying to fight a battle you've already lost. Four times. Losing exactly the same way every time. Because even after all of those losses, you still can't figure out why you always lose. Because even after all of those failures, you still don't understand why you lost, because you still don't understand how bitcoin works.
However I image if suddenl 100% of the miners decided 42MM bitcoins is better (because 42), something a lot of users would be opposed to (printing money), things would become 'interesting'.
No. It is only the validation that is important, because it is only the validation that ensures that consensus is maintained between nodes, and valid transactions can be included in the blockchain. Nodes even define the algorithm that miners must use in order to produce valid blocks.
There has been a hard education for people over the past year that have carried an incomplete understanding of how bitcoin works, and that has been encouraged by centralized companies that are attempting to wrest control of bitcoin away from its nodes. There have been four wildly unsuccessful hostile fork attempts (XT/Classic/BU/2x), and two in which alt-coins were forked (BCH/BGLD) from bitcoin in order to attempt to convince people to use their alt-coin instead of bitcoin. All of these attempts have been failures, because all of these attempts have not understood how bitcoin works, and the fact that nodes are the peers in bitcoin, and they police and enforce consensus.
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.
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.
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."
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
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...
> There have been four wildly unsuccessful hostile fork attempts (XT/Classic/BU/2x)
These were all upgrade attempts that failed to gain miner support. Calling them "hostile forks" is stupid. The only thing hostile with them is the threat they pose to the developers who do not want to scale Bitcoin on-chain, for whatever reason.
> All of these attempts have been failures, because all of these attempts have not understood how bitcoin works, and the fact that nodes are the peers in bitcoin, and they police and enforce consensus.
No. Spinning up mass nodes in a sybil attack has no relevance.
They failed because they failed to gain enough hash power backing their upgrade plan. This is due to politics and economics.
That's a terrible misunderstanding. If nodes can reach consensus by simply agreeing on transaction validity, then what purpose do you believe miners serve?
The definition of a node is provided in Section 5 of the white paper mentioned in OP. The logic that explains "why you must mine in order to be a peer" is explained in Section 4.
Non-mining nodes are trivial to Sybil, they are "one-IP-one-vote" per Section 4. Only miners are "one-CPU-one-vote." That is why nonminers (what you call "nodes") are not peers to the system, but rather leeches / relays.
Or, perhaps, you don't actually know how bitcoin works, and therefore you can't explain how miner 'support' disappeared, as soon as it came time to decide whether they wanted to be bitcoin miners, or become alt-coin miners? You know, given that the nodes police and enforce consensus in bitcoin 'n all. Miners had a choice. Do what you're told, and mine according to node consensus rules, or don't get paid in bitcoin. So they did what they were told.
And here you are, with you still trying to fight a battle you've already lost. Four times. Losing exactly the same way every time. Because even after all of those losses, you still can't figure out why you always lose. Because even after all of those failures, you still don't understand why you lost, because you still don't understand how bitcoin works.
Yes, see section 5 of the white paper referenced in OP. It is quite clear what "peer" means in the context of Bitcoin. Others are mistaken here.
According to the white paper, Section 5, a peer is a miner. That has not changed, regardless of attempts to redefine the paper. To be a peer, you MUST contribute proof of work.
Running a non mining node gives you a copy of the blockchain data that you can trust is valid according to the rules you used to validate it. It does not make you a peer.
The only occassion the propagation is valid if you're transferring a transaction from another full node to a miner (or helping to do so). As long as there is any path to do so more nodes do not matter.
All miners are already connected together using high speed channels.
Difficulty, transaction costs, competition with other coins (and off-chain networks/sidechains), and the market price of bitcoin will all hopefully & probably settle around an equilibrium that is sufficient to incentivize enough miners necessary to maintain the security of the network.
The solution for BTC appears to be off-chain scaling, such as Lightning Network.
The end of mining rewards is beyond our lifetimes, but I wouldn’t be too surprised if there’s a successful hard fork to continue the final 1 Satoshi reward indefinitely.
If it's found that deflationary really won't work, and it's genuinely hurting the usage and adoption of the currency, and it's in the current users of bitcoin's best interest to do so, it can be turned into an inflationary asset.
Flaws can and are fixed in it, and because those changes can't be pushed through by some appointed authority without overwhelming majority from all involved parties, you don't need to worry about this ability to drastically change being unfairly pushed upon you.
Lightning transactions will change all of this. By the time we are talking about large lightning transaction commits, we'll be talking about 3rd layer solutions. Bitcoin could be at a reserve currency level, where individual transactions are significant.
If the transaction fees aren't high enough to support the current level of mining them some (but not all) miners will drop out (and the "difficulty" will adjust to compensate).
The result is transactions will continue to be processed, but the overall security of the network will be lower.
I recommend people take a look at the satoshi emails
https://pastebin.com/Na5FwkQ4 https://pastebin.com/cKZPC1rF https://pastebin.com/wA9Jn100 https://pastebin.com/JF3USKFT https://pastebin.com/syrmi3ET
Confirmed to be real by Mike Hearn Himself
https://www.reddit.com/r/btc/comments/6t2ci2/never_before_se...
take what this user is saying with a huge grain of salt as I see he has an agenda based on his other comments in this thread. Read the e-mails and decide for yourself.