pub struct StreamingAes256CbcHmacDecryptor {
buffer: Vec<u8>,
decryptor_state: DecryptorState,
}Expand description
Streaming AES-256-CBC + HMAC-SHA256 decryptor. The HMAC is verified only when
StreamingDecryptor::update is called with last_block = true; bytes returned from
earlier update calls as ChunkDecryptionResult::DecryptedChunk are decrypted but not
yet authenticated and must be treated as untrusted until the terminal
ChunkDecryptionResult::FinalDecryptedChunk is observed.
Fields§
§buffer: Vec<u8>§decryptor_state: DecryptorStateImplementations§
Source§impl StreamingAes256CbcHmacDecryptor
impl StreamingAes256CbcHmacDecryptor
pub(crate) fn try_new( key: &SymmetricCryptoKey, ) -> Result<Self, StreamCreationError>
Trait Implementations§
Auto Trait Implementations§
impl Freeze for StreamingAes256CbcHmacDecryptor
impl RefUnwindSafe for StreamingAes256CbcHmacDecryptor
impl Send for StreamingAes256CbcHmacDecryptor
impl Sync for StreamingAes256CbcHmacDecryptor
impl Unpin for StreamingAes256CbcHmacDecryptor
impl UnsafeUnpin for StreamingAes256CbcHmacDecryptor
impl UnwindSafe for StreamingAes256CbcHmacDecryptor
Blanket Implementations§
§impl<T> AnySync for T
impl<T> AnySync for T
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> CompatExt for T
impl<T> CompatExt for T
§impl<T, UT> HandleAlloc<UT> for T
impl<T, UT> HandleAlloc<UT> for T
§fn new_handle(value: Arc<T>) -> Handle
fn new_handle(value: Arc<T>) -> Handle
Create a new handle for an Arc value Read more
§unsafe fn clone_handle(handle: Handle) -> Handle
unsafe fn clone_handle(handle: Handle) -> Handle
Clone a handle Read more
§unsafe fn consume_handle(handle: Handle) -> Arc<T>
unsafe fn consume_handle(handle: Handle) -> Arc<T>
Consume a handle, getting back the initial
Arc<> Read more§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