Struct ubiq::decryption::Decryption

source ·
pub struct Decryption<'a> { /* private fields */ }
Expand description

Structure encompassing parameters used for decrypting data

Using this structure, a caller is able to decrypt a ciphertext by feeding it to the member functions in a piecewise fashion (or by doing so all at once). In addition, if multiple, unique ciphertexts were encrypted with the same key, this object can be used to decrypt them without having to communicate with the server multiple times.

Implementations§

source§

impl Decryption<'_>

source

pub fn new<'a>(creds: &Credentials) -> Result<Decryption<'a>>

Create a new decryption object

source

pub fn begin(&mut self) -> Result<Vec<u8>>

Begin a new decryption “session”

Decryption of a ciphertext consists of a begin(), some number of update() calls, and an end(). It is an error to call begin() more than once without an intervening end().

source

pub fn update(&mut self, ct: &[u8]) -> Result<Vec<u8>>

Input (some) ciphertext for decryption

The update function writes data into the Decryption object. Plaintext data may or may not be returned with each call to this function.

source

pub fn end(&mut self) -> Result<Vec<u8>>

End a decryption “session”

After all ciphertext has been written to the object via the update() function, the caller must call this function to finalize the decryption. Any remaining plaintext will be returned. If the algorithm in use is authenticated, an error may be returned instead if the authentication process fails.

Note that if the algorithm in use is authenticated, any error in the authentication process will not be reported until this function is called. Therefore, when using an authenticated algorithm, output should not be trusted until this function returns successfully.

source

pub fn cipher(&mut self, ct: &[u8]) -> Result<Vec<u8>>

Decrypt a single ciphertext in one shot

This function is equivalent to calling begin(), update(ct), and end()

Auto Trait Implementations§

§

impl<'a> !RefUnwindSafe for Decryption<'a>

§

impl<'a> !Send for Decryption<'a>

§

impl<'a> !Sync for Decryption<'a>

§

impl<'a> Unpin for Decryption<'a>

§

impl<'a> !UnwindSafe for Decryption<'a>

Blanket Implementations§

source§

impl<T> Any for Twhere T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for Twhere T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for Twhere T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

§

impl<T> Instrument for T

§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided [Span], returning an Instrumented wrapper. Read more
§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
source§

impl<T, U> Into<U> for Twhere U: From<T>,

source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

source§

impl<T> Same<T> for T

§

type Output = T

Should always be Self
source§

impl<T, U> TryFrom<U> for Twhere U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

impl<T, U> TryInto<U> for Twhere U: TryFrom<T>,

§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
§

impl<V, T> VZip<V> for Twhere V: MultiLane<T>,

§

fn vzip(self) -> V

§

impl<T> WithSubscriber for T

§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a [WithDispatch] wrapper. Read more