tc_threefish 0.1.0

Threefish-256, Threefish-512 and Threefish-1024 tweakable block ciphers, the core of Skein.
Documentation
1
2
3
4
5
6
7
8
9
10
11
12
//! The Threefish parameter contract.

use tc_block_cipher::KeyParams;

/// Supplies a Threefish key and its optional tweak.
///
/// Timing is implementation-defined; implementations should avoid
/// secret-dependent work when returning the borrowed bytes.
pub trait ThreefishParams: KeyParams {
    /// Returns a tweak or `None` for the all-zero tweak. Timing is implementation-defined.
    fn tweak(&self) -> Option<&[u8]>;
}