We will build a network of six nodes. The first four will be validators and the other two will be non-validators. We will not add a constellation in this network. If you want to add one, the instructions are the same as previously.
In IBFT, every validator is identified uniquely using an Ethereum account derived from its node key. Similar to Raft, in IBFT, before setting up the network you have to decide on the total number of validators that will be in the network and then generate an enode for each. And then, we create a static-nodes.json
file listing the enodes of all the validating nodes, and feed this file to every validator in the network. After that, derive Ethereum addresses from the node IDs. And finally, we construct the extraData
field and create the genesis
file.