Skip to content
This repository has been archived by the owner on Jun 26, 2023. It is now read-only.

Roadmap

Nikos Karagiannidis edited this page Jan 31, 2020 · 74 revisions

This roadmap defines the scope of our work within the Priviledge project as well as integration points with other parts of the Cardano project (both research and development).

The roadmap is defined along the four phases in the lifecycle of a software update, namely: a) Ideation, b) Implementation, c) Approval and d) Activation, which is based on our current research results for decentralized software updates for stake-based ledger systems. This roadmap consists of three main iterations over this lifecycle:

  1. Iteration 1: Priviledge Delivery : This iteration's main goal is to build a prototype that incorporates the bulk of the current research results on decentralized software updates and at the same time fulfiil the core requirements for the Priviledge project.
  2. Iteration 2: Network and Consensus : This iteration's main goal is to provide a networked version of the prototype along with a basic ledger consensus mechanism. The reason is to test the prototype in a networked enviroinment.
  3. Iteration 3: Delegation and Treasury : This iteration's main goal is to enhance the prototype from the previous iteration by introducing delegation to expert pools for the participation in the software update protocol and by integrating, as much as possible, with the research results of the treasury system. Note that the there is an identified overlap of our work with the treasury system at the level of the Ideation phase in the software update lifecycle.

At the moment there are two research tracks that run in parallel with the implementation work carried out in this repository:

  • Integration with the Treasury system. Common approaches for on-chain governance like voting and the delegation to experts will be identified and research proposals will be integrated. Other open issues such as an incentive scheme to support the delegation will be jointly worked.
  • Secure activation of ledger changes based on a weaker set of assumptions (not requiring the updated ledger to have the same common-prefix and chain-growth parameters as the original one)

As the reseach progresses we will incorporate its result into our prototype, and conversely, inform the reserachers of any insight gained during the prototyping phase.

Iteration 1: Priviledge Delivery

  1. ✔️ Decentralized Software Updates for Stake Based Ledger Systems - Submit research paper on FC20
  2. ✔️ Benchmark hedgehog generators and compare them with QuickCheck ones.

Ideation Phase

  1. ✔️ Implement Ideation phase
  2. ✔️ Define properties of the Ideation phase
  3. ✔️: Proof-of-Concept for testing via Abstract State Machines.
  4. ✔️Test properties of the Ideation phase.
  5. ✔️ Write a formal spec/design document - Ideation Phase

Software Update Benchmarking and paper Submission

  1. Implement single-node benchmarking set-up
  2. Perform experimental evaluation for the paper
  3. Prototype integration with consensus as a preparatory investigative task for iteration 2
  4. Integrate ideation with consensus
  5. 🔨Perform in-depth related work analysis
  6. Revise software updates paper based on comments and enhance with experimental results
  7. Submit a paper to Esorics 2020 or ACM CCS 2020
  8. 🔨Present the update mechanism to other IOHK stakeholders

Approval Phase

  1. Define properties of the Approval phase
  2. 🔨Implement Approval phase and Test Properties
  3. Write a formal spec/design document - Approval Phase

Activation Phase

  1. Define properties of the Activation phase
  2. Implement Activation phase and Test Properties
  3. Write a formal spec/design document - Activation Phase

Priviledge Deliverables

  1. Write validation criteria for the prototype (D1.2 Validation Criteria (M30))
  2. Write final report on architecture (D4.3 Final Report on Architecture (M30))

Iteration 2: Network and Consensus

  1. Implement second iteration of the update mechanism
  2. Test the update mechanism prototype using ouroboros-network

Priviledge Deliverables

  1. Write final report on validation criteria testing results (D1.3 Use Case Validation (M36))
  2. Write final report on prototype implementation (D4.4 Report on Tools for Secure Ledger Systems (M36))

Iteration 3: Delegation and Treasury

  1. Implement third iteration of the update mechanism
Clone this wiki locally