pub struct AesGcmFileDecryptor { /* private fields */ }Expand description
Holds the decryption material for a single encrypted file.
Created from a plaintext DEK and AAD prefix, then used to wrap an encrypted file reader for transparent decryption on read.
Implementations§
Source§impl AesGcmFileDecryptor
impl AesGcmFileDecryptor
Sourcepub fn new(dek: &[u8], aad_prefix: impl Into<Box<[u8]>>) -> Result<Self>
pub fn new(dek: &[u8], aad_prefix: impl Into<Box<[u8]>>) -> Result<Self>
Creates a new AesGcmFileDecryptor from a plaintext DEK and AAD prefix.
Sourcepub fn wrap_reader(
&self,
reader: Box<dyn FileRead>,
encrypted_file_length: u64,
) -> Result<Box<dyn FileRead>>
pub fn wrap_reader( &self, reader: Box<dyn FileRead>, encrypted_file_length: u64, ) -> Result<Box<dyn FileRead>>
Wraps a raw encrypted-file reader in a decrypting AesGcmFileRead.
Sourcepub fn plaintext_length(&self, encrypted_file_length: u64) -> Result<u64>
pub fn plaintext_length(&self, encrypted_file_length: u64) -> Result<u64>
Calculates the plaintext length from an encrypted file’s total length.
Trait Implementations§
Auto Trait Implementations§
impl Freeze for AesGcmFileDecryptor
impl RefUnwindSafe for AesGcmFileDecryptor
impl Send for AesGcmFileDecryptor
impl Sync for AesGcmFileDecryptor
impl Unpin for AesGcmFileDecryptor
impl UnwindSafe for AesGcmFileDecryptor
Blanket Implementations§
§impl<U> As for U
impl<U> As for U
§fn as_<T>(self) -> Twhere
T: CastFrom<U>,
fn as_<T>(self) -> Twhere
T: CastFrom<U>,
Casts
self to type T. The semantics of numeric casting with the as operator are followed, so <T as As>::as_::<U> can be used in the same way as T as U for numeric conversions. Read moreSource§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> Downcast for Twhere
T: AsAny + ?Sized,
impl<T> Downcast for Twhere
T: AsAny + ?Sized,
§fn downcast_ref<T>(&self) -> Option<&T>where
T: AsAny,
fn downcast_ref<T>(&self) -> Option<&T>where
T: AsAny,
Forward to the method defined on the type
Any.§fn downcast_mut<T>(&mut self) -> Option<&mut T>where
T: AsAny,
fn downcast_mut<T>(&mut self) -> Option<&mut T>where
T: AsAny,
Forward to the method defined on the type
Any.§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