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

Add suggestions for API for batch fetching statuslists #27

Closed
paulbastian opened this issue Jun 15, 2023 · 8 comments · Fixed by #141
Closed

Add suggestions for API for batch fetching statuslists #27

paulbastian opened this issue Jun 15, 2023 · 8 comments · Fixed by #141
Assignees
Milestone

Comments

@paulbastian
Copy link
Contributor

If a verifier wants all statuslists for a specific type of Referenced Token, e.g. for offlien caching, then it would be handy, if the issuer provides a API endpoint to get those in one call, e.g. as an array.

@paulbastian
Copy link
Contributor Author

ideas from discussion with Oliver and Martijn:

  • //, and / provides a list of all URLs like a web directory
  • well-known path
  • additional URL inside the status_list claim
  • URL provided by the Issuer metadata

@awoie
Copy link
Contributor

awoie commented Apr 24, 2024

I would be supportive. I believe ISO called this the all_bucket property.

@nadalin
Copy link

nadalin commented Apr 24, 2024

I would also be supportive, this work is needed

@paulbastian
Copy link
Contributor Author

Editors are supportive as well on this feature. Do you have any preferences on how this should be achieved and why?

@paulbastian
Copy link
Contributor Author

@c2bo and I gave it some thoughts.

This is what group/pool/aggregation (best name tbd) file could look like:

{
   "status_lists" : [
      "https://example.com/statuslists/1",
      "https://example.com/statuslists/2",
      "https://example.com/statuslists/3"
   ]
}

There would be an equivalent in CBOR, depending on your Status List Token, the group/pool/aggregation must be in the same encoding.

Is it ok to keep the group/pool/aggregation unsigned? (we think so).

Most important question is how to find this file. After discussion the 4 variants mentioned above:

Option A: predefined "/status-lists" in the same path provides the group/pool/aggregation

  • Status List Providers must use a predefined URL path structure
  • requires a Referenced Token to find the group/pool/aggregation URL

Option B: well-known path

  • well-known may be hard to configure for some, especially when using CDN?
  • easier to find group/pool/aggregation, but only if Issuer = Status List Provider

Option C: additional URL inside the Referenced Token

  • two URLs
  • requires a Referenced Token to find the group/pool/aggregation URL

Option D: additional URL inside the Status List Token

  • two URLs
  • requires a Referenced Token to find the group/pool/aggregation URL
  • seems a little better than C as the Referenced Token remains smaller

Option E: URL provided by the Issuer metadata

  • easy to find the group/pool/aggregation URL
  • issuance protocol specific (seems bad)
  • this could be OpenID4VCI Issuer metadata and/or VICAL extension

Current proposal is to use both Option E to easily find the URL and Option A/D to have an protocol-agnostic way.

@c2bo
Copy link
Member

c2bo commented May 8, 2024

Paul and I discussed a bit more and will create a draft PR with option D+E for further discussions / feedback.

@c2bo c2bo self-assigned this May 8, 2024
@paulbastian paulbastian added this to the -03 milestone May 8, 2024
@paulbastian
Copy link
Contributor Author

Editors Call: Agreement that D+E seem the best options

@paulbastian
Copy link
Contributor Author

Bikeshedding:
Distribution as in CRL Distribution isn't quiet the same
URLAggregationList?

@c2bo c2bo closed this as completed in #141 Jul 8, 2024
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 a pull request may close this issue.

4 participants