pub struct OaepPublicEncryptingKey { /* private fields */ }
Expand description
An RSA-OAEP public key for encryption.
Implementations§
Source§impl OaepPublicEncryptingKey
impl OaepPublicEncryptingKey
Sourcepub fn new(public_key: PublicEncryptingKey) -> Result<Self, Unspecified>
pub fn new(public_key: PublicEncryptingKey) -> Result<Self, Unspecified>
Constructs an OaepPublicEncryptingKey
from a PublicEncryptingKey
.
§Errors
Unspecified
: Any error that occurs while attempting to construct an RSA-OAEP public key.
Sourcepub fn encrypt<'ciphertext>(
&self,
algorithm: &'static OaepAlgorithm,
plaintext: &[u8],
ciphertext: &'ciphertext mut [u8],
label: Option<&[u8]>,
) -> Result<&'ciphertext mut [u8], Unspecified>
pub fn encrypt<'ciphertext>( &self, algorithm: &'static OaepAlgorithm, plaintext: &[u8], ciphertext: &'ciphertext mut [u8], label: Option<&[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
For OAEP_SHA1_MGF1SHA1
, OAEP_SHA256_MGF1SHA256
, OAEP_SHA384_MGF1SHA384
, OAEP_SHA512_MGF1SHA512
The
length of output
must be greater then or equal to Self::ciphertext_size
.
§Errors
Unspecified
for any error that occurs while encryptingplaintext
.
Sourcepub fn key_size_bytes(&self) -> usize
pub fn key_size_bytes(&self) -> usize
Returns the RSA key size in bytes.
Sourcepub fn key_size_bits(&self) -> usize
pub fn key_size_bits(&self) -> usize
Returns the RSA key size in bits.
Sourcepub fn max_plaintext_size(&self, algorithm: &'static OaepAlgorithm) -> usize
pub fn max_plaintext_size(&self, algorithm: &'static OaepAlgorithm) -> usize
Returns the max plaintext that could be decrypted using this key and with the provided algorithm.
Sourcepub 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 OaepPublicEncryptingKey
impl RefUnwindSafe for OaepPublicEncryptingKey
impl !Send for OaepPublicEncryptingKey
impl !Sync for OaepPublicEncryptingKey
impl Unpin for OaepPublicEncryptingKey
impl UnwindSafe for OaepPublicEncryptingKey
Blanket Implementations§
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