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

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

#1023 in Cryptography

Download history 1824/week @ 2024-01-07 1395/week @ 2024-01-14 1806/week @ 2024-01-21 1417/week @ 2024-01-28 1481/week @ 2024-02-04 1312/week @ 2024-02-11 1330/week @ 2024-02-18 1242/week @ 2024-02-25 1693/week @ 2024-03-03 1765/week @ 2024-03-10 1820/week @ 2024-03-17 1441/week @ 2024-03-24 1662/week @ 2024-03-31 1171/week @ 2024-04-07 1431/week @ 2024-04-14 1429/week @ 2024-04-21

5,737 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–18MB
~229K SLoC