23 lines
616 B
Markdown
23 lines
616 B
Markdown
# Basic JWT
|
|
|
|
This crate provide basic functions to:
|
|
* Sign JWT
|
|
* Parse and validate JWT
|
|
|
|
|
|
Basic usage:
|
|
|
|
```rust
|
|
let claims = ...; // note : claims must be serializable
|
|
|
|
// Generate a key pair. Public and private key are both serializable
|
|
let (pub_key, priv_key) = generate_ec384_keypair().unwrap();
|
|
|
|
// Create a JWT for the given claims (note: standard claims: sub, iss, ...) are not
|
|
// automatically added if they are missing
|
|
let jwt = sign_jwt(&priv_key, &claims).expect("Failed to sign JWT!");
|
|
|
|
// Validate signed JWT
|
|
let claims_out = validate_jwt::<Claims>(&pub_key, &jwt).expect("Failed to validate JWT!");
|
|
```
|