decentralized-identity / presentation-exchange

Specification that codifies an inter-related pair of data formats for defining proof presentations (Presentation Definition) and subsequent proof submissions (Presentation Submission)
https://identity.foundation/presentation-exchange
Apache License 2.0
84 stars 37 forks source link

Input Evaluation does not cover the case where constraints are empty #361

Closed decentralgabe closed 1 year ago

decentralgabe commented 1 year ago

https://identity.foundation/presentation-exchange/#input-evaluation

According to the data model, a Presentation Definition's Input Descriptors may contain a constraints property. This means that there are Input Descriptors without constraints.

Language is missing on how to process such Input Descriptors, which I imagine should satisfy a given format requirement, if present.

brentzundel commented 1 year ago

This makes me wonder if an Input Descriptor without a constraints property makes any sense. What does an Input Descriptor that contists of only an Id field even mean? In v1.0.0 the input descriptors would at least contain a schema property, so there was something to filter against on processing. Then we moved that to fields. . .

sounds like we've got a bug.

decentralgabe commented 1 year ago

I agree, I think Input Descriptors need to be a required field.

bumblefudge commented 1 year ago

Discussed on today's call: proposal was to make at least one constraint (any of the optional constraint types) mandatory

bumblefudge commented 1 year ago

(luckily no changes to the schema are needed! this only affects spec text) - PR will include a new test vector to confirm that schemas currently work this way