Struct Pkcs1PublicEncryptingKey
pub struct Pkcs1PublicEncryptingKey { /* private fields */ }
Expand description
RSA PKCS1-v1.5 public key for encryption.
Implementations§
§impl Pkcs1PublicEncryptingKey
impl Pkcs1PublicEncryptingKey
pub fn new(
public_key: PublicEncryptingKey,
) -> Result<Pkcs1PublicEncryptingKey, Unspecified>
pub fn new( public_key: PublicEncryptingKey, ) -> Result<Pkcs1PublicEncryptingKey, Unspecified>
Constructs an Pkcs1PublicEncryptingKey
from a PublicEncryptingKey
.
§Errors
Unspecified
: Any error that occurs while attempting to construct an RSA-OAEP public key.
pub fn encrypt<'ciphertext>(
&self,
plaintext: &[u8],
ciphertext: &'ciphertext mut [u8],
) -> Result<&'ciphertext mut [u8], Unspecified>
pub fn encrypt<'ciphertext>( &self, plaintext: &[u8], ciphertext: &'ciphertext mut [u8], ) -> Result<&'ciphertext mut [u8], Unspecified>
Encrypts the contents in plaintext
and writes the corresponding ciphertext to ciphertext
.
Returns the subslice of ciphertext
containing the ciphertext output.
§Max Plaintext Length
The provided length of plaintext
must be at most Self::max_plaintext_size
.
§Sizing output
The length of output
must be greater than or equal to Self::ciphertext_size
.
§Errors
Unspecified
for any error that occurs while encryptingplaintext
.
pub fn key_size_bytes(&self) -> usize
pub fn key_size_bytes(&self) -> usize
Returns the RSA key size in bytes.
pub fn key_size_bits(&self) -> usize
pub fn key_size_bits(&self) -> usize
Returns the RSA key size in bits.
pub fn max_plaintext_size(&self) -> usize
pub fn max_plaintext_size(&self) -> usize
Returns the max plaintext that could be encrypted using this key.
pub fn ciphertext_size(&self) -> usize
pub fn ciphertext_size(&self) -> usize
Returns the max ciphertext size that will be output by Self::encrypt
.
Trait Implementations§
Auto Trait Implementations§
impl Freeze for Pkcs1PublicEncryptingKey
impl RefUnwindSafe for Pkcs1PublicEncryptingKey
impl !Send for Pkcs1PublicEncryptingKey
impl !Sync for Pkcs1PublicEncryptingKey
impl Unpin for Pkcs1PublicEncryptingKey
impl UnwindSafe for Pkcs1PublicEncryptingKey
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
Mutably borrows from an owned value. Read more
§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> ⓘ
Converts
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> ⓘ
Converts
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> 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>
Create a new
Policy
that returns Action::Follow
only if self
and other
return
Action::Follow
. Read more