Struct EncryptingKey
pub struct EncryptingKey { /* private fields */ }Expand description
A cipher encryption key that does not perform block padding.
Implementations§
§impl EncryptingKey
impl EncryptingKey
pub fn ctr(key: UnboundCipherKey) -> Result<EncryptingKey, Unspecified>
pub fn ctr(key: UnboundCipherKey) -> Result<EncryptingKey, Unspecified>
Constructs an EncryptingKey operating in counter (CTR) mode using the provided key.
§Errors
Unspecified: Returned if there is an error constructing theEncryptingKey.
pub fn cfb128(key: UnboundCipherKey) -> Result<EncryptingKey, Unspecified>
pub fn cfb128(key: UnboundCipherKey) -> Result<EncryptingKey, Unspecified>
Constructs an EncryptingKey operating in cipher feedback 128-bit mode (CFB128) using the provided key.
§Errors
Unspecified: Returned if there is an error constructing theEncryptingKey.
pub fn ecb(key: UnboundCipherKey) -> Result<EncryptingKey, Unspecified>
pub fn ecb(key: UnboundCipherKey) -> Result<EncryptingKey, Unspecified>
Constructs an EncryptingKey operating in electronic code book mode (ECB) using the provided key.
§☠️ ️️️DANGER ☠️
Offered for computability purposes only. This is an extremely dangerous mode, and very likely not what you want to use.
§Errors
Unspecified: Returned if there is an error constructing theEncryptingKey.
pub fn mode(&self) -> OperatingMode
pub fn mode(&self) -> OperatingMode
Returns the cipher operating mode.
pub fn encrypt(
&self,
in_out: &mut [u8],
) -> Result<DecryptionContext, Unspecified>
pub fn encrypt( &self, in_out: &mut [u8], ) -> Result<DecryptionContext, Unspecified>
Encrypts the data provided in in_out in-place.
Returns a DecryptionContext with the randomly generated IV that was used to encrypt
the data provided.
If EncryptingKey is operating in OperatingMode::ECB, then in_out.len() must be a multiple
of the block length.
§Errors
Unspecified: Returned if cipher mode requires input to be a multiple of the block length, andin_out.len()is not. Otherwise, returned if encryption fails.
pub fn less_safe_encrypt(
&self,
in_out: &mut [u8],
context: EncryptionContext,
) -> Result<DecryptionContext, Unspecified>
pub fn less_safe_encrypt( &self, in_out: &mut [u8], context: EncryptionContext, ) -> Result<DecryptionContext, Unspecified>
Encrypts the data provided in in_out in-place using the provided EncryptionContext.
This is considered “less safe” because the caller could potentially construct
a EncryptionContext from a previously used IV (initialization vector).
Returns a DecryptionContext produced from the provided EncryptionContext.
If EncryptingKey is operating in OperatingMode::ECB, then in_out.len() must be a multiple
of the block length.
§Errors
Unspecified: Returned if cipher mode requires input to be a multiple of the block length, andin_out.len()is not. Otherwise returned if encryption fails.
Trait Implementations§
Auto Trait Implementations§
impl Freeze for EncryptingKey
impl RefUnwindSafe for EncryptingKey
impl Send for EncryptingKey
impl Sync for EncryptingKey
impl Unpin for EncryptingKey
impl UnwindSafe for EncryptingKey
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<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> 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