Struct RsaParameters
pub struct RsaParameters { /* private fields */ }aws-lc and crypto and std only.Expand description
Parameters for RSA verification.
Two values are equal when they denote the same verification algorithm, e.g.
RSA_PKCS1_2048_8192_SHA256. Algorithms differing in digest algorithm,
padding scheme, RSA PSS salt length, or modulus size range compare unequal.
In short, it is equality of configuration, not equality of effective behavior.
Implementations§
§impl RsaParameters
impl RsaParameters
pub const fn with_pss_salt_length(
self,
saltlen: RsaPssSaltLength,
) -> RsaParameters
pub const fn with_pss_salt_length( self, saltlen: RsaPssSaltLength, ) -> RsaParameters
Sets the RSA-PSS salt length to the given value.
This is ignored for PKCS#1 v1.5 parameters.
Due to the requirement of 'static references to the current type in
verification APIs, it is not possible to directly give the result of
this method to them, nor simply re-borrow it. Instead either the
inline &const { rsa_param.with_pss_salt_length(...) } expression
syntax should be used, or the following if Rust below 1.79 is used:
use aws_lc_rs::signature::{self, RsaPssSaltLength};
const VERIFY_ALG: signature::RsaParameters =
signature::RSA_PSS_2048_8192_SHA256.with_pss_salt_length(RsaPssSaltLength::Custom(123));
// Now use `VERIFY_ALG` instead of `RSA_PSS_2048_8192_SHA256`.pub fn public_modulus_len(public_key: &[u8]) -> Result<u32, Unspecified>
pub fn public_modulus_len(public_key: &[u8]) -> Result<u32, Unspecified>
Parses a DER-encoded RSAPublicKey structure (RFC 8017) to determine its size in bits.
§Errors
error::Unspecified on parse error.
pub fn min_modulus_len(&self) -> u32
pub fn min_modulus_len(&self) -> u32
Minimum modulus length in bits.
pub fn max_modulus_len(&self) -> u32
pub fn max_modulus_len(&self) -> u32
Maximum modulus length in bits.
Trait Implementations§
§impl Debug for RsaParameters
impl Debug for RsaParameters
impl Eq for RsaParameters
§impl PartialEq for RsaParameters
impl PartialEq for RsaParameters
impl StructuralPartialEq for RsaParameters
§impl VerificationAlgorithm for RsaParameters
impl VerificationAlgorithm for RsaParameters
§fn verify(
&self,
public_key: Input<'_>,
msg: Input<'_>,
signature: Input<'_>,
) -> Result<(), Unspecified>
fn verify( &self, public_key: Input<'_>, msg: Input<'_>, signature: Input<'_>, ) -> Result<(), Unspecified>
please use VerificationAlgorithm::verify_sig instead
ring-sig-verify only.§fn verify_sig(
&self,
public_key: &[u8],
msg: &[u8],
signature: &[u8],
) -> Result<(), Unspecified>
fn verify_sig( &self, public_key: &[u8], msg: &[u8], signature: &[u8], ) -> Result<(), Unspecified>
§fn verify_digest_sig(
&self,
public_key: &[u8],
digest: &Digest,
signature: &[u8],
) -> Result<(), Unspecified>
fn verify_digest_sig( &self, public_key: &[u8], digest: &Digest, signature: &[u8], ) -> Result<(), Unspecified>
Auto Trait Implementations§
impl Forget for RsaParameters
impl Freeze for RsaParameters
impl Move for RsaParameters
impl RefUnwindSafe for RsaParameters
impl Send for RsaParameters
impl Sync for RsaParameters
impl Unpin for RsaParameters
impl UnsafeUnpin for RsaParameters
impl UnwindSafe for RsaParameters
Blanket Implementations§
§impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
§impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key and return true if they are equal.§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
§impl<T> FutureExt for T
impl<T> FutureExt for T
§fn with_context(self, otel_cx: Context) -> WithContext<Self> ⓘ
fn with_context(self, otel_cx: Context) -> WithContext<Self> ⓘ
§fn with_current_context(self) -> WithContext<Self> ⓘ
fn with_current_context(self) -> WithContext<Self> ⓘ
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
§fn in_current_span(self) -> Instrumented<Self> ⓘ
fn in_current_span(self) -> Instrumented<Self> ⓘ
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
T in a rama_grpc::Request§impl<T> Pointable for T
impl<T> Pointable for T
§impl<T> PolicyExt for Twhere
T: ?Sized,
impl<T> PolicyExt for Twhere
T: ?Sized,
§fn and<P, B, E>(self, other: P) -> And<T, P>
fn and<P, B, E>(self, other: P) -> And<T, P>
Policy that returns Action::Follow only if self and other return
Action::Follow. Read more