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

Support JWT signing and verification for VCs #3

Closed
wyc opened this issue Aug 6, 2020 · 2 comments
Closed

Support JWT signing and verification for VCs #3

wyc opened this issue Aug 6, 2020 · 2 comments

Comments

@wyc
Copy link
Contributor

wyc commented Aug 6, 2020

No description provided.

@clehner
Copy link
Contributor

clehner commented Aug 20, 2020

Libraries to use

I found two JWT libraries: jsonwebtoken and jwt, and one JWK library: jsonwebkey. They all look well-maintained to me (re: #18). But jsonwebkey depends on the rust nightly toolchain for some features. @wyc would that be a blocker for depending on that library? An alternative would be to reimplement JWK but depend on one of the JWT libraries.

JWK is used by vc-test-suite to pass private keys to the implementation to generate a JWS for the VC/VP. Also, vc-data-model says an issuer URL could be a JWK.

@wyc
Copy link
Contributor Author

wyc commented Aug 20, 2020

As mentioned, we should avoid super-new libraries without significant production usage, considering how we will be working with security professionals. It should be fine to create JWK capabilities within this repository for now, and refactor out into new crates as necessary.

As for JWT, those libraries look mature enough to consider for inclusion.

clehner added a commit that referenced this issue Aug 26, 2020
Re: #3

- Pass jwt tests in vc-test-suite
- Added RSA key for testing
- Convert RSA key to DER for use with jsonwebtoken/ring
- Consolidate OneOrMany enums
- Add Error type
@wyc wyc closed this as completed Nov 23, 2020
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

No branches or pull requests

2 participants