Pieter Wuille [ARCHIVE] on Nostr: 📅 Original date posted:2013-06-10 📝 Original message:On Mon, Jun 10, 2013 at ...
📅 Original date posted:2013-06-10
📝 Original message:On Mon, Jun 10, 2013 at 10:14 AM, Melvin Carvalho
<melvincarvalho at gmail.com> wrote:
> However, Bitcoin's fundamental philosophy was one CPU one vote.
This is perhaps the largest misconception that keeps being repeated.
Bitcoin is not a democracy; it is a zero-trust system. The rules are
set in stone, and every full node verifies all rules and must
independently come to the same result as everyone else. Obviously, if
everyone changes their software, anything can change, but from within
the system there is no way to change which blocks are considered
valid, and there is certainly no voting mechanism about that.
What is voted about, is the one single thing that cannot be decided by
each node individually: namely the order of otherwise valid and
non-conflicting transactions, and that's just because it's a
necessity. Because deciding the order includes delaying transaction
potentially indefinitely, a majority of miners can indeed choose the
enforce an additional rule about which transactions are considered
valid, but the rules implemented in full nodes do not change without
changing the software. For example, miners cannot decide to raise the
block subsidy, even if every single miner out there would want that.
They'd just end up being ignored by everyone else.
> Voting is easily gamed. While this may work in one particular case, it is
> perhaps a bad precedent to set. Establishing methods of voting can lead to
> single points of failure.
The problem is that at some point, you have to look at the system from
a higher level than just the technical part. And because ultimately
the possibility exists where everyone changes their software, and
there is an exceedingly high incentive for consensus (a deliberate
hard-fork where two groups of users decide to use different and
incompatible rules, aware of eachother, is suicide for the system, in
my opinion). This results in the fact that proposed changes can indeed
become new adopted hard rules in the system, and I don't think there's
anything that can be done about it. Bitcoin is a consensus system - at
the technical level - but also a consensus of the people using it, and
ultimately they decide the rules.
> Unless there's a very good reason not to, e.g. miners are clearly abusing
> the system, we should stick with 1 CPU one vote.
So you're saying that instead of a zero-trust system, we should move
to a system where miners can decide _everything_ - as opposed to just
being in charge of ordering transactions? I don't think you understand
the system at all, if that is what you're proposing.
--
Pieter
Published at
2023-06-07 15:03:06Event JSON
{
"id": "38d36cd46905459f22389b5971ead3ece0a7d03029ddf85882ced1e5189baf0c",
"pubkey": "5cb21bf5d7f25a9d46879713cbd32433bbc10e40ef813a3c28fe7355f49854d6",
"created_at": 1686150186,
"kind": 1,
"tags": [
[
"e",
"9c65e0538c0c65dd524896d67b9a9f484c5068051e57f2d48f8752479be057b1",
"",
"root"
],
[
"e",
"1a155ad7763addbae98acf3ce516ab001b5cfd423d64f98e430241d5253081a5",
"",
"reply"
],
[
"p",
"e316966328c4cb66c34719ef9a7b3bc54ef601663ad4ab06185991237735aa19"
]
],
"content": "📅 Original date posted:2013-06-10\n📝 Original message:On Mon, Jun 10, 2013 at 10:14 AM, Melvin Carvalho\n\u003cmelvincarvalho at gmail.com\u003e wrote:\n\u003e However, Bitcoin's fundamental philosophy was one CPU one vote.\n\nThis is perhaps the largest misconception that keeps being repeated.\nBitcoin is not a democracy; it is a zero-trust system. The rules are\nset in stone, and every full node verifies all rules and must\nindependently come to the same result as everyone else. Obviously, if\neveryone changes their software, anything can change, but from within\nthe system there is no way to change which blocks are considered\nvalid, and there is certainly no voting mechanism about that.\n\nWhat is voted about, is the one single thing that cannot be decided by\neach node individually: namely the order of otherwise valid and\nnon-conflicting transactions, and that's just because it's a\nnecessity. Because deciding the order includes delaying transaction\npotentially indefinitely, a majority of miners can indeed choose the\nenforce an additional rule about which transactions are considered\nvalid, but the rules implemented in full nodes do not change without\nchanging the software. For example, miners cannot decide to raise the\nblock subsidy, even if every single miner out there would want that.\nThey'd just end up being ignored by everyone else.\n\n\u003e Voting is easily gamed. While this may work in one particular case, it is\n\u003e perhaps a bad precedent to set. Establishing methods of voting can lead to\n\u003e single points of failure.\n\nThe problem is that at some point, you have to look at the system from\na higher level than just the technical part. And because ultimately\nthe possibility exists where everyone changes their software, and\nthere is an exceedingly high incentive for consensus (a deliberate\nhard-fork where two groups of users decide to use different and\nincompatible rules, aware of eachother, is suicide for the system, in\nmy opinion). This results in the fact that proposed changes can indeed\nbecome new adopted hard rules in the system, and I don't think there's\nanything that can be done about it. Bitcoin is a consensus system - at\nthe technical level - but also a consensus of the people using it, and\nultimately they decide the rules.\n\n\u003e Unless there's a very good reason not to, e.g. miners are clearly abusing\n\u003e the system, we should stick with 1 CPU one vote.\n\nSo you're saying that instead of a zero-trust system, we should move\nto a system where miners can decide _everything_ - as opposed to just\nbeing in charge of ordering transactions? I don't think you understand\nthe system at all, if that is what you're proposing.\n\n-- \nPieter",
"sig": "76e526eb41d8912041628b3bca7dd0f5d655a63c3528003ef32c87180deacd57c6ed3741a66f020c0751e9be79884252d36bb2671ec198110d24ab8b1fd37af9"
}