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 2 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 a consensus interface that supports Sawtooth PBFT, and replace the YAC component.
  • Write tests and test the implementation.

Week 6-9

  • Implement a consensus interface for the ordering service.
  • Write tests and test the implementation.

Week 9-12

  • Implement a YAC component for the new Consensus Interface.
  • Write tests and test the implementation.

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