From b5d91e0a287773b9c987728c4f1ecfe87df6dcfc Mon Sep 17 00:00:00 2001 From: MadelineMurray <43356962+MadelineMurray@users.noreply.github.com> Date: Wed, 13 Mar 2019 10:13:47 +1000 Subject: [PATCH] Added IBFT 1.0 (#1081) Signed-off-by: Adrian Sutton --- docs/Consensus-Protocols/IBFT.md | 2 +- .../Consensus-Protocols/Overview-Consensus.md | 19 +++++++++++++-- docs/Consensus-Protocols/QuorumIBFT.md | 23 +++++++++++++++++++ mkdocs.yml | 1 + 4 files changed, 42 insertions(+), 3 deletions(-) create mode 100644 docs/Consensus-Protocols/QuorumIBFT.md diff --git a/docs/Consensus-Protocols/IBFT.md b/docs/Consensus-Protocols/IBFT.md index 64e7987ada..fd14bc0b46 100644 --- a/docs/Consensus-Protocols/IBFT.md +++ b/docs/Consensus-Protocols/IBFT.md @@ -51,7 +51,7 @@ Properties that have specific values in IBFT 2.0 genesis files are: * `difficulty` - `0x1` * `mixHash` - `0x63746963616c2062797a616e74696e65206661756c7420746f6c6572616e6365` for Istanbul block identification. -To start a node on an IBFT 2.0 private network, use the [`--genesis-file`](../Reference/Pantheon-CLI-Syntax.md#genesis-file`) option to specify the custom genesis file. +To start a node on an IBFT 2.0 private network, use the [`--genesis-file`](../Reference/Pantheon-CLI-Syntax.md#genesis-file) option to specify the custom genesis file. !!!note The [`--genesis-file`](../Reference/Pantheon-CLI-Syntax.md#genesis-file) option is not used when running diff --git a/docs/Consensus-Protocols/Overview-Consensus.md b/docs/Consensus-Protocols/Overview-Consensus.md index 76681d1a93..f051d46fae 100644 --- a/docs/Consensus-Protocols/Overview-Consensus.md +++ b/docs/Consensus-Protocols/Overview-Consensus.md @@ -11,7 +11,9 @@ Pantheon implements a number of consensus protocols: * [IBFT 2.0](IBFT.md) (Proof of Authority) -The genesis file specifies the consensus protocol for a chain `config`: +* [Quorum IBFT 1.0](QuorumIBFT.md) (Proof of Authority) + +The genesis file specifies the consensus protocol for a chain in the `config` property: ```json tab="Ethash" { @@ -47,4 +49,17 @@ The genesis file specifies the consensus protocol for a chain `config`: }, ... } -``` \ No newline at end of file +``` + +```json tab="IBFT 1.0" +{ + "config": { + .... + "ibft": { + ... + } + }, + ... +} +``` + diff --git a/docs/Consensus-Protocols/QuorumIBFT.md b/docs/Consensus-Protocols/QuorumIBFT.md new file mode 100644 index 0000000000..d9637dbaeb --- /dev/null +++ b/docs/Consensus-Protocols/QuorumIBFT.md @@ -0,0 +1,23 @@ +description: Pantheon consensus protocols + + +# IBFT 1.0 + +Pantheon nodes can participate (submit transactions and receive blocks) in a Quorum [IBFT 1.0](https://github.com/ethereum/EIPs/issues/650) +network but cannot be a validator. + +To connect to a Quorum IBFT 1.0 network: + +1. In the Quorum IBFT 1.0 genesis file, update the consensus protocol specified in the `config` property +from `istanbul` to `ibft`: + + ```json + "config": { + ... + "ibft": { + ... + } + ``` + +1. Use the [`--genesis-file`](../Reference/Pantheon-CLI-Syntax.md#genesis-file) option to specify the +IBFT 1.0 genesis file. \ No newline at end of file diff --git a/mkdocs.yml b/mkdocs.yml index b83fd77ea0..b3d5b547b5 100644 --- a/mkdocs.yml +++ b/mkdocs.yml @@ -61,6 +61,7 @@ nav: - Comparing PoA Consensus Protocols: Consensus-Protocols/Comparing-PoA.md - Clique: Consensus-Protocols/Clique.md - IBFT 2.0: Consensus-Protocols/IBFT.md + - Quorum IBFT 1.0: Consensus-Protocols/QuorumIBFT.md - JSON-RPC API: - Overview: JSON-RPC-API/JSON-RPC-API.md - Using the JSON-RPC API: JSON-RPC-API/Using-JSON-RPC-API.md