Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 7 Next »

Goal

The goal of the project is to implement and integrate a pluggable Consensus Interface for Hyperledger Iroha. Achieving this goal will increase the modularity of Iroha by giving the opportunity to use different consensus algorithms.

Project Scope

  • Hyperledger Sawtooth already supports dymanic consensus and has support for lottery and voting based algorithms. The aim is to consider a similar implementation for Hyperledger Iroha.
  • In Iroha transactions pass through two interfaces of consensus: Ordering Service and YAC block consensus. Therefore both need to be replaced with the consensus interface. 
  • Implementation of a YAC component for the new Consensus Interface.
  • Consider any architectural changes in Iroha to support this Interface.

Deliverables

  • Consensus Interface for the block consensus
  • Consensus Interface for the ordering service
  • YAC component for the Consensus Interface
  • A guide for implementing a consensus component

Project Timeline

Week 1-3

  • Understand how Conensus works in Hyperledger Sawtooth.
  • Get familiar with Hyperledger Iroha Implementation.

Week 3-6

  • Implement Interface for Communication with Sawtooth Consensus Engine.

Week 6-9

  • Implement the P2P Network Consensus Interface.
  • Update the Ordering Service to Gossip.

Week 9-12

  • Implement the Block Creation Component.
  • Implement the Block Validation Component.
  • Implement the Block Commit.

Methodology

  • Quarter basis review according to Hyperledger Internship Programme schedule.
  • Internal communication and updates with the mentors using Telegram.
  • After every implementation, writing tests and testing.
  • No labels