2024-03-18 AnonCreds Working Group Meeting

2024-03-18 AnonCreds Working Group Meeting

Summary

  • Status Updates on AnonCreds in W3C VCDM Format projects

  • Revocation Manager for ALLOSAUR and AnonCreds – Design

  • Schema Object for Complex JSON Objects – Discussion

  • Open Discussion

Time: 7:00 Pacific / 16:00 Central Europe
Call Link: https://zoom.us/j/97954159540?pwd=WWk3WmQ3MVh1SXBYZGVreGl0QllGdz09

Recording:

Notices: 

This specification creating group operates under the Linux Foundation Community Specification License v1.0.

cifi

Hyperledger is committed to creating a safe and welcoming

community for all. For more information

please visit the Hyperledger Code of Conduct.

cifi

Hyperledger is committed to creating a safe and welcoming

community for all. For more information

please visit the Hyperledger Code of Conduct.

Meeting Attendees

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

Related Specifications and Repositories:

Meeting Preliminaries:

Agenda

  • AnonCreds in W3C VCDM Format - Status/Updates

  • ALLOSAUR/AnonCreds Revocation Manager Component – what is it, design?  ALLOSAUR/AnonCreds Credential Status Manager (reflects 

    • Presentation

    • Hyperledger Mentorship Program

    • Proposed Hyperledger Mentorship project: AnonCreds Revocation Manager Component Implementation

    • On the Ledger:

      • RevRegDef: ID, Public Key, Accumulator, RM URLs

      • RevRegEntry: Accumulator (no list of changed status)

    • Is this NIST-compliant?

      • NIST has no approved pairing cryptography libraries, and this is based on pairing cryptography

      • Uses BLS12381 – which is used by many of the blockchains, BBS+, etc. – stronger curve – zCash and others

  • Update on the Hyperledger Labs Agora Libraries

  • PS vs. BBS+ Attributes

    • Aside: Rumour has it that a PS key size changes based on number of attributes to sign. If so, does that impact support for arrays in complex JSON?

      • PS must know the maximum number of claims you are going to sign at credential definition time.  Tradeoff of key size vs. number of claims.

      • PS vs. BBS+ relates to threshold signing.

      • PS has stronger security proofs.

      • PS – smaller and faster to generate

    • Nice point – could choose based on use case.

  • Complex JSON in AnonCreds – ideas for the Schema Object

    • Thinking about AnonCreds V2 with complex JSON, and what the Schema would look like.

    • In V2, there are is metadata per VC attribute that provides input into the encoding for the element -- e.g., it's a string, an integer, an integer range, a date, an enumerated set, scalar (e.g. link secret).

    • Example of a simple schema to show the metadata: https://github.com/swcurran/anoncreds-v2-rs/blob/samples/examples/schema-with-linked-secret.json

    • Question – how do we manage the schema when we need to support complex JSON (structures, arrays). 

      • Idea 1: Use JSON.Path so we are back to a list of attributes

        • Schema is a flat list like we have in AnonCreds v1, but attribute names are in JSON Path format. 

        • Metadata is attached to each attribute in the (flat) list.

      • Idea 2: Use JSON-LD 

        • How much would JSON-LD help with this?

          • Probably not much

        • Is there already enough data to tell us much of those things?

          • I would guess not. It could have a lot of it, but not all that we need.

          • Completely dependent on the use case – definitely not guaranteed. Must be able to supplement it.

        • What tools are there to see for a given JSON-LD document what attributes we know about each attribute?

          • Tools are available.

        • Would it make sense to use JSON-LD and supplement attributes as needed?

          • Question for the JSON-LD crowd.

      • Idea 3: Combine the two

        • Use JSON-LD for much of the data

        • Use JSON.PATH to add additional metadata when needed to specific items.

      • Idea 4: Pure JSON-LD, adding new "features" to get support for what we need

        • Don't really know what this entails...

  • Open Discussion

To Dos:

Action items