Closed jleach closed 1 year ago
Yep makes sense! However, in this case the revoked credentials are just as usable as the non-revoked credentials.
Maybe the UI should nit show Revoked in red in the overview if it doesn't matter? Sometimes it's okay it is revoked (e.g prove you are or ever were a member of our gym).
We ask AFJ for revoked credentials even if they don't work because we want to show the user why the proof failed. Showing them they don't have a cred to make a proof work doesn't help them fix the problem.
I'm proposing that, when doing a proof, if there are both revoked and non-revoked credentials AFJ should favour the non-revoked credential over those that are revoked. To resolve this AFJ could:
a) If the schema is the same only return non-revoked matches; or b) If all results must be returned, sort the revoked credentials to be first so they are preferred.
Proposed API:
This is the data from
credentials.proofFormats.indy?.requestedAttributes
:This is what the Bifold UI looks like:
Actual Behaviour
Here are the 3 credentials displayed in the Aries Bifold wallet in the order of them being received:
This is what a proof match looks like for said credential. The proof does not specify any requirement on revocation status:
Expected Behaviour
If all credentials are equal, the non-revoked credential should be favoured above those that are revoked.