Struct jwt_compact::alg::Rsa [−][src]
pub struct Rsa { /* fields omitted */ }with_rsa only.Expand description
Integrity algorithm using RSA digital signatures.
Depending on the variation, the algorithm employs PKCS#1 v1.5 or PSS padding and
one of the hash functions from the SHA-2 family: SHA-256, SHA-384, or SHA-512.
See RFC 7518 for more details. Depending on the chosen parameters,
the name of the algorithm is one of RS256, RS384, RS512, PS256, PS384, PS512:
R/Pdenote the padding scheme: PKCS#1 v1.5 forR, PSS forP256/384/512denote the hash function
The length of RSA keys is not unequivocally specified by the algorithm; nevertheless,
it MUST be at least 2048 bits as per RFC 7518. To minimize risks of misconfiguration,
use StrongAlg wrapper around Rsa:
const ALG: StrongAlg<Rsa> = StrongAlg(Rsa::rs256());
// `ALG` will not support RSA keys with unsecure lengths by design!Implementations
pub fn generate<R: CryptoRng + RngCore>(
rng: &mut R,
modulus_bits: ModulusBits
) -> Result<(StrongKey<RsaPrivateKey>, StrongKey<RsaPublicKey>)>
pub fn generate<R: CryptoRng + RngCore>(
rng: &mut R,
modulus_bits: ModulusBits
) -> Result<(StrongKey<RsaPrivateKey>, StrongKey<RsaPublicKey>)>
Generates a new key pair with the specified modulus bit length (aka key length).
Trait Implementations
type SigningKey = RsaPrivateKey
type SigningKey = RsaPrivateKey
Key used when issuing new tokens.
type VerifyingKey = RsaPublicKey
type VerifyingKey = RsaPublicKey
Key used when verifying tokens. May coincide with Self::SigningKey for symmetric
algorithms (e.g., HS*). Read more
type Signature = RsaSignature
type Signature = RsaSignature
Signature produced by the algorithm.
Returns the name of this algorithm, as mentioned in the alg field of the JWT header.
Signs a message with the signing_key.
fn verify_signature(
&self,
signature: &Self::Signature,
verifying_key: &Self::VerifyingKey,
message: &[u8]
) -> bool
fn verify_signature(
&self,
signature: &Self::Signature,
verifying_key: &Self::VerifyingKey,
message: &[u8]
) -> bool
Verifies the message against the signature and verifying_key.
Auto Trait Implementations
impl RefUnwindSafe for Rsa
impl UnwindSafe for Rsa
Blanket Implementations
Mutably borrows from an owned value. Read more
