Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Objectives

  • Creation and validation of Peer DIDs (genesis version only)
  • did-exchange protocol using HTTPS as transport
  • Local storage of peer DIDs
  • Live, developer-driven demonstration of the above (peer DIDs, did-exchange, storage) between two non-mobile Agents
  • Resolution of DIDs using the HTTPS binding
  • Demonstration of ledger-backed DID resolution using Hyperledger Fabric and Sidetree

Design considerations

aries-framework-go is a highly customizable framework that provides sensible defaults.

Details regarding the project's layout can be found here: Framework Go Package Hierarchy.

Creation and validation of Peer DIDs

The framework should support several DID methods of which did:peer is just one.

did:peer to be enabled for creation and resolution by default.

Validation on peer DIDs:

Only the genesis version of Peer DIDs is required for this milestone.

Note: we will implement the cryptographic envelope with the updates currently discussed in hyperledger/aries-rfcs#133

did-exchange protocol using HTTPS as transport

The did-exchange protocol to be fully implemented.

The framework will support many transports of which HTTPS is one. HTTPS to be enabled by default.

Local storage of peer DIDs

The framework will support several storage mechanisms.

No specific implementation targeted for this milestone.

Define generic storage interface that allows the Agent to protect its secrets from the storage provider.

DID Resolution using HTTPS binding

The framework will support external DID resolution using the HTTPS binding.

We will demonstrate usage of a Fabric enabled with the Sidetree protocol (exposing the HTTPS binding for DID resolution).

Live Demo

The goal is to showcase two non-mobile Agents exchanging peer DIDs with both running on the same laptop.

The presenter should be able to run the steps one by one as they showcase the demo to others.

A controller API is needed on each Agent in order to drive the demo's steps. The controller API in this framework will be closely aligned with the one in aries-cloudagent-python with the goal of demonstrating interoperability.

Outline:


Live Demo 2: Integration with a Fabric Ledger

The goal is to showcase usage of ledger-backed DIDs during DID exchange and also demonstrate usage of another Hyperledger DLT (Fabric). This is a variation of Live Demo.