【每周一库】- JWT的Rust实现

本文介绍了Rust实现的JSON Web Token库,包括安装、支持的算法、使用方法、编码与解码过程,以及如何处理标头和验证。特别讨论了如何将SEC1私钥转换为PKCS8格式。
摘要由CSDN通过智能技术生成

jsonwebtoken

Rust实现的JSON Web Token库,用于安全身份验证。

安装

将以下内容加入 Cargo.toml:

jsonwebtoken = "7"
serde = {version = "1.0", features = ["derive"] }

需要Rust 1.39及以上版本

算法

这个库目前支持以下算法:

  • HS256

  • HS384

  • HS512

  • RS256

  • RS384

  • RS512

  • PS256

  • PS384

  • PS512

  • ES256

  • ES384

如何使用

引用与结构型:

use serde::{Serialize, Deserialize};
use jsonwebtoken::{encode, decode, Header, Algorithm, Validation, EncodingKey, DecodingKey};

/// 我们的声言结构型, 需要由`Serialize` 或 `Deserialize`派生
#[derive(Debug, Serialize, Deserialize)]
struct Claims {
    sub: String,
    company: String,
    exp: usize,
}

声言

声言中可被验证的字段。

#[derive(Debug, Serialize, Deserialize)]
struct Claims {
    aud: String,         // 可选。听众
    exp: usize,          // 必须。(validate_exp 在验证中默认为真值)。截止时间 (UTC 时间戳)
    iat: 
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值
>