pub struct Cipher { /* private fields */ }
Expand description

Block cipher identifiers

Structure useful for handling an abstract representation of ciphers. Ciphers are defined foremost through their symmetric algorithm and, depending on the type of that algorithm, on a set of other values.

Implementations§

source§

impl Cipher

source

pub fn aes(mode: SymmetricMode, key_bits: u16) -> Result<Self>

Constructor for AES cipher identifier

key_bits must be one of 128, 192 or 256.

source

pub fn camellia(mode: SymmetricMode, key_bits: u16) -> Result<Self>

Constructor for Camellia cipher identifier

key_bits must be one of 128, 192 or 256.

source

pub fn tdes(mode: SymmetricMode, key_bits: u16) -> Result<Self>

Constructor for Triple DES cipher identifier

key_bits must be one of 56, 112 or 168.

source

pub fn sm4(mode: SymmetricMode) -> Self

Constructor for SM4 cipher identifier

source

pub fn xor(hash: HashingAlgorithm) -> Self

Constructor for XOR “cipher” identifier

source

pub fn object_type() -> AlgorithmIdentifier

Get general object type for symmetric ciphers.

source

pub fn key_bits(self) -> Option<u16>

Get the cipher key length.

source

pub fn mode(self) -> Option<SymmetricMode>

Get the cipher mode.

source

pub fn hash(self) -> Option<HashingAlgorithm>

Get the hash algorithm used with an XOR cipher

source

pub fn algorithm(&self) -> SymmetricAlgorithm

Get the symmetrical algorithm for the cipher.

source

pub fn aes_128_cfb() -> Self

Constructor for 128 bit AES in CFB mode.

source

pub fn aes_256_cfb() -> Self

Constructor for 256 bit AES in CFB mode.

Trait Implementations§

source§

impl Clone for Cipher

source§

fn clone(&self) -> Cipher

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl Debug for Cipher

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl TryFrom<Cipher> for SymmetricCipherParameters

§

type Error = Error

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

fn try_from(cipher: Cipher) -> Result<Self>

Performs the conversion.
source§

impl TryFrom<Cipher> for SymmetricDefinition

§

type Error = Error

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

fn try_from(cipher: Cipher) -> Result<Self>

Performs the conversion.
source§

impl TryFrom<Cipher> for SymmetricDefinitionObject

§

type Error = Error

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

fn try_from(cipher: Cipher) -> Result<Self>

Performs the conversion.
source§

impl Copy for Cipher

Auto Trait Implementations§

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> Free for T

source§

default unsafe fn free(ptr_ref: NonNull<T>)

Drops the content pointed by this pointer and frees it. Read more
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

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> ToOwned for Twhere T: Clone,

§

type Owned = T

The resulting type after obtaining ownership.
source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
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.