[][src]Struct serpent::Serpent

pub struct Serpent { /* fields omitted */ }

The Serpent cipher instance

Implements both a friendly u128 encryption interface as well as the common Rust crypto block_cipher_trait::BlockCipher trait for easy use in stream cipher algorithms.

Methods

impl Serpent[src]

pub fn with_binary_key(key: &[u8]) -> Option<Serpent>[src]

Constructs an instance from a little-endian binary key, only takes keys whose length are a multiple of eight bits.

pub fn with_text_key(key: &str) -> Option<Serpent>[src]

Constructs an instance from a big-endian text representation of a hexadecimal key, e.g. "abcdef0123456". Key length is assumed to be a multiple of four bits.

pub fn encrypt_block(&self, block: u128) -> u128[src]

Easy encryption of a block stored in a 128-bit little-endian integer

pub fn decrypt_block(&self, block: u128) -> u128[src]

Easy decryption of a block stored in a 128-bit little-endian integer

Trait Implementations

impl BlockCipher for Serpent[src]

Implements BlockCipher with 256-bit keys as the favoured fixed key length. Other variable key lengths are not yet implemented.

type KeySize = U32

Key size in bytes with which cipher guaranteed to be initialized

type BlockSize = U16

Size of the block in bytes

type ParBlocks = U1

Number of blocks which can be processed in parallel by cipher implementation Read more

Auto Trait Implementations

impl Send for Serpent

impl Sync for Serpent

impl Unpin for Serpent

impl UnwindSafe for Serpent

impl RefUnwindSafe for Serpent

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> Borrow<T> for T where
    T: ?Sized
[src]

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

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

impl<T> Same<T> for T

type Output = T

Should always be Self