WASM Browser Plugin for Hyperledger Indy

TitleWASM Browser Plugin for Hyperledger Indy
Status

UNSELECTED

Difficulty

MEDIUM  

Description 

The web browser is the main application used by those on desktop/laptop computers.  It allows for a common experience for end-users and also allows them to take advantage of new features without having to install additional software.  Developers also benefit from the common usage because it allows them to take advantage of existing standards, frameworks, libraries, and design patterns to add new features to the user experience.   We would like to leverage these capabilities to introduce users to Hyperledger Indy. Hyperledger Indy requires a user to have a wallet and an agent that can manage the connections between various parties.  By incorporating the wallet and agent into a Chrome extension, we would be able to gently introduce users to these concepts and provide a way for them to experiment in their browser and upgrade to more refined experiences as their interest increases.

The extension would allow users to create digital identities and to connect with others using similar technology and also to send and receive messages.

The project would leverage the ability of the Hyperledger Indy and Ursa projects to produce WASM code that would be incorporated into the extension.

Additional Information

Learning Objectives

This internship will provide the student with familiarity in:

- project version control through Github

- distributed public key management through the use of Indy wallet and SDK

- agent to agent messaging for ZKP transport

- community driven protocol development

- programming an open-source project

Weekly meetings the mentor over email, phone, or Zoom.

Student is expected to be self-reliant and motivated seeking direction from the mentor or others in the community as needed.

Expected Outcome

The MVP is an Indy Chrome extension paired with a Javascript API. Users should be able to use the Chrome Extension to create a digital identity and connect to others using the Chrome Indy extension. The Chrome Extension should provide a JavaScript API that websites call to perform the following functions

  • Detect presence of extension

  • Create a wallet

  • Establish a connection

  • Send Messages

Relation to Hyperledger 

Hyperledger Indy

Education Level

Graduate student or undergraduate student

Skills

  • JavaScript

  • Previous experience designing JavaScript APIs

  • Previous Hyperledger Indy experience (desired, but not required)

  • Experience building a browser extension (desired, but not required)

Future plans

The project will be used to test how various aspects of a browser based agent and wallet can lead to further consumer adoption.

Preferred Hours and Length of Internship

Full-time (40 hours a week for 12 weeks during the summer)

Mentor(s) Names and Contact Info

Thomas Shelton, tshelton@culedger.com and Daniel Bluhm, daniel.bluhm@sovrin.org