From 6558c2c89f4e6e8750e950f813134797f84c828a Mon Sep 17 00:00:00 2001 From: Corey Petty Date: Fri, 28 Oct 2022 16:08:43 -0400 Subject: [PATCH] updated LogosBFT overview page --- .../consensus/candidates/logos-bft/FAQ.md | 2 +- .../candidates/logos-bft/overview.md | 31 ++++++++++++++++--- 2 files changed, 27 insertions(+), 6 deletions(-) diff --git a/content/roadmap/consensus/candidates/logos-bft/FAQ.md b/content/roadmap/consensus/candidates/logos-bft/FAQ.md index b4893a0ed..618db8c4a 100644 --- a/content/roadmap/consensus/candidates/logos-bft/FAQ.md +++ b/content/roadmap/consensus/candidates/logos-bft/FAQ.md @@ -22,7 +22,7 @@ openToc: true ## Network Scale ### What is our expected minimum number of nodes within the network? - Dmitriy -> For a small number of nodes we can have just a single committee. But I am not sure how many nodes will join our network +> `Moh:` For a small number of nodes we can have just a single committee. But I am not sure how many nodes will join our network ## Byzantine Behavior diff --git a/content/roadmap/consensus/candidates/logos-bft/overview.md b/content/roadmap/consensus/candidates/logos-bft/overview.md index 806977687..0cb3109e5 100644 --- a/content/roadmap/consensus/candidates/logos-bft/overview.md +++ b/content/roadmap/consensus/candidates/logos-bft/overview.md @@ -7,12 +7,33 @@ tags: editor: "Corey Petty" --- -Logos BFT is a [consensus](/consensus/index.md) candidate for the Logos Network that utilizes [Network Coding](https://en.wikipedia.org/wiki/Linear_network_coding) and [Committees](#) to optimize message propagation in the presence of a large number of nodes, while maintaining a high level of security. +Logos BFT is a [consensus](/consensus/index.md) candidate for the Logos Network that utilizes Fountain Codes and a committees tree structure to optimize message propagation in the presence of a large number of nodes, while maintaining high througput and fast finality. - [FAQ](roadmap/consensus/candidates/logos-bft/FAQ.md): Here is a page that tracks various questions people have around LogosBFT. ## Work Streams -- [Committee Formation](committee-formation.md) -- [Random Beacon](random-beacon.md) -- [Message Dissemination](message-dissemination.md) -- [Leader Election](leader-election.md) + +### Current State of the Art +An ongoing survey of the current state of the art around Consensus Mechanisms and their peripheral dependencies is beign conducted by Tuanir, and can be found in the following WIP Overleaf document: +- [WIP Consensus SoK](https://www.overleaf.com/project/633acc1acaa6ffe456d1ab1f) + +### Committee Overlay Structure +The basis of LogosBFT is dependent upon establishing an committee overlay tree structure for message distribution. + +An overview video can be found in the following link: +- [LogosBFT Overview by Moh during Offsite](https://drive.google.com/file/d/17L0JPgC0L1ejbjga7_6ZitBfHUe3VO11/view?usp=sharing) + +The details of this are being worked on by Moh and Alexander and can be found in the following overleaf documents: +- [Moh's newer draft](https://www.overleaf.com/project/6341fb4a3cf4f20f158afad3) +- [Moh's original draft](https://www.overleaf.com/read/rhtnjxtjqnhp) +- [Alexander's notes on the statistical properties of committees](https://www.overleaf.com/project/630c7e20e56998385e7d8416) + +### Random Beacon +A random beacon is required to choose a leader and establish a seed for defining the overlay tree. Marcin is working on the various avenues. His previous presentations can be found in the following presentation slides: +- [Intro to Multiparty Random Beacons](https://cloud.logos.co/index.php/s/b39EmQrZRt5rrfL) +- [Circles of Trust](https://cloud.logos.co/index.php/s/NXJZX8X8pHg6akw) +- [Compact Certificates of Knowledge]() - To be linked + +### Erasure Coding (LT Codes / Fountain Codes / Raptor Codes) +In order to reduce message complexity during propagation, we are investigating the use of Luby Transform (LT) codes, more specifically [Fountain Codes](https://en.wikipedia.org/wiki/Fountain_code), to break up the block to be propagated to validators and recombined by local peers within a committee. +- [LT Code implementation in Rust](https://github.com/chrido/fountain) - unclear about legal status of LT or Raptor Codes, it is currently under investigation. \ No newline at end of file