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 serialization for json and json flattened #249

Draft
wants to merge 5 commits into
base: main
Choose a base branch
from

Conversation

cre8
Copy link
Contributor

@cre8 cre8 commented Aug 20, 2024

closes #242

Since the general serialization function allows to add multiple signature, we need a new internal structure to store the information in an sd-jwt instance (right now it is managed as compact json).

This PR should introduce the serialization of compact, json or flattened json. compact is the default value to not break existing implementations.

It should be the goal to issue and present an sd-jwt as one of the three formats and all three formats should be used as an input.

I also added some tests to validate the encoding, decoding, but the expected value was generated based on the own function so it would help if someone could challenge the algorithms with the current spec.

@lukasjhan I would suggest to store the elements as an object inside the sd-jwt like the json presentation (so signatures are managed in an array)

@cre8
Copy link
Contributor Author

cre8 commented Aug 21, 2024

@lukasjhan in case of signature validation, we need to update the internal storage of signature in the JWT object: https://github.com/openwallet-foundation-labs/sd-jwt-js/blob/main/packages/core/src/jwt.ts#L117 Because for the json approach there could be multiple signatures.
I think it's better to update the signature from a string to an array instead of building multiple JWT instances and manage them somewhere else

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.

Support JWS JSON Serialization
1 participant