completed
RootsWallet - Support for sidetree
Current Project Status
Complete
Amount
Received
$7,600
Amount
Requested
$7,600
Percentage
Received
100.00%
Solution

We will continue improving our Open Source RootsWallet by adding interoperability with sidetree-cardano Decentralized Identity method.

Problem

RootsWallet, that initially supports Prism DIDs, needs to support as many DID methods as possible to reach global interoperability

Addresses Challenge
Feasibility
Auditability

RootsID

2 members

RootsWallet - Support for sidetree

Given the growing number and adoption of distributed identity solutions, the importance of interoperability between them becomes evident. For that reason, we have designed our Open Source RootsWallet with the interoperability concept in mind. In that sense, we have implemented an architecture that allows different Decentralized Identity method handlers to be added seemesly, where an orchestration layer helps switch between different DID operations based on the user needs.

In this project we are proposing to add the sideree-cardano method handler that was part of the project Interoperability as Growth Driver funded in Catalyst F6, to the RootsWallet from project Open Source Credential Wallet funded in Catalyst F7. The synergy of these two projects will allow:

  • add a wallet as an extra component to the sidetree-cardano ecosystem that is currently composed by the sidetree nodes, Hyperledger Cloud Agent, and Universal Resolver
  • allow sidetree users to use RootsWallet
  • provide a initial level of DID interoperability between Atala Prism and sidetree, in particular sidetree-cardano
  • facilitate the addition of other sidetree platforms such as ion and element

We are aiming to reach the goal of the challenge by providing the first open source wallet for the Cardano ecosystem, supporting did:ada and did:prism methods, allowing interoperability and growing the number of tools available to implement Self-Sovereign Identity projects on top of Cardano.

I do not foresee a technical challenge since I’ve already developed and implemented a Universal Resolver Plugin for sidetree. However, the main challenge I may face is the ability to allocate enough time to commit the project in time. Since this is not the only project I’m planning to deliver during the same period of time, I’ve been carefully planning time allocation among all Catalyst projects and personal daily jobs. Besides that planing, and as the schedule is really tight, I have planned two options to mitigate that risk in case of necessity:

  • As I’m part of RootsId, a team of four members, I will count the support from the rest in case we need it.
  • I have identified a number of community members that I met at the Atala Prism Pioneer Program that are willing to collaborate and jump into the project in case we needed it.

Based on the time allocation planning mentioned above, we have defined the following plan of actions and durations for this project:

  • Planning: 2 days
  • Development: 20 days
  • Test and improvement loop: 5 days
  • Documentation: 3 days

<u>TOTAL DURATION</u>: 6 weeks

The high-level scope of each activity is described below:

  • Planning: this activity is the planning of the development sprints in our Agile methodology, and the assignment of task during time
  • Development: This is the actual development process of each of the defined working sprints
  • Test and improvement loop: the app need to pass a set of tests to validate it’s functionality. During those tests, problems and improvements are detected that are passed back to the development phase.
  • Documentation: Finally, the documentation will be completed with step by step guide on how the app works and should be used in a sidetree-cardano network

<u>Deliverables</u>:

  • the open source code of RootsWallet available in a public repository that include the did:ada method
  • the documentation of the usage in the public repository

Budget is mostly composed of development hours at a ratio of $100/hr. Based on the activities defined above the requested breakdown budget is:

  • Planning: 2hr = $200
  • Development: 50hr = $5.000
  • Test and improvement loop: 20hr = $2.000
  • Documentation: 4hr = $400

<u>TOTAL BUDGET</u>: $7.600

This is a solo team composed by Rodolfo Miranda. He is well involved in the Cardano Decentralized Identity community from the beginning in Fund 6, has been funded for several open source projects, some of them are already delivered, and has participated in the first cohort of the Atala Prism Pioneer Program. As a result of the later participation, he joined efforts with other cohort members and founded RootsId with the goal of providing useful building blocks for the Cardano SSI Community. Additionally, He frequently participates and contributes in working groups and task forces related to the Self-Sovereign Identity world such as the Linux Foundation Project Trust Over IP and the Decentralized Identity Foundation DIDComm Working Group among others.

As special note, Rodolfo Mirada was the proposer of the Challenge “Self-Sovereign Identity” that is closely related to this one, and currently is part of the Challenge Team.

SSI products delivered / on development:

  • Sidetree-cardano, a sidetree implementation on top of Cardano. See github repo.
  • Hyperledger Aries Cloud Agent Python (ACA-Py) adapted to work with sidetree-cardano did:ada. See github repo.
  • Universal Resolver Driver for Sidetree-Cardano did:ada method:. See girhub repo
  • RootsWallet, an open source identity/credential wallet. See github repo

Additional references of the team:

<u>Rodolfo Miranda</u>: <https://www.linkedin.com/in/rodolfomiranda/>

His background includes a MS EE degree at Stanford University and more than 25 years of successful work experience in both large multinational companies and owned startup projects. His main activities involve architecting, developing, and implementing large scale software solutions for the Telecommunication Industry. Lately, he was engaged in blockchain technologies and joined Cardano community where he:

This project is basically a software development project with two clear deliverables that will work as proofs of completion:

  • the open source code of RootsWallet available in a public repository that include the did:ada method
  • the documentation of the usage in the public repository

Additionally, this team adopts Agile methodology based on the tools provided by github. Besides progress reports, the advancement will be tracked by github issues, project views (like Kanban board) and commits. Intermediate progress will be reported as Sprint Burndown, a KPI metric that shows the progress in percentage of each development sprint.

The success of the project is the release a new version of our open source RootsWallet with additional did:ada method operation that allow implementers of SSI solutions to build on top of Cardano easily by having more interoperable components

This project is a continuation of two already funded projects: Interoperability as Growth Driver funded in F6, and Open Source Credential Wallet funded on f7. In this opportunity we are combining both projects to create a more robust, interoperable, and complete ecosystem on top of Cardano.

close

Playlist

  • EP2: epoch_length

    Authored by: Darlington Kofa

    3m 24s
    Darlington Kofa
  • EP1: 'd' parameter

    Authored by: Darlington Kofa

    4m 3s
    Darlington Kofa
  • EP3: key_deposit

    Authored by: Darlington Kofa

    3m 48s
    Darlington Kofa
  • EP4: epoch_no

    Authored by: Darlington Kofa

    2m 16s
    Darlington Kofa
  • EP5: max_block_size

    Authored by: Darlington Kofa

    3m 14s
    Darlington Kofa
  • EP6: pool_deposit

    Authored by: Darlington Kofa

    3m 19s
    Darlington Kofa
  • EP7: max_tx_size

    Authored by: Darlington Kofa

    4m 59s
    Darlington Kofa
0:00
/
~0:00