Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat: w3c anoncreds support #1115

Merged

Conversation

auer-martin
Copy link
Contributor

Summary of Changes

Add support for receiving w3c-anoncreds credentials via the new DataIntegrity attachment format
Add support for rendering dif pex presentation requests using the existing rendering logic
Add support for presenting credentials via PresentationExchange

Related Issues

Please reference here any issue #'s that are relevant to this PR, or simply enter "N/A" if this PR does not relate to any existing issues.

Pull Request Checklist

Tick all boxes below to demonstrate that you have completed the respective task. If the item does not apply to your this PR check it anyway to make it apparent that there's nothing to do.

  • All commits contain a DCO Signed-off-by line (we use the DCO GitHub app to enforce this);
  • Updated LICENSE-3RD-PARTY.md for any added dependencies or vendored components;
  • Updated documentation as needed for changed code and new or modified features;
  • Added sufficient tests so that overall code coverage is not reduced.

If you have any questions to any of the points above, just submit and ask! This checklist is here to help you, not to deter you from contributing!

Pro Tip 🤓

  • Read our contribution guide at least once; it will save you a few review cycles!
  • Your PR will likely not be reviewed until all the above boxes are checked and all automated tests have passed.

PR template adapted from the Python attrs project.

Signed-off-by: Martin Auer <martin.auer97@gmail.com>
Signed-off-by: Martin Auer <martin.auer97@gmail.com>
Signed-off-by: Martin Auer <martin.auer97@gmail.com>
Signed-off-by: Martin Auer <martin.auer97@gmail.com>
Signed-off-by: Martin Auer <martin.auer97@gmail.com>
@auer-martin auer-martin changed the title Feat/w3c anoncreds support feat: w3c anoncreds support Mar 19, 2024
Signed-off-by: Martin Auer <martin.auer97@gmail.com>
Signed-off-by: Martin Auer <martin.auer97@gmail.com>
Signed-off-by: Martin Auer <martin.auer97@gmail.com>
Copy link
Contributor

@TimoGlastra TimoGlastra left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Great stuff @auer-martin

README.md Outdated Show resolved Hide resolved
packages/legacy/core/App/utils/credential.ts Outdated Show resolved Hide resolved
packages/legacy/core/App/utils/schema.ts Outdated Show resolved Hide resolved
packages/oca/README.md Outdated Show resolved Hide resolved
packages/oca/src/legacy/resolver/oca.ts Outdated Show resolved Hide resolved
@TimoGlastra
Copy link
Contributor

Could you add a video demo where an AnonCreds credential is received using Data Integrity and shared using Presentation Exhcange?

@TimoGlastra
Copy link
Contributor

cc @cvarjao @jleach @swcurran

Signed-off-by: Martin Auer <martin.auer97@gmail.com>
Signed-off-by: Martin Auer <martin.auer97@gmail.com>
Signed-off-by: Martin Auer <martin.auer97@gmail.com>
@auer-martin
Copy link
Contributor Author

Could you add a video demo where an AnonCreds credential is received using Data Integrity and shared using Presentation Exhcange?

https://www.loom.com/share/96e7dc8f407a40b7902b0f9472ead94f

Signed-off-by: Martin Auer <martin.auer97@gmail.com>
@auer-martin auer-martin marked this pull request as ready for review March 20, 2024 08:38
Signed-off-by: Martin Auer <martin.auer97@gmail.com>
@jleach
Copy link
Contributor

jleach commented Apr 11, 2024

@auer-martin Able to fix the two conflict and well get this merged in?

fix: tests
Signed-off-by: Martin Auer <martin.auer97@gmail.com>
@auer-martin
Copy link
Contributor Author

auer-martin commented Apr 15, 2024

@auer-martin Able to fix the two conflict and well get this merged in?

@jleach done

Copy link
Contributor

@wadeking98 wadeking98 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Great work, I have some questions about the index file but other than that it looks great

Signed-off-by: Martin Auer <martin.auer97@gmail.com>
@wadeking98
Copy link
Contributor

wadeking98 commented Apr 17, 2024

it seems like the change is not backwards compatible to indy credentials. I'm getting the following error whenever I try and get an indy credential:

"name": "CredoError",
"message": "AuJrigKQGRLJajKAebTgWu:4:AuJrigKQGRLJajKAebTgWu:3:CL:209526:default:CL_ACCUM:9fc50d37-b15d-47f2-8ada-75c2249abc44 is not a valid did:indy did",

here is the demo you can use to get some example indy credentials: https://digital.gov.bc.ca/digital-trust/showcase/
Once that issue is resolved I'm happy to merge

…cy ids)

Signed-off-by: Martin Auer <martin.auer97@gmail.com>
@auer-martin
Copy link
Contributor Author

it seems like the change is not backwards compatible to indy credentials. I'm getting the following error whenever I try and get an indy credential:

"name": "CredoError",
"message": "AuJrigKQGRLJajKAebTgWu:4:AuJrigKQGRLJajKAebTgWu:3:CL:209526:default:CL_ACCUM:9fc50d37-b15d-47f2-8ada-75c2249abc44 is not a valid did:indy did",

here is the demo you can use to get some example indy credentials: https://digital.gov.bc.ca/digital-trust/showcase/ Once that issue is resolved I'm happy to merge

Nice catch! There was an issue in credo-ts that caused this. I updated the PR to use the latest credo alpha, and tested issuing and verifying with the bcgov demo, and it works now. 👍🏻

@TimoGlastra
Copy link
Contributor

@wadeking98 BTW it's OK to be on an alpha version for now. We'll be releasing 0.5.2 soon, and will make a follow up PR then to the stable version

@wadeking98
Copy link
Contributor

okay sounds good, I'll do some testing in a bit and then we'll get this merged!

@wadeking98
Copy link
Contributor

wadeking98 commented Apr 18, 2024

Okay seems to be working well in bifold, I'm still running into an issue when I link it to bc wallet but I think that must be an issue with some configuration on our end. Great work LGTM

@wadeking98 wadeking98 merged commit fd46c18 into openwallet-foundation:main Apr 18, 2024
5 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants