Skip to content

refactor: Deprecate Indy credentials and add support for Anoncreds #697

Open
@vivekayanworks

Description

@vivekayanworks

Currently, we have Indy based credentials that are made default for issuance and verification.

To do:

  • Improve DTO level formating by leveraging APIExtraModels

  • [̶ ]̶ C̶h̶e̶c̶k̶ i̶f̶ w̶e̶ c̶a̶n̶ m̶i̶g̶r̶a̶t̶e̶ f̶r̶o̶m̶ I̶n̶d̶y̶ c̶r̶e̶d̶e̶n̶t̶i̶a̶l̶s̶ t̶o̶ A̶n̶o̶n̶c̶r̶e̶d̶s̶

  • Issuance

    • Add Anoncreds as an additional type
    • Remove credentialType from Query param and make it required in Body
    • Update credentialFormats in Interface
    • Update the default credential type from Indy to Anoncreds
      • Issuance with connection
      • OOB Issuance
      • OOB Issuance with email
      • Bulk issuance change, if any
    • Change in IssuanceDTO to accept a universal 'credentialFormats' instead of previous components required for issuing different types of credentials
      • Issuance with connection
      • OOB Issuance
      • OOB Issuance with email
      • Bulk issuance change, if any
  • Verification

    • Add Anoncreds as an additional type.
    • Add Indy 'CredentialFormats' type
    • Remove presentationType from Query param and make it required in Body
    • Update credentialFormats in Interface
    • Update the default presentation type from Indy to Anoncreds
      • Verification with connection
      • Verification OOB
    • Change in VerificationDTO to accept a universal 'credentialFormats' instead of previous components required for issuing different types of credentials.
      • Verification with connection
      • Verification OOB

Breaking change

  1. Can have an impact on required attributes for issuance and verification. The impact will be on backend considering the change in credentialFormats.

Solution

  1. Have validations on attributes on DTO level for credentialFormats to not allow issuance in case of no attributes.
  2. Can pass an optional array of required attributes, to validate.

Metadata

Metadata

Assignees

Labels

enhancementNew feature or request

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions