Crate rjwt[−][src]
Provides an Actor
and (de)serializable Token
struct which support authenticating
Javascript Web Tokens with a custom payload. See jwt.io for more information
on the JWT spec.
The provided Actor
uses the
ECDSA
algorithm to sign tokens (using the ed25519_dalek
crate).
Example:
use std::time::{Duration, SystemTime}; use rjwt::{Actor, Token}; type Claims = (); let actor1 = Actor::new("actor1".to_string()); let actor2 = Actor::new("actor2".to_string()); let token = Token::new( "example.com".to_string(), SystemTime::now(), Duration::from_secs(30), actor1.id().to_string(), ()); let encoded = actor1.sign_token(&token).unwrap(); let decoded: Token<String, Claims> = actor1.validate(&encoded).unwrap(); assert_eq!(token, decoded); assert!(actor2.validate::<Claims>(&encoded).is_err()); println!("encoded size is {}", encoded.len());
Structs
Actor | An actor with an identifier of type |
ECSignature | Ed25519 signature. |
Error | An error encountered while handling a |
Keypair | An ed25519 keypair. |
PublicKey | An ed25519 public key. |
SecretKey | An EdDSA secret key. |
Token | A Javascript Web Token. |
Enums
ErrorKind | What type of error was encountered. |
Type Definitions
Result | The result of a |