completed

Open Source Credential Wallet

$39,000.00 Received
$39,000.00 Requested
Ideascale logo View on ideascale
Community Review Results (1 reviewers)
Addresses Challenge
Feasibility
Auditability
Solution

We will build an Open Source identity wallet that operates with Atala Prism Decentralized IDs and Verifiable Credentials.

Problem:

There is no Atala Prism identity wallet available to store and operate with Verifiable Credentials.

Yes Votes:
₳ 135,993,505
No Votes:
₳ 2,692,183
Votes Cast:
593

This proposal was approved and funded by the Cardano Community via Project F7: Accelerate Decentralized Identity Catalyst funding round.

  • Video cover image
  • Video cover image
  • Video cover image
  • Video cover image
  • Video cover image

Detailed Plan

<u>Introduction</u>

New to identity wallets? See our "Intro to SSI" section at the bottom for resources!

Identity wallets are a core application for accelerating decentralized identity in Atala Prism on Cardano. As part of the first cohort in the Atala Prism Pioneer Program, we realized that no identity wallet for individual users is available for our projects. We have teamed to develop an OPEN SOURCE identity wallet that could be used in all Decentralized ID projects.

In this project we will deal with interoperability, security, and usability issues; and remain flexible enough to target all common patterns of Decentralized Id and Verifiable Credential use cases. With the help of our partners (listed in the Partner section) we have narrowed the scope to initially deliver a modular framework with the foundational building blocks of an Identity Wallet for individual users. The code will be open source and anyone will be able to build and run it on a mobile device. We have also generated a list of functionalities that we hope to add in future funds (see below).

<u>Goal</u>

The goal is to accelerate decentralized identity adoption by providing open source identity wallets that are simple to use, with familiar features that serve our partner use-cases.

<u>Skills Required</u>

We have identified the following skills necessary to deliver this identity wallet:

  • An understanding of SSI concepts related to Holders, Issuers, Verifiers, DIDs, VCs, Claims, Keys, Encryption, Trust Registries, Governance Frameworks, etc.
  • Atala Prism software development including the SDK, Kotlin, DIDComm v1/v2, W3C DID document/Credential Model specs, etc.
  • Mobile app development including Java Script, React Native, Swift, Android, iOS, etc.
  • Cardano blockchain development concepts including on-chain vs. off-chain operations, local/test-net/main-net environments and tools, blocks/transactions/metadata, etc.
  • Project management and customer communication including required Catalyst reporting, planning, scheduling, documentation, etc.

Our team of four has the experience necessary to cope with these needs. See the Team section below for details.

<u>Project Plan</u>

With the help of our partners we have identified and prioritized a list of required functionalities (see Planed Functionalities section). In order to deliver functional code as soon as possible, we have structured the project on phases of 3 months, with Fund 7 being the first phase scoped for this project while the others are planed for future funds.

For this first phase and based on our development velocity and partner priorities, our plan is to deliver code that can easily be built and deployed on a mobile phone and allows the user to create a wallet/store with a password, scan a QR code, receive a credential, see all credential, and present credential to others.

The following is a list of projected general activities with effort estimated in development hours:

  1. Architecture design (30 hr)
  2. Selection of development framework (20 hr)
  3. UI/UX wireframe mockup (20 hr)
  4. Build basic app structure (80 hr)
  5. Functional layers implementation (180 hr)
  6. Documentation (20 hr)
  7. Overal test and debugging (40 hr)

The total duration based on the team committed time to the project is 13 weeks.

In future phases we will deliver production main-net code that can be downloaded from an app store. It will incorporate the user feedback and bug fixes from our partner review from Fund 7. We will also have another test-net release to share with our partners for their review/feedback/contributions. It will include additional partner prioritized features. We will also deliver an updated development plan in order to proceed into future funds.

<u>Budget</u>

The budget was computed with a development rate of $100/hr. The team is composed of 4 developers with a peak velocity of 46 cumulative hours per week, and a mean velocity of 30 cumulative hours per week.

Based on the effort estimated above, our budget is:

  1. Architecture design: $3,000
  2. Selection of development framework: $2,000
  3. UI/UX wireframe mockup: $2,000
  4. Build basic app structure: $8,000
  5. Functional layers implementation: $18,000
  6. Documentation: $2,000
  7. Overal test and debugging: $ 4,000

TOTAL BUGDGET: 390 hr @ $100/hr = $39,000

<u>Project Tracking</u>

The project implementation will follow Agile management based on Jira Cloud tools. Jira users can be created for follow up and audit ability. Additionally, a bi-weekly report will be published with project progress, major milestones and risk assessment.

The identity wallet is the main deliverable that constitute the metric of progress and success:

Intermediate progress will be reported as Sprint Burndown, a KPI metric that shows the progress of each development sprint. Additionally, the development will be managed in a public Github repository where periodic commits will be pushed and that allow the community to audit and validate the work.

We've also determined the following KPIs:

  • Architecting Sprint Burndown
  • UI/UX Sprint Burndown
  • Development Sprint Burndown (this will be break down in individual sprints)
  • Pass/Rejected tests
  • Documentation Readiness

<u>Risk Assessment</u>

This team has strong experience in building complex applications and although the challenge is hard, we feel comfortable on the technical side. However, we've identified a concern regarding the Atala Prism SDK, that is not fully available and may also change during the implementation. This is a potential risk to the project and to mitigate it we have already started a dialogue with the Atala Prism Team. They have been supportive and will continue to share their road-map to align our development.

<u>Team</u>

Our team has submitted and received funding in previous Catalyst funds, we have delivered open source projects built on Cardano, we are all members of the first IOG Atala Prism Pioneers cohort, and cumulative 100 years of software development experience.

<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. He leads multi-disciplinary and multinational teams in the Caribbean and Latin America. Lately, he was engaged in blockchain technologies and joined Cardano community where he:

  • Submitted and received funding for another proposal in Fund 6: <https://cardano.ideascale.com/a/dtd/Interoperability-as-growth-driver/368705-48088>
  • Delivered a DIF side-tree implementation on top of Cardano: <https://github.com/rodolfomiranda/sidetree-cardano>
  • Participated as Community Advisor in Fund 6
  • Is part of the Challenge Team for Fund 7 challenge "Grow Latinamerica, Grow Cardano"
  • Is part of the first cohort of the Atala Prism Pioneer Program

<u>Butch Clark</u>: https://www.linkedin.com/in/butchclark/

DISH Network and IOG have a partnership to develop SSI - related functionality (including a mobile wallet). Butch is the Technical Liaison for DISH, and the overall team lead for all DISH blockchain-related development.

He holds a BS and MS in Computer Science, and has over 35 years professional experience in software development, and leading technical teams. Much of his experience is in middle-tier and backend systems. He has designed, developed, and maintained many commercial software products, and holds a software patent for autonomous monitoring and failure recovery of enterprise class storage system collectives.

Is part of the first cohort of the Atala Prism Pioneer Program

<u>Esteban Garcia</u>: https://www.linkedin.com/in/esteban-garcia-cr/

Esteban has over 14 years of experience as technical consultant for corporate customers, with experience on several roles such as Developer, Solution Architect, Data engineer and QA Engineer. He has a Bachelor degree on Computer Science and Associate degree on Data Science. Esteban is a proactive person that adapts quickly to different roles and technology stacks.

Is part of the first cohort of the Atala Prism Pioneer Program

<u>Lance Byrd</u>: https://www.linkedin.com/in/2byrds/

His background includes a BS in Computer Science (UMBC) and MS in Information Assurance (Capitol College) and more than 21 years of software development as a consultant. He has developed massive scale data analytics and visualizations, machine learning analysis pipelines, and worked with University researchers to bring their work to market. He has also built and taught technical certification courses for several different topics in data analysis, big data, and compliance.

Is part of the first cohort of the Atala Prism Pioneer Program

<u>Planed functionalities</u>

The design will support functions such as:

Customizable / Extendable Identity Wallet Features

  • Modular design for easier customization
  • Cross-platform solution
  • Flexible Credential Model
  • Initial basic layer of communication
  • Ready to port comm layer from Atala Team (layer not currently available)
  • DIDComm v1, and DIDComm v2

Privacy / Security Features

  • Keystore for private keys and credentials
  • Create/Read/Update/Delete DIDs
  • Selectively disclose claims to verifiers
  • Keep history, hashes, etc
  • Backup to Cloud Storage
  • Verify credentials based on a policy
  • Self-issued credentials for basic data like email, social media aliases, etc

UI / Usability Features

  • Simple, logical interface designed for general users
  • Maintain multiple DIDs
  • QR code reader to start P2P communication
  • Credential search, including text and field name search
  • Data navigation in a variety of formats (tabular, nested tree structures, etc)
  • Flexible Credential Display

<u>Partners</u>

We have partnered with several proposals so that our wallet solution can serve their communities, customers, and developers:

  • <https://cardano.ideascale.com/a/dtd/DID-for-Cardano-Indonesia-Community/380911-48088>
  • <https://cardano.ideascale.com/a/dtd/Bottom-up-land-registration-Zambia/381570-48088>
  • <https://cardano.ideascale.com/a/dtd/PACE-Community-credentials-2/381642-48088>
  • <https://cardano.ideascale.com/a/dtd/PRISM-CLI-Wallet-for-Developers/381281-48088>
  • <https://cardano.ideascale.com/a/dtd/Hyperledger-Prism-Interoperability/381953-48088>
  • <https://cardano.ideascale.com/a/dtd/Open-Source-Social-Account-Verifier/382626-48088>
  • <https://cardano.ideascale.com/a/dtd/Latam-Community-DID/381158-48088>
  • <https://cardano.ideascale.com/a/dtd/Stackable-Learning-Pathways/380914-48088>

<u>Intro to SSI</u>

Here are some of our favorite links to help you understand Secure Sovereign Identity, why identity wallets on Cardano are so important, and some relevant specs/references.

  • <https://freecontent.manning.com/the-basic-building-blocks-of-ssi/>
  • <https://atalaprism.io/app>
  • <https://www.w3.org/TR/did-core/>
  • <https://www.w3.org/TR/did-spec-registries/>
  • <https://www.w3.org/TR/vc-data-model/>
  • <https://identity.foundation/didcomm-messaging/spec/>
  • <https://json-ld.org/spec/latest/json-ld/>
  • <https://schema.org/EducationalOccupationalCredential>
  • <https://www.youtube.com/watch?v=8cfO5tQQ0i8>
  • https://www.youtube.com/watch?v=hbi07kZM_Zk

Community Reviews (1)

Comments

Monthly Reports

This is very exciting work! The Catalyst community has been amazing. Thank you for your help :)

Disbursed to Date
$39,000
Status
Still in progress
Completion Target
5/20/2022
Attachment(s)
Comments 0

Login or Register to leave a comment!

We have begun internal demos of the app. and look forward to our first partner/lurker demos at the end of April :)

Disbursed to Date
$39,000
Status
Still in progress
Completion Target
6/1/2022
Attachment(s)
Comments 0

Login or Register to leave a comment!

You can see the close out video at https://youtu.be/jTNF8WWAJcs

Disbursed to Date
$39,000
Status
Complete
Completion Target
5/23/2022
Attachment(s)
Comments 0

Login or Register to leave a comment!

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