4 ms·
What? There is consensus on the public blockchain every few seconds + block depth. It's called Nakamoto consensus, so yes blockchain 'solves' the problem. In s
by zero-x 9y ago
What? There is consensus on the public blockchain every few seconds + block depth. It's called Nakamoto consensus, so yes blockchain 'solves' the problem.
In smaller chains, there can certainly be consensus, it just won't be as trusted as a public chain and 51% attacks are potentially more feasible due to it having a smaller economic barrier.
- dozzie 9y ago> What? There is consensus on the public blockchain every few seconds + block depth. It's called Nakamoto consensus, so yes blockchain 'solves' the problem. It's a name used for Bitcoin's protocol. It doesn't mean it's consensus. How does the established value by this "consensus" protocol look like? And why do you consider it established, when other participants can have a totally different view of the list of documents in the protocol, or your view can change completely with next message? How is it an agreed value? And at what point should we look at the views of two different participants to see the same value? And how does it relate to Lamport's original publication about the consensus problem?
- zero-x 9y agoThe established value of the consensus is the transactions contained within the block. It's established because it's what the network accepted, regardless of individual node states. That's the point, one should not have to consider the values of other nodes to reach consensus. If the network agrees on something, that's consensus. If a certain node doesn't, that's their problem. It's agreed because that miner solved the block problem first. If you have a different view, you must fix it. This is how it achieves consensus. Not sure what specific consensus problem Nakamoto consensus doesn't solve, but it does provide a consensus based on the specific rules of the network. So yes, it's a consensus system. You might want to be contrarian and dispute what consensus means to you. But that's what it means to to the miners and that's what matters.
- dozzie 9y ago> The established value of the consensus is the transactions contained within the block. Which of them? Because every node has a slightly different view and doesn't know how it differs from anybody else's view. > That's the point, one should not have to consider the values of other nodes to reach consensus. If the network agrees on something, that's consensus. If a certain node doesn't, that's their problem. The problem is that every node has slightly different view. You can't tell "this is the agreed value", because no particular node has this value as its state. Yet somehow it emerges as network's agreed value? By what means (algorithm) anybody can take a list of transactions and say "this is the network's agreed value"? Not to mention that the list of transactions constantly changes, you didn't address the problem that agreed value requires the protocol to terminate first. > It's agreed because that miner solved the block problem first. If you have a different view, you must fix it. This is how it achieves consensus. In what way is "solve block problem" consensus? > Not sure what specific consensus problem Nakamoto consensus doesn't solve, Yes, this is typical problem with blockchain enthusiasts. They're usually too uneducated and don't know the fundamentals, like the definition of consensus problem. I pointed you to Byzantine generals paper already, it should have been easy to find even with just "consensus problem Lamport" keywords.
- zero-x 9y agoJust because it doesn't fit into your contrarian view on consensus it doesn't mean it doesn't provide consensus. Nakamoto consensus solves the Byzantine problem quite well. The list of transactions doesn't not constantly change? Are you saying there is no consensus as to the value of the first blocks? I get that it's cool to be contrarian and it makes people feel smart to badmouth blockchain. But Nakamoto consensus does reach a consensus on value that is accepted by the network. It's like saying a voting election didn't matter because certain people didn't participate.
- dozzie 9y ago> Just because it doesn't fit into your contrarian view on consensus it doesn't mean it doesn't provide consensus. You do realize that this "my contrarian view" is what computer science calls "the consensus problem", right? And that "my contrarian view" comes from a highly regarded publication that's thirty years old? > Nakamoto consensus solves the Byzantine problem quite well. Explain to me how. Byzantine generals problem comes with a rigorous proof that network cannot agree on a single value if the cooperating nodes don't outnumber the adversarial ones by more than 2:1. The blockchain guarantees its functions with merely 50% + 1 of cooperating nodes. Something doesn't add up if blockchain was intended to solve consensus problem. > I get that it's cool to be contrarian and it makes people feel smart to badmouth blockchain. Oh, but I don't badmouth blockchain. I think it's quite ingenious cryptosystem. I only badmouth blockchain enthusiasts, and the undereducated ones at that. Blockchain was never intended to be a consensus protocol, it was always a timestamping protocol. We had a number of those before, but blockchain is the first one that doesn't use trusted third party. This is the ingenuity of blockchain, not consensus that blockchain doesn't solve. And then the idea behing Bitcoin, that a digital cash protocol (of which we had some number before, too) can be built on top of published and timestamped transactions, which together form a ledger. This is smart as well. But it's still not a consensus protocol. > But Nakamoto consensus does reach a consensus on value that is accepted by the network. Despite that nobody can tell what value exactly was agreed upon? And despite that you can't designate any specific point in time that the agreement is reached? I fail to see how is this "consensus".