decentralized-identity / veramo

A JavaScript Framework for Verifiable Data
https://veramo.io
Apache License 2.0
414 stars 130 forks source link

feat(credential-w3c): added support bbs proof format #1383

Closed veromassera closed 2 weeks ago

veromassera commented 1 month ago

What is being changed

This PR extends the credential-w3c actionHandler logic by adding support for bbs signatures. In this way, it will be possible to generate plugins that implement the creation of Verifiable Credentials and Verifiable Presentations, as well as their verification using bbs-type signatures.

According to what was discussed here: https://discord.com/channels/878293684620234752/1220477267172659360/1227352488579961003

Quality

Check all that apply:

Details

These changes only extend the logic of the action-handler, they do not include the implementation of the plugin.

veromassera commented 3 weeks ago

As we discussed in Discord, I think this is a good approach for now.

I do think that a more flexible solution will be needed quickly, in order to let developers more easily iterate on new proof format support. I'll create an issue for this, but I think this PR is good to merge.

Hi, I totally agree, I think that the algorithm needs to be changed a little so that it can be extended without having to touch the central code. This change is just so we can 'quickly' implement a plugin for this type of proof format.

veromassera commented 3 weeks ago

This looks interesting and is a reasonable approach to the current limitations of the credentials API in Veramo.

Do you have an implementation of this plugin that you can link to?

Yes, I developed a sample plugin to test signing and verification with BBS, but for now it has several hardcoded elements such as the keys and the VC subject

veromassera commented 3 weeks ago

Hi @nickreynolds @mirceanis, I've noticed that some pre-merge checks failed for this pull request. However, I believe these errors are unrelated to the changes introduced in the PR itself.

Could you please advise if this is a common occurrence and provide some guidance on how to proceed?

Thanks in advance

nickreynolds commented 3 weeks ago

Hi @nickreynolds @mirceanis, I've noticed that some pre-merge checks failed for this pull request. However, I believe these errors are unrelated to the changes introduced in the PR itself.

Could you please advise if this is a common occurrence and provide some guidance on how to proceed?

Thanks in advance

@veromassera I believe that yes those failures were unrelated and should be fixed by #1391

If you rebase your branch against the latest next and push that again, it should re-run the checks and they should all pass