No, its really not. It is literally just a puzzle which solves the "problem" as to who gets to write the next block.
Instead if you define the rules for the next block as strict as possible so it essentially eliminates a huge variety of possible blocks, participants can instead easily agree on one (the best) block (one that follows all rules and is objectionably better than all other possible blocks). There is no need to "fight" over who can add that block, agreeing is way more efficient. And Consequentially the puzzle is no longer needed.
PoS is not what I'm talking about at all. PoS just replaces the PoW puzzle with a "virtual puzzle" that acts as if higher stakes are higher hash power thus more chance to win the puzzle. Other than that its still the same "fight" over who gets to write the next block.
PoW and PoS at scale leads to more centralization over time because of the economy of scale principle. While FBA (Federated Byzantine Agreement) leads to more decentralization because its in everyones interest to increase the number of participants, they are helping the system not competing.
So you make your objective rules as to what is the best block by defining some measure of quality (maybe include the most transactions that fit in, maybe sorted by fee-per-byte or so).
Now all the good nodes agree on the next block B1 and then start working on B2 (not much work to do, because no PoW, but whatever, they build the next block B2.) Meanwhile, evil actor Eve has transferred a lot of money in B1 to Alice, and received something worthwhile. Now she makes an alternative block B1', transferring the money to her friend Bob instead of Alice, where B1' has even higher quality (higher fee, say), and quickly creates B2' and then B3'.
How is a new node coming in to decide between the chain B1->B2, and the chain B1'->B2'->B3'? The latter chain is longer and has higher quality.
There is no block 2 created if block 1 is not final. Once consensus is reached on what is in B1 it doesn't matter anymore if someone comes around with a different idea what should be in B1. So by the time the nodes "debate" over B2, Alice has the money and its final. There can not be a double spend with time delay in between because the second transaction ties to move already moved funds so its objectively invalid.
A double spend would need to happen in the same block but all transaction are ordered sequentially so the second one will fail anyway as it still tries to moved funds that are already moved.
The nodes just have to agree on one, it doesn't matter which one. If someone internationally tries to send the same funds to Bob an Alice he's just flipping a coin as to who will get it. Alice doesn't care and Bob doesn't care either. They only care about it being final if they see the funds in their account. And the rest of the network doesn't care that Eve is being a bit silly and wants a "decentral coin flip" to decide where the money goes.
> Once consensus is reached on what is in B1 it doesn't matter anymore if someone comes around with a different idea what should be in B1.
So, when a new node comes online, and some of the existing nodes say that they've agreed on B1 and B2, and some other nodes say that they've agreed on B1' and B2', how does that new node decide which is the consensus? [0] With PoW, the decision criterion is easy: the longest chain rule (LCR) [1]. In your system, what's the rule?
[0] This is trivial with a central authority. But remember, here we have an open public blockchain, where anyone can join as a node, and they might be malicious.
[1] And as long as there are competing chains of equal length, just pick one randomly. That procedure, rather than picking the first one encountered, improves resistance to the selfish mining attack, IIRC
Well there are no second or different options in reality. Since it can only fork intentionally you will only have the one chain that everyone uses unless there is an intentional fork but then the networks are separated and you pick the one you want. But to answer the question theoretically, it simply boils down to which one you choose.
A new node MUST choose the chain he wants to join and he does so by selecting the nodes he want to connect to. From all the nodes he selects over 80% (hard coded quorum in the code) must be on the same chain if not his node will be in a state where it can not reach consensus and it will force the owner to remove/add nodes until the quorum can be reached.
> the longest chain rule (LCR) [1]. In your system, what's the rule?
There is no direct equivalent to the longest chain rule because blocks are final on every chain. There is no "chain switching" possible (that would directly contradict finality). Instead the system is made so that forks dont happen. The system will produce empty blocks rather than fork if the 80% quorum can not be reached (for example if huge parts of the world are temporary discontented from each-other).
So any actual fork would need to be intentional and thus actually produce 2 immutable chains in 2 different networks with finality. Nodes wont be able to switch between these chains, the intentional fork separates the network. If a nodes wants to switch later on that is the equivalent of turning it off and starting a new one on the other chain.
BTW this is not MY system its been implemented multiple times with the oldest running since 9+ years [1].
It has never forked so this is not an actual problem in the real world. Dude to the quorum of 80% every change (in the code) goes trough an amendment process and will only ever get activated if it has 80% support. If a node is overruled it still is on the same chain. Unless the owner refuses to update in time then his node becomes incompatible with the rest and is ignored.
[1]The oldest running distributed ledger ("blockchain") that uses this system is the XRPL.
You can read about its consensus mechanism on xrpl.org/intro-to-consensus.html and xrpl.org/consensus-network.html
There are ofc many other projects that build upon the same principles.
Its trustless in the sense that you yourself can apply the rules and verify that each block follows the public rules.
The "agreeing" is only within the rules and the rules are in the code.
So you have to trust (or verify) that the code actually does implement the rules the way you want them to be.
Instead if you define the rules for the next block as strict as possible so it essentially eliminates a huge variety of possible blocks, participants can instead easily agree on one (the best) block (one that follows all rules and is objectionably better than all other possible blocks). There is no need to "fight" over who can add that block, agreeing is way more efficient. And Consequentially the puzzle is no longer needed.
PoS is not what I'm talking about at all. PoS just replaces the PoW puzzle with a "virtual puzzle" that acts as if higher stakes are higher hash power thus more chance to win the puzzle. Other than that its still the same "fight" over who gets to write the next block.
PoW and PoS at scale leads to more centralization over time because of the economy of scale principle. While FBA (Federated Byzantine Agreement) leads to more decentralization because its in everyones interest to increase the number of participants, they are helping the system not competing.