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

Adapt JSON serialization #19

Merged
merged 3 commits into from
May 15, 2024
Merged

Conversation

danielfett
Copy link
Contributor

@danielfett danielfett commented Mar 8, 2024

This implements JSON serialization as outlined in oauth-wg/oauth-selective-disclosure-jwt#403 and defined in oauth-wg/oauth-selective-disclosure-jwt#414

Noteworthy changes:

  • To support JSON Serialization with multiple issuer signatures:
    • In the settings.yml files for examples and test cases, issuer_key was renamed to issuer_keys and MAY be an array of keys.
    • The issuer_keys argument to the SDJWTIssuer MAY be an array of keys (but a single key is still supported, so no changes in legacy usages required)
    • The callable cb_get_issuer_key passed to SDJWTVerifier MAY return a JWKSet
  • Example/test case specification.yml files may now specify settings_override to override whatever is defined in the settings.yml

Signed-off-by: Daniel Fett <mail@danielfett.de>
@danielfett danielfett force-pushed the danielfett/new-json-serialization branch from 884f6b3 to e0e31de Compare March 8, 2024 14:48
@bc-pi
Copy link
Contributor

bc-pi commented Mar 8, 2024

  • issuer_keys argument to the SDJWTIssuer MAY be an array of keys (but a single key is still supported, so no changes in legacy usages required)

but an update to the name in the settings.yml of dependent projects (like SD-JWT VC) will be needed, no?

src/sd_jwt/common.py Outdated Show resolved Hide resolved
src/sd_jwt/common.py Outdated Show resolved Hide resolved
src/sd_jwt/common.py Outdated Show resolved Hide resolved
@c2bo
Copy link

c2bo commented Apr 6, 2024

  • issuer_keys argument to the SDJWTIssuer MAY be an array of keys (but a single key is still supported, so no changes in legacy usages required)

but an update to the name in the settings.yml of dependent projects (like SD-JWT VC) will be needed, no?

What about catching the old yaml files during parsing, converting to the correct claim names (basically issuer_key -> issuer_keys for both functions parsing yaml files) and outputting a warning that issuer_key is deprecated? That would be a very small change and not break stuff.

danielfett and others added 2 commits May 15, 2024 16:07
Co-authored-by: Giuseppe De Marco <demarcog83@gmail.com>
Signed-off-by: Daniel Fett <mail@danielfett.de>
Signed-off-by: Daniel Fett <mail@danielfett.de>
@danielfett danielfett force-pushed the danielfett/new-json-serialization branch from 367b02d to fc90af6 Compare May 15, 2024 14:16
@danielfett danielfett merged commit cde6139 into main May 15, 2024
6 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.

None yet

4 participants