Skip to content

Cardano AnonCreds protocol and reference implementation

License

Notifications You must be signed in to change notification settings

thiagoromanos/cardano-anoncreds

 
 

Repository files navigation

Cardano AnonCreds Method

This repository hosts information regarding the implementation of AnonCreds Methods on Cardano. It's a collaborative working group with base on the Cardano SSI Alliance (CSSIA). We meet every other Friday (meeting info).

The AnonCreds (Anonymous Credentials) specification is based on the open-source verifiable credential implementation of AnonCreds that has been in use since 2017, initially as part of the Hyperledger Indy open-source project and now in the Hyperledger AnonCreds project. The extensive use of AnonCreds around the world has made it a de facto standard for ZKP-based verifiable credentials.

The goal of this Cardano initiative is to define and provide a reference implementation of the AnonCreds Methods that publish Anoncred Objects in a VDR (Verifiable Data Registry), which in our case is the Cardano Blockchain. The defined AnonCred Methods will be published to the AnonCreds Methods Registry that currently host methods for Hyperledger Indy Legacy AnonCreds, did:indy AnonCreds, HTTP AnonCreds, and cheqd AnonCreds.

Working documents:

The ledger-agnostic AnonCred Specification is a work-in-progress project from the AnonCreds Specification Working Group at Linux Hyperledger Foundation. All interested are welcome to participate and collaborate also into the Hyperledger AnonCred WG.

Latest Presentations

Useful links

High-level overview of AnonCred Objects

AnonCred Objects

AnonCred Object

The objects that need to be stored on Cardano are:

  • SCHEMA: Schema
  • PUBLIC_CRED_DEF: Credential definition
  • REV_REGISTRY: Revocation registry
  • REV_REGISTRY_ENTRY: Revocation registry entries

What needs to be defined (WIP)

  • How to publish (registering) and retrieve (resolving) AnonCreds objects as Transaction Metadata in Cardano
  • How to serialize the object in the Tx Metadata
  • AnonCred Object IDs format
  • AnonCred Object Data and Metadata
  • Versioning
  • How to chain revocation acumulators
  • How to enforce DID of issuer into AnonCred Object publications
  • How to query for AnonCred Objects
  • Where to store TAIL_FILES

Other Goals

  • CIP Proposal

Copyright Notice

AnonCred specification is subject to the Community Specification License 1.0 available at https://github.com/CommunitySpecification/1.0.

If source code is included in the specification, that code is subject to the Apache 2.0 license unless otherwise marked. In the case of any conflict or confusion within this specification between the Community Specification License and the designated source code license, the terms of the Community Specification License shall apply.

This Working Group effort is subjet to the same copyright.

About

Cardano AnonCreds protocol and reference implementation

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • TypeScript 70.9%
  • Python 29.1%