#jwt #jwk #key-set #jws #verification #signing #openssl

jwtk

JWT signing (JWS) and verification, with first class JWK and JWK Set (JWKS) support

8 releases

0.3.0 Aug 21, 2023
0.2.4 Jun 24, 2022
0.2.3 Apr 29, 2022
0.2.2 Jan 26, 2022
0.1.1 Aug 10, 2021

#1182 in Cryptography

Download history 2118/week @ 2024-11-14 1328/week @ 2024-11-21 1138/week @ 2024-11-28 1607/week @ 2024-12-05 1278/week @ 2024-12-12 821/week @ 2024-12-19 207/week @ 2024-12-26 1156/week @ 2025-01-02 1282/week @ 2025-01-09 1057/week @ 2025-01-16 1702/week @ 2025-01-23 2202/week @ 2025-01-30 1565/week @ 2025-02-06 1237/week @ 2025-02-13 2631/week @ 2025-02-20 2374/week @ 2025-02-27

8,306 downloads per month
Used in 2 crates

MIT license

86KB
2.5K SLoC

JWT signing (JWS) and verification, with first class JWK and JWK Set (JWKS) support.

Supports almost all JWS algorithms:

  • HS256, HS384, HS512
  • Ed25519
  • ES256, ES384, ES512, ES256K
  • RS256, RS384, RS512
  • PS256, PS384, PS512

Supports exp and nbf validations. (Other validations will not be supported, because they are mostly application specific and can be easily implemented by applications.)

Supports converting public/private keys to/from PEM/JWK. Supports working with generic keys (where the algorithm is determined at runtime), i.e. SomePrivateKey/SomePublicKey.

Uses good old openssl for crypto.

See the examples folder for some examples.

Dependencies

~3–15MB
~221K SLoC