News for hackers. Stuff that matters.
Re:Lightning Network Skepticism by maaku on Saturday December 26, 2015 @12:20AM (#10793369)
> If you knew anything about Bitcoin Unlimited I am sure you would have come across its most fundamental aspect - moving the blocksize limited from the hardcoded centralised protocol layer to the transport or messaging layer thus allowing each node operator to choose the limit in a decentralised fashion so creating an emergent consensus.

If you knew anything about Bitcoin, you'd know that this is a sure-fire way to get forked off the network and ripped off by double-spends. The nature of Nakamoto consensus is such that consensus parameters are not up to vote.

Re:Lightning Network Skepticism by aback on Saturday December 26, 2015 @10:42AM (#10794323)
> The nature of Nakamoto consensus is such that consensus parameters are not up to vote.

One of two things must therefore be true:

1. If consensus parameters cannot be voted on then Bitcoin is a failure, and Core's huge war against upstarts like XT and BU are totally misplaced (since as you say they cannot be changed by vote) or

2. You're dead wrong

If consensus parameters are not up to vote then obviously XT simply cannot be "voted in", so why fight it?

If consensus parameters are not up for a vote then Bitcoin loses permissionlessness and censorship resistance: a hostile actor merely needs to infiltrate the governance structure of one ragtag dev team and he can block certain transactions or indeed greatly harm the network by inserting consensus code to keep undesirable txns out or by making the rules unworkable. Since nobody can vote the bad rules out, the network just has to accept the bad rules and implode.

If consensus rules cannot be voted on then permissionless innovation of the system is thwarted or impossible. If I have a great idea for a consensus rule innovation, I have to get permission from the keepers of the consensus rules to add my rule change.

If consensus rules are not up for vote then if a supermajority of users including miners attempt to change the rules by running different rules, nothing will happen, because the rules "weren't up to vote." But it is objectively the case that if this were to happen, then the rules would be changed because a majority of voters agreed with the change. This is the defacto behavior of Bitcoin.

Methinks that #2 is the case. Consensus rules, as a simple matter of fact, are amenable to change by a simple supermajority of CPU votes from a majority of miners and nodes.

Re:Lightning Network Skepticism by dgenr8 on Saturday December 26, 2015 @01:34PM (#10794790)
> 1. If consensus parameters cannot be voted on then Bitcoin is a failure, and Core's huge war against upstarts like XT and BU are totally misplaced (since as you say they cannot be changed by vote)

Eagerly awaiting a substantive response to this by maaku.

However I disagree with the BU proposition that unrestrained "voting" on max blocksize is a good idea. It doesn't stand up to attacks by a small amount of hash power.

Re:Lightning Network Skepticism by kanzure on Saturday December 26, 2015 @02:37PM (#10794983)
> > 1. If consensus parameters cannot be voted on then Bitcoin is a failure

> Eagerly awaiting a substantive response to this by maaku.

I am very much not maaku, but first it's obvious that Proof-of-Work has not been used to decide consensus protocol parameters (it's used for transaction ordering and establishing the consensus history). Second, Bitcoin success or failure is entirely unrelated to how the protocol wasn't designed to vote on consensus protocol parameters.

Re:Lightning Network Skepticism by aback on Sunday December 27, 2015 @12:00AM (#10796478)
Of course proof of work has always been used to decide consensus parameters. It's just tuat no controversial changes / failures to change have ever been put to the vote.

As long as the changes are non controversial then miners and nodes simply act at a rubber stamp. But it's unrealistic to think no important issues will be controversial.

If consensus changes arent up for CPU vote, then you tell me what happens if a supermajority of miners and nodes decide to run software with different consensus rule from Core? Sounds like a CPU vote too me.

Re:Lightning Network Skepticism by dontbelieveyou on Saturday December 26, 2015 @03:04PM (#10795076)
> it's obvious that Proof-of-Work has not been used to decide consensus protocol parameters

Every "soft-fork" to date has used PoW to activate new consensus rules by requiring block version super-majority.

Re:Lightning Network Skepticism by kanzure on Saturday December 26, 2015 @04:28PM (#10795367)
> Every "soft-fork" to date has used PoW to activate new consensus rules

Consensus rule parameters are things like "max block size". However, there have been some proposals for extension blocks to increase block size without requiring a hard-fork (e.g. using a soft-fork mechanism).

Re:Lightning Network Skepticism by maaku on Saturday December 26, 2015 @11:26AM (#10794438)
You are free to read the code and see for yourself.
Re:Lightning Network Skepticism by aback on Saturday December 26, 2015 @12:34PM (#10794615)
It is my reading of the code and understanding of the emergent crypto-economy that leads me to these self-evident conclusions.

Are you refuting my points or agreeing with them? If you have an actual rebuttal to any of them, I'm interested in hearing it.

Re:Lightning Network Skepticism by dontbelieveyou on Saturday December 26, 2015 @12:34AM (#10793393)
> The nature of Nakamoto consensus is such that consensus parameters are not up to vote

"The proof-of-work also solves the problem of determining representation in majority decision making. If the majority were based on one-IP-address-one-vote, it could be subverted by anyone able to allocate many IPs. Proof-of-work is essentially one-CPU-one-vote." - Nakamoto

Re:Lightning Network Skepticism by kanzure on Saturday December 26, 2015 @02:39PM (#10794990)
> "Proof-of-work is essentially one-CPU-one-vote." - Nakamoto

Yes this is one of the things that Satoshi got wrong. "1 CPU = 1 vote" is wrong. Turns out that Proof-of-Work is unrelated to the physical quantity of CPUs, rather it's more about computation and hashrate. Also it's a stretch to call Proof-of-Work a vote ..... it's not an election, it's more like a random lottery or something.

Re:Lightning Network Skepticism by dontbelieveyou on Saturday December 26, 2015 @03:12PM (#10795108)
He stated PoW was _essentially_ one-CPU-one-vote. It's clear that the intent is to mean hashrate, or CPU power as he phrases it multiple times in the same paper.

> it's not an election, it's more like a random lottery or something.

A random lottery where your odds of winning directly correlate with your CPU power / hashrate. The more you win the more influence you have over the state of the network. Comparing it to a vote is a reasonable analogy.

Re:Lightning Network Skepticism by maaku on Saturday December 26, 2015 @12:44AM (#10793411)
Not over the consensus parameters. You could have infinite hash power, but if your blocks are invalid they will be ignored.
Re:Lightning Network Skepticism by dontbelieveyou on Saturday December 26, 2015 @12:59AM (#10793442)
Re:Lightning Network Skepticism by maaku on Saturday December 26, 2015 @01:06AM (#10793449)
Um, I'm not sure why you are pointing to that? ISM is used for soft-fork upgrades, which do not revert existing consensus rules. You can have a ISM vote over a new block size, but old clients will still reject the bigger blocks.
Re:Lightning Network Skepticism by dontbelieveyou on Saturday December 26, 2015 @01:22AM (#10793471)
The upgrades are triggered by a super-majority of blocks of a certain version. This version maps to a possible new consensus rule. Block creation is a product of computational work. Therefore there is a precedent for CPUs/ASICs voting on the consensus rules of the system.

> ISM is used for soft-fork upgrades, which do not change existing consensus rules.

"Soft-forks" do change existing consensus rules. Will a miner's v1 blocks be accepted by the majority of the network today?

Re:Lightning Network Skepticism by maaku on Saturday December 26, 2015 @01:56AM (#10793519)
Which has no relevance to this conversation about BU and block size. Block size is not a parameter you can force on upgraded nodes by soft-fork.
Re:Lightning Network Skepticism by dontbelieveyou on Saturday December 26, 2015 @02:15AM (#10793545)
You made the claim that under "Nakamoto consensus" the consensus parameters are not up for a vote. A correction seemed warranted.

> Block size is not a parameter you can force on upgraded nodes by soft-fork.

Isn't this what the Segregated Witness proposal[1] effectively does? The new limit proposed would be 4MB with an expected confirmed transaction throughput increase on the order of 2x.

To quote Pieter:

"Another way of looking at it, is that we raise the block size to 4 MB for the witness part, but the non-witness has same size."

[1] http://diyhpl.us/wiki/transcripts/scalingbitcoin/hong-kong/s...

Re:Lightning Network Skepticism by aback on Saturday December 26, 2015 @10:51AM (#10794345)
"If"

And if they are not?

Re:Lightning Network Skepticism by linhares on Saturday December 26, 2015 @12:46PM (#10794645)
double-spend is now a feature, it's called rbf.