2022-11-07 AnonCreds Specification Working Group Meeting

Summary

  • Logos!
  • Transition to Hyperledger
  • RevReg Objects between AnonCreds and AnonCreds Methods
  • Iterations on AnonCreds in W3C VC Standard format
  • Open Issues and PRs
  • Open Discussion

Recording of Call: dummyfile.txt

Notices: 

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

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 (BC Gov / Cloud Compass Computing Inc.) <swcurran@cloudcompass.ca>

Timo Glastra (Animo Solutions) <timo@animo.id>

Lance Byrd (RootsID) <lance.byrd@rootsid.com>

Related Repositories:

Meeting Preliminaries:

  • Welcome and Introductions
  • Announcements:
    • IIW -- Nov 15-17, Mountain View, Calif.
      • Suggestions for what to do at IIW
        • Ledger-agnostic AnonCreds
        • AnonCreds in W3C Format
        • Sam:
          • Governance, Aries for other than AnonCreds
  • Updates the Agenda

Agenda 

  • Logos – selecting the Hyperledger AnonCreds project logo. Link to survey.
    • Finalize - Concept 1, colors TBD (likely Greens 7 votes vs. 4 for each of Blues and Red/Grey)
    • Sent to Hyperledger and the designer
  • Transition into Hyperledger AnonCreds
    • Tasks in moving this group into Hyperledger
    • Move the repos from AnonCreds-WG organizations into HL, get new URL https://hyperledger.github.io/anoncreds-spec/
    • Create new replacement repos in existing organization and publish a redirector to the new location - https://anoncreds-wg.github.io/anoncreds-spec/
    • PR to update the references to the home of the specifications as being in Hyperledger and update the Community License V1.0 documents.
    • Create a Meetings page off the Hyperledger AnonCreds home page
    • Move all meeting agendas to the new Meetings page
    • All the other work in establishing the Hyperledger AnonCreds project: Checklist
  • RevReg Object updates -- enabling AnonCreds Methods to support both deltas and "full state" RevReg storage Timo Glastra
    • Discussion starts at 18:49 of the recording. 
    • Initial proposed revocation list data model: https://hackmd.io/@animo/Sys3SqUri
    • In short – in creating the presentation, the invoking process must pass an object with this structure, plus (at least) the tails file:
      • { "revocation_list": [0,1,0,1....], "current_accumulator": "xxx", "timestamp": "xxx" }

      • That will enable the AnonCreds presentation generator to produce the Proof of Non Revocation.
      • The invoker must get from the AnonCreds Method the data in that format, regardless of how the data is stored on ledger.
    • Next step is to put this into the specification as part of the presentation section – assigned to Stephen Curran to write (he should get on it...Soon!!)
  • Creating/sharing AnonCreds verifiable credential and presentation objects in W3C VC Data Model format
  • Open PRs Review, Open Issues Review
    • Issue #86: Should we allow the possibility of an Issuer using only a subset of a schema?
      • Discussed at the 37:26 mark of the recording.
      • Short answer is no – it's a bad idea for holders and verifiers, as it eliminates the expectation of what claims are in a credential. As noted in the ACA-Py discussion, the issuer has options for not using attributes (such as putting "NULL" into the credential). Such a change would be very complicated.
    • Issue #92: Does AnonCreds support in the Presentation Request / Presentation flow the concept of presenting any one of N verifiable credentials?
      • Discussed at the 47:04 mark of the recording. 
      • It may, using unrevealed attributes.
      • If it does not work, the path to follow to "fix" this would mostly likely be to go to DIF Presentation Exchange, and not to 
    • Issue #100: Clarifying if the holder is the software agent acting on behalf of an entity or the entity itself
      • Request for others to review and discuss at the next meeting
  • Open Discussion

Future Calls

  • None pending

To Dos:

  • Request from Stephen Curran -- I'd like to go through the presentation section of the spec to convert the specific implementation calls (e.g. indy_prover_... and the like) into content to be more about the data objects passed into AnonCreds/returned from AnonCreds for processing events.
  • Ankur to add paragraph about philosophy of the AnonCreds API, styles
  • Review the Issuing and Presentation sections to exclude Legacy Indy impacts, and to formalize the Abstract API for writing/reading published objects
  • Cred Def Generation + PRIVATE_CRED_DEF -- non revocation, and plus revocation
  • Revocation data elements -- definition
  • Normative/Non-normative references
    • Collect from documents mentioned below (under action items) and from previous meeting

Action items