2023-09-25 AnonCreds v2.0 Working Group Meeting

2023-09-25 AnonCreds v2.0 Working Group Meeting

Summary

  • Hyperledger Labs Agora – an implementation of (the planned) AnonCreds 2.0 – and more!

  • Open Discussion

Zoom Link: 

Recording of Call:  

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.

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 Repositories:

Goals of the Working Group:

The goal of AnonCreds v2.0 is to retain and extend the privacy-preserving features of AnonCreds v1.0, while improving capabilities, performance, extensibility, and security.

Meeting Preliminaries:

  • Welcome and Introductions

  • Announcements:

    • AnonCreds Rust 0.2.0-dev1 released! Update to AnonCreds CL Signatures implementation with fixes and performance improvements.

Agenda

  • Hyperledger Labs Agora – an implementation of (the planned) AnonCreds 2.0 – and more!

    • "Unknown Order" library – wrapper of all the well known BigNumber libraries – pick a back end, go...

      • Constant time libraries for security.

      • Why "unknown order" – don't know the order unless you know the secret – MPC relies on a group of Big Nums unknown_order – blob of binary that you have to know about to interpret

      • Side note: class groups is coming for a similar purpose

    • Paillier RS

    • blsful ("Blissful") – BLS Signatures – everything in BLS Signatures, and what's needed in AnonCreds 2.0.

      • Signing, verifying, threshold signing, assembling

      • Algomar proofs Key shares

      • sign_crypt – sign and encrypt/decrypt and verify

      • Wrapper around Intel's blst ("Blast") library – hides

    • CredX – anoncreds 2.0

      • Not part of Agora – likely to go to AnonCreds directly.

      • Being worked to break out the components, so CredX is more glue, less cryptography.

  • Open Discussion

Future Calls

  • Collect some use case specific examples and continue the discussions:

    • Applying the data structures to a real use case or two

      • Take an existing AnonCreds Schema (maybe this) and Credential Definition (maybe this) and define what it would be using Mike's proposed data models.

        • Where would the data models exist, such as on ledger, in the AnonCreds specification?

    • What concrete uses other than link-secret is there for blinded data in a credential?

To Dos:

Schema Claim Type:

  • Would it make sense defining encodings for date related schema claim types that are especially useful to use in ZKP predicates?

    • "iso860_date" – encodes to dateint e.g., 2023.06.26 is 20230626

    • "iso860_datetime" - encodes to Unix Time e.g., seconds since Jan 1, 1970

  • Yes – these would be "numbers" by type, but with special encoding handling.

Action items