Differences
This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision Next revision Both sides next revision | ||
education [2019/11/01 13:27] seredins |
education [2019/11/02 10:48] seredins |
||
---|---|---|---|
Line 54: | Line 54: | ||
===== Collaborative Projects ===== | ===== Collaborative Projects ===== | ||
- | The lab is also collaborating with the industry and other labs at EPFL to offer interesting student projects motivated from real-world problems. With [[LARA||http://lara.epfl.ch]] and [[interchain.io|Interchain Foundation]] we have several projects: | + | The lab is also collaborating with the industry and other labs at EPFL to offer interesting student projects motivated from real-world problems. With [[http://lara.epfl.ch|LARA]] and [[interchain.io|Interchain Foundation]] we have several projects: |
- **[[https://dcl.epfl.ch/site/cryptocurrencies|AT2]]:** Integration of an asynchronous (consensus-less) payment system in the Cosmos Hub. | - **[[https://dcl.epfl.ch/site/cryptocurrencies|AT2]]:** Integration of an asynchronous (consensus-less) payment system in the Cosmos Hub. | ||
- | |||
- **[[https://github.com/cosmos/ics/tree/master/ibc|Interblockchain Communication (IBC)]]:** Protocols description (and optional implementation) for enabling the inter-operation of independent blockchain applications. | - **[[https://github.com/cosmos/ics/tree/master/ibc|Interblockchain Communication (IBC)]]:** Protocols description (and optional implementation) for enabling the inter-operation of independent blockchain applications. | ||
+ | - **[[http://stainless.epfl.ch|Stainless]]**: Implementation of Tendermint modules (consensus, mempool, fast sync) using Stainless and Scala. | ||
+ | - **[[https://github.com/viperproject/prusti-dev|Prusti]]:** Implementation of Tendermint modules (consensus, mempool, fast sync) using Prusti and the Rust programming language. | ||
+ | - **[[https://tendermint.com/docs/spec/reactors/mempool/functionality.html#mempool-functionality|Mempool]]** performance analysis and algorithm improvement. | ||
+ | - **Adversarial engineering:** Experimental evaluation of Tendermint in adversarial settings (e.g., in the style of [[http://jepsen.io/analyses/tendermint-0-10-2|Jepsen]]). | ||
+ | - **Testing**: Generation of tests out of specifications (TLA+ or Stainless) for the consensus module of Tendermint. | ||
+ | - **Facebook Libra comparative research**: Comparative analysis of consensus algorithms, specifically, between HotStuff (the consensus algorithm underlying [[https://cryptorating.eu/whitepapers/Libra/libra-consensus-state-machine-replication-in-the-libra-blockchain.pdf|Facebook's Libra]]) and Tendermint consensus. | ||
- | - **[[http://stainless.epfl.ch|Stainless]]**: Implementation of Tendermint modules (consensus, mempool, fast sync) using Stainless and Scala. | + | Contact [[adi@interchain.io|Adi Seredinschi]] (INR 327) if interested in learning more about these projects. |
- | - **[[|Prusti]]** implementation of modules in Tendermint (consensus, mempool, fast sync). | + | |
- | - Mempool performance analysis and algorithm improvement | + | |
- | - Experimental evaluation of Tendermint in adversarial settings (Jepsen++) | + | |
- | - Test generation out of spec (TLA+ or Stainless) for consensus module | + | |
- | - Using HotStuff trick to improve Tendermint | + | |
- | + | ||
- | [[education#collaborative projects|test link]] | + |