[][src]Struct ffsend_api::crypto::key_set::KeySet

pub struct KeySet { /* fields omitted */ }

Methods

impl KeySet[src]

pub fn new(secret: Vec<u8>, iv: [u8; 12]) -> Self[src]

Construct a new key, with the given secret and iv.

pub fn from(file: &RemoteFile, password: Option<&String>) -> Self[src]

Create a key set from the given file ID and secret. This method may be used to create a key set based on a share URL.

pub fn generate(derive: bool) -> Self[src]

Generate a secure new key.

If derive is true, file, authentication and metadata keys will be derived from the generated secret.

pub fn derive(&mut self)[src]

Derive a file, authentication and metadata key.

pub fn derive_auth_password(&mut self, pass: &str, url: &Url)[src]

Derive an authentication key, with the given password and file URL. This method does not derive a (new) file and metadata key.

pub fn secret(&self) -> &[u8][src]

Get the secret key.

pub fn secret_encoded(&self) -> String[src]

Get the secret key as URL-safe base64 encoded string.

pub fn iv(&self) -> &[u8][src]

Get the input vector.

pub fn set_iv(&mut self, iv: [u8; 12])[src]

Set the input vector.

pub fn file_key(&self) -> Option<&Vec<u8>>[src]

Get the file encryption key, if derived.

pub fn auth_key(&self) -> Option<&Vec<u8>>[src]

Get the authentication encryption key, if derived.

pub fn auth_key_encoded(&self) -> Option<String>[src]

Get the authentication encryption key, if derived, as URL-safe base64 encoded string.

pub fn meta_key(&self) -> Option<&Vec<u8>>[src]

Get the metadata encryption key, if derived.

pub fn cipher() -> Cipher[src]

Get the cipher type to use in combination with these keys.

Auto Trait Implementations

impl Send for KeySet

impl Unpin for KeySet

impl Sync for KeySet

impl UnwindSafe for KeySet

impl RefUnwindSafe for KeySet

Blanket Implementations

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> From<T> for T[src]

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

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

The type returned in the event of a conversion error.

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Erased for T

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

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

impl<T> Typeable for T where
    T: Any

impl<T> Same<T> for T

type Output = T

Should always be Self