Defining a Consensus Quorum Set

The quorum_set section of the network.toml defines which nodes you trust. The quorum set is used to determine whether a sufficient set of nodes in the network agree on a value for you to also cast a vote in agreement. This is the process of solving the Byzantine Agreement Problem.

The quorum_set is a recursive structure which includes the following for each set:

Example Quorum Sets

Two-of-three simple majority:

quorum_set = { threshold = 2, members = [
  { type = "Node", args = "peer1.test.mobilecoin.com:443" },
  { type = "Node", args = "peer2.test.mobilecoin.com:443" },
  { type = "Node", args = "peer3.test.mobilecoin.com:443" },
] }

Two-of-three, where one member is an InnerSet quorum set:

quorum_set = { threshold = 2, members = [
  { type = "Node", args = "peer1.test.mobilecoin.com:443" },
  { type = "Node", args = "peer2.test.mobilecoin.com:443" },
  { type = "InnerSet", args = { 
      threshold: 2,
      members = [
         { type = "Node", args = "peer3.test.mobilecoin.com:443" },
         { type = "Node", args = "peer4.test.mobilecoin.com:443" },
         { type = "Node", args = "peer5.test.mobilecoin.com:443" },
     ]}
   }
] }

Last updated