2022-07-26 Aries Cloud Agent - Python Users Group Community Meeting

2022-07-26 Aries Cloud Agent - Python Users Group Community Meeting

Summary:

Topics:

  • Recent Merges / Priorities

  • Discussion: Getting to Ledger Agnostic DIDs and AnonCreds Objects

  • Q&A

Recordings from the call: 

  • Full Meeting: 

  • Extracted segments: Discussion on DIDs, DID Methods, AnonCreds Objects and Ledger Agnostic ACA-Py starts at 9:49 of the recording.

  • Relevant Chat Bits:

    • 08:22:51 From Victor Martinez (SICPA) : https://docs.godiddy.com/en/advanced/didcomm-interface

    • 08:25:42 From Timo Glastra : We recently added a generic did resolver to AFJ. There is a spec from the identity foundation for a generic did registrar interface: https://identity.foundation/did-registration/

    • 08:27:27 From Victor Martinez (SICPA) : https://github.com/sicpa-dlab/aries-cloudagent-python/tree/feature/did-registrar

    • 08:40:30 From Timo Glastra : Cheqd identifier example: did:cheqd:mainnet:6h7fjuw37gbf9ioty633bnd7thf65hs1/resources/f09c9296-6b39-4057-afff-dc2116fe746d

    • 08:42:39 From Timo Glastra : The appraoch we're taking for AFJ is creating a generic AnonCredsResourceService. You pass it an id and it resolves to the AnonCreds objects. The ID should be unique enough to determine the specific resource + define the resource provider (e.g. indy, cheqd, but could also be https).

    • 08:43:32 From Timo Glastra : Someone made a fabric integration in AFJ that swapped out the Indy ledger service for a fabric ledger service, and it kinda worked with the indy sdk out of the box

    • 08:45:13 From Timo Glastra : You can define it as a cred def / schema in your did document by adding a service:

    • 08:45:19 From Timo Glastra :

      • {
        "id": "did:cheqd:mainnet:zF7rhDBfUt9d1gJPjx7s1JXfUY7oVWkY#non-fungible-image",
        "type": "LinkedDomains"
        "serviceEndpoint": "https://gateway.ipfs.io/ipfs/bafybeihetj2ng3d74k7t754atv2s5dk76pcqtvxls6dntef3xa6rax25xe",
        }

 

Hyperledger is committed to creating a safe and welcoming

community for all. For more information

please visit the Hyperledger Code of Conduct.

Hyperledger is committed to creating a safe and welcoming

community for all. For more information

please visit the Hyperledger Code of Conduct.

Welcome and Introductions

Attendees

  • @Stephen Curran (Cloud Compass Computing Inc.) <swcurran@cloudcompass.ca>

  • @Sam Curren(Indicio) <sam@indicio.tech>

  • @Jason Leach (Fullboar Creative / BC Gov) <jason.leach@fullboar.ca>

  • @Sylvain Martel (Qc) <sylvain.martel0@mcn.gouv.qc.ca>

  • @Char Howland (Indicio) <char@indicio.tech>

  • @Philippe Foucault (Gouvernement du Québec) <philippe.foucault@mcn.gouv.qc.ca>

Announcements

Deployments and Work Updates

Agenda

  • Updates on merges and current PRs – priorities

  • Discussion: How to enable object (DID and AnonCreds) resolution to improve ledger agnostic Aries protocols, and in particular, ledger-agnostic AnonCreds

    • Topics:

      • DID Resolution:

        • State of DID Resolution in ACA-Py – local and external resolvers, regex to define if and how to resolve a DID.

          • External resolvers – http and didcomm interfaces available

        • Work happening now on did:peer to make it fit the interface

        • Working happening at SICPA on a DID Registrar based on the DIF Spec - Issue to be added to discuss/track

          • EBSI plugin being created (Ethereum based, DIDs only)

          • Plugins needed for did:sov, did:indy, did:peer, did:key  and folks may be interested in adding more

        • Inconsistency in returned DIDDoc – suggests the need for a method in ACA-Py to "smooth out" the handling of DIDDocs - Issue to be added to request

      • AnonCreds Objects Handling

        • Currently tied to Indy – a "baseLedger" class with instances for Indy-SDK (indy-wallet storage only) and Indy VDR (indy-wallet or askar storage).

          • Handles writing as well, with Endorser handling.

        • Likely need to abstract to a similar, pluggable resolution and writing mechanisms - Issue(s) to be created.

          • Given an identifier in an AnonCreds object/context – resolve it.

          • Write AnonCreds objects using plugins to various target VDRs.

        • AFJ starting to talking about an AnonCredsResourceService

Next Meeting

Future Topics

Action items