Make tripleDH manipulate GenericArray<u8, N> over Vec<u8>
upgrade some of the structure contents of the KE types
This commit is contained in:
+2
-11
@@ -4,19 +4,10 @@
|
||||
// LICENSE file in the root directory of this source tree.
|
||||
|
||||
use digest::{BlockInput, FixedOutput, Reset, Update};
|
||||
use generic_array::ArrayLength;
|
||||
|
||||
/// Trait inheriting the requirements from digest::Digest for compatibility with HKDF and HMAC
|
||||
// Associated types could be simplified when they are made as defaults:
|
||||
// https://github.com/rust-lang/rust/issues/29661
|
||||
pub trait Hash: Update + BlockInput + FixedOutput + Reset + Default + Clone {
|
||||
/// The block size for the hash function
|
||||
type BlockSize: ArrayLength<u8>;
|
||||
/// The output size of the hash function
|
||||
type OutputSize: ArrayLength<u8>;
|
||||
}
|
||||
pub trait Hash: Update + BlockInput + FixedOutput + Reset + Default + Clone {}
|
||||
|
||||
impl<T: Update + BlockInput + FixedOutput + Reset + Default + Clone> Hash for T {
|
||||
type BlockSize = T::BlockSize;
|
||||
type OutputSize = T::OutputSize;
|
||||
}
|
||||
impl<T: Update + BlockInput + FixedOutput + Reset + Default + Clone> Hash for T {}
|
||||
|
||||
Reference in New Issue
Block a user