Skip to main content
added 868 characters in body
Source Link
lungj
  • 6.7k
  • 2
  • 18
  • 45

In a majority-of-nodes agree situation, that is an attempt to reach a decision. One cannot have more than n nodes in agreement (since there are only n in the network). This is to ensure things like making sure the network is working (no split-brain) and that there is redundancy in case of node-specific errors. In the space shuttle, for example, the hope is that the same bug does not affect multiple systems (NASA has different companies produce code to meet the same specification, like geth and Parity) and that at least one sensor of a particular type is working. A majority is used to break ties. Preferably, all nodes are in agreement.

In the 50 (or whatever number is chosen - often 6 for Bitcoin), it's assumed the nodes are (usually) in consensus and it's a matter of how long the nodes have been in consensus, measured in terms of blocks (confirmations) which is a proxy for amount of work required to undo a transaction/probability of reversing the transaction. The more confirmations (this can be infinite), the higher the probability the transaction is permanent. It is theoretically possible for the Ethereum network to soft fork and fracture into many parts, each with 50 confirmations. However, this is unlikely in normal situations. At the current network size, natural splits of length more than three or four are probably fairly rare when a node is working properly.

In summary, 51% agreement is for redundancy and/or availability; it measures agreement and "faultiness". Block confirmations are for transaction finality and is a proxy for cost for an attacker to undo (or random chance).

In a majority-of-nodes agree situation, that is an attempt to reach a decision. One cannot have more than n nodes in agreement (since there are only n in the network). This is to ensure things like making sure the network is working (no split-brain) and that there is redundancy in case of node-specific errors.

In the 50 (or whatever number is chosen - often 6 for Bitcoin), it's assumed the nodes are (usually) in consensus and it's a matter of how long the nodes have been in consensus, measured in terms of blocks (confirmations) which is a proxy for amount of work required to undo a transaction/probability of reversing the transaction. The more confirmations (this can be infinite), the higher the probability the transaction is permanent.

In a majority-of-nodes agree situation, that is an attempt to reach a decision. One cannot have more than n nodes in agreement (since there are only n in the network). This is to ensure things like making sure the network is working (no split-brain) and that there is redundancy in case of node-specific errors. In the space shuttle, for example, the hope is that the same bug does not affect multiple systems (NASA has different companies produce code to meet the same specification, like geth and Parity) and that at least one sensor of a particular type is working. A majority is used to break ties. Preferably, all nodes are in agreement.

In the 50 (or whatever number is chosen - often 6 for Bitcoin), it's assumed the nodes are (usually) in consensus and it's a matter of how long the nodes have been in consensus, measured in terms of blocks (confirmations) which is a proxy for amount of work required to undo a transaction/probability of reversing the transaction. The more confirmations (this can be infinite), the higher the probability the transaction is permanent. It is theoretically possible for the Ethereum network to soft fork and fracture into many parts, each with 50 confirmations. However, this is unlikely in normal situations. At the current network size, natural splits of length more than three or four are probably fairly rare when a node is working properly.

In summary, 51% agreement is for redundancy and/or availability; it measures agreement and "faultiness". Block confirmations are for transaction finality and is a proxy for cost for an attacker to undo (or random chance).

Source Link
lungj
  • 6.7k
  • 2
  • 18
  • 45

In a majority-of-nodes agree situation, that is an attempt to reach a decision. One cannot have more than n nodes in agreement (since there are only n in the network). This is to ensure things like making sure the network is working (no split-brain) and that there is redundancy in case of node-specific errors.

In the 50 (or whatever number is chosen - often 6 for Bitcoin), it's assumed the nodes are (usually) in consensus and it's a matter of how long the nodes have been in consensus, measured in terms of blocks (confirmations) which is a proxy for amount of work required to undo a transaction/probability of reversing the transaction. The more confirmations (this can be infinite), the higher the probability the transaction is permanent.