pub trait Serialize {
type Len: ArrayLength;
// Required method
fn serialize(&self) -> GenericArray<u8, Self::Len>;
}Expand description
Serialization trait for key exchange types.
Required Associated Types§
Sourcetype Len: ArrayLength
type Len: ArrayLength
The length of the serialized types.
Required Methods§
Dyn Compatibility§
This trait is dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety".
Implementors§
Source§impl<CS: CipherSuite, KE: Group> Serialize for CachedMessage<CS, KE>where
<<CS::OprfCs as CipherSuite>::Group as Group>::ElemLen: ArrayLength + Add<Sum<U32, KE::PkLen>> + Add<U32>,
Sum<<<CS::OprfCs as CipherSuite>::Group as Group>::ElemLen, Sum<U32, KE::PkLen>>: ArrayLength + Add<Sum<Sum<<<CS::OprfCs as CipherSuite>::Group as Group>::ElemLen, U32>, Sum<Sum<<<<CS::OprfCs as CipherSuite>::Hash as CoreProxy>::Core as OutputSizeUser>::OutputSize, U32>, <<CS::KeyExchange as KeyExchange>::Group as Group>::PkLen>>>,
Sum<Sum<<<CS::OprfCs as CipherSuite>::Group as Group>::ElemLen, Sum<U32, KE::PkLen>>, Sum<Sum<<<CS::OprfCs as CipherSuite>::Group as Group>::ElemLen, U32>, Sum<Sum<<<<CS::OprfCs as CipherSuite>::Hash as CoreProxy>::Core as OutputSizeUser>::OutputSize, U32>, <<CS::KeyExchange as KeyExchange>::Group as Group>::PkLen>>>: ArrayLength + Add<U32>,
Sum<Sum<Sum<<<CS::OprfCs as CipherSuite>::Group as Group>::ElemLen, Sum<U32, KE::PkLen>>, Sum<Sum<<<CS::OprfCs as CipherSuite>::Group as Group>::ElemLen, U32>, Sum<Sum<<<<CS::OprfCs as CipherSuite>::Hash as CoreProxy>::Core as OutputSizeUser>::OutputSize, U32>, <<CS::KeyExchange as KeyExchange>::Group as Group>::PkLen>>>, U32>: ArrayLength + Add<KE::PkLen>,
Sum<Sum<Sum<Sum<<<CS::OprfCs as CipherSuite>::Group as Group>::ElemLen, Sum<U32, KE::PkLen>>, Sum<Sum<<<CS::OprfCs as CipherSuite>::Group as Group>::ElemLen, U32>, Sum<Sum<<<<CS::OprfCs as CipherSuite>::Hash as CoreProxy>::Core as OutputSizeUser>::OutputSize, U32>, <<CS::KeyExchange as KeyExchange>::Group as Group>::PkLen>>>, U32>, KE::PkLen>: ArrayLength + Add<<<<CS::KeyExchange as KeyExchange>::Hash as CoreProxy>::Core as OutputSizeUser>::OutputSize>,
Sum<Sum<Sum<Sum<Sum<<<CS::OprfCs as CipherSuite>::Group as Group>::ElemLen, Sum<U32, KE::PkLen>>, Sum<Sum<<<CS::OprfCs as CipherSuite>::Group as Group>::ElemLen, U32>, Sum<Sum<<<<CS::OprfCs as CipherSuite>::Hash as CoreProxy>::Core as OutputSizeUser>::OutputSize, U32>, <<CS::KeyExchange as KeyExchange>::Group as Group>::PkLen>>>, U32>, KE::PkLen>, <<<CS::KeyExchange as KeyExchange>::Hash as CoreProxy>::Core as OutputSizeUser>::OutputSize>: ArrayLength,
U32: Add<KE::PkLen>,
Sum<U32, KE::PkLen>: ArrayLength,
Sum<<<CS::OprfCs as CipherSuite>::Group as Group>::ElemLen, U32>: ArrayLength + Add<Sum<Sum<<<<CS::OprfCs as CipherSuite>::Hash as CoreProxy>::Core as OutputSizeUser>::OutputSize, U32>, <<CS::KeyExchange as KeyExchange>::Group as Group>::PkLen>>,
Sum<Sum<<<CS::OprfCs as CipherSuite>::Group as Group>::ElemLen, U32>, Sum<Sum<<<<CS::OprfCs as CipherSuite>::Hash as CoreProxy>::Core as OutputSizeUser>::OutputSize, U32>, <<CS::KeyExchange as KeyExchange>::Group as Group>::PkLen>>: ArrayLength,
impl<CS: CipherSuite, KE: Group> Serialize for CachedMessage<CS, KE>where
<<CS::OprfCs as CipherSuite>::Group as Group>::ElemLen: ArrayLength + Add<Sum<U32, KE::PkLen>> + Add<U32>,
Sum<<<CS::OprfCs as CipherSuite>::Group as Group>::ElemLen, Sum<U32, KE::PkLen>>: ArrayLength + Add<Sum<Sum<<<CS::OprfCs as CipherSuite>::Group as Group>::ElemLen, U32>, Sum<Sum<<<<CS::OprfCs as CipherSuite>::Hash as CoreProxy>::Core as OutputSizeUser>::OutputSize, U32>, <<CS::KeyExchange as KeyExchange>::Group as Group>::PkLen>>>,
Sum<Sum<<<CS::OprfCs as CipherSuite>::Group as Group>::ElemLen, Sum<U32, KE::PkLen>>, Sum<Sum<<<CS::OprfCs as CipherSuite>::Group as Group>::ElemLen, U32>, Sum<Sum<<<<CS::OprfCs as CipherSuite>::Hash as CoreProxy>::Core as OutputSizeUser>::OutputSize, U32>, <<CS::KeyExchange as KeyExchange>::Group as Group>::PkLen>>>: ArrayLength + Add<U32>,
Sum<Sum<Sum<<<CS::OprfCs as CipherSuite>::Group as Group>::ElemLen, Sum<U32, KE::PkLen>>, Sum<Sum<<<CS::OprfCs as CipherSuite>::Group as Group>::ElemLen, U32>, Sum<Sum<<<<CS::OprfCs as CipherSuite>::Hash as CoreProxy>::Core as OutputSizeUser>::OutputSize, U32>, <<CS::KeyExchange as KeyExchange>::Group as Group>::PkLen>>>, U32>: ArrayLength + Add<KE::PkLen>,
Sum<Sum<Sum<Sum<<<CS::OprfCs as CipherSuite>::Group as Group>::ElemLen, Sum<U32, KE::PkLen>>, Sum<Sum<<<CS::OprfCs as CipherSuite>::Group as Group>::ElemLen, U32>, Sum<Sum<<<<CS::OprfCs as CipherSuite>::Hash as CoreProxy>::Core as OutputSizeUser>::OutputSize, U32>, <<CS::KeyExchange as KeyExchange>::Group as Group>::PkLen>>>, U32>, KE::PkLen>: ArrayLength + Add<<<<CS::KeyExchange as KeyExchange>::Hash as CoreProxy>::Core as OutputSizeUser>::OutputSize>,
Sum<Sum<Sum<Sum<Sum<<<CS::OprfCs as CipherSuite>::Group as Group>::ElemLen, Sum<U32, KE::PkLen>>, Sum<Sum<<<CS::OprfCs as CipherSuite>::Group as Group>::ElemLen, U32>, Sum<Sum<<<<CS::OprfCs as CipherSuite>::Hash as CoreProxy>::Core as OutputSizeUser>::OutputSize, U32>, <<CS::KeyExchange as KeyExchange>::Group as Group>::PkLen>>>, U32>, KE::PkLen>, <<<CS::KeyExchange as KeyExchange>::Hash as CoreProxy>::Core as OutputSizeUser>::OutputSize>: ArrayLength,
U32: Add<KE::PkLen>,
Sum<U32, KE::PkLen>: ArrayLength,
Sum<<<CS::OprfCs as CipherSuite>::Group as Group>::ElemLen, U32>: ArrayLength + Add<Sum<Sum<<<<CS::OprfCs as CipherSuite>::Hash as CoreProxy>::Core as OutputSizeUser>::OutputSize, U32>, <<CS::KeyExchange as KeyExchange>::Group as Group>::PkLen>>,
Sum<Sum<<<CS::OprfCs as CipherSuite>::Group as Group>::ElemLen, U32>, Sum<Sum<<<<CS::OprfCs as CipherSuite>::Hash as CoreProxy>::Core as OutputSizeUser>::OutputSize, U32>, <<CS::KeyExchange as KeyExchange>::Group as Group>::PkLen>>: ArrayLength,
type Len = <<<<<<<<CS as CipherSuite>::OprfCs as CipherSuite>::Group as Group>::ElemLen as Add<<UInt<UInt<UInt<UInt<UInt<UInt<UTerm, B1>, B0>, B0>, B0>, B0>, B0> as Add<<KE as Group>::PkLen>>::Output>>::Output as Add<<<<<<CS as CipherSuite>::OprfCs as CipherSuite>::Group as Group>::ElemLen as Add<UInt<UInt<UInt<UInt<UInt<UInt<UTerm, B1>, B0>, B0>, B0>, B0>, B0>>>::Output as Add<<<<<<<CS as CipherSuite>::OprfCs as CipherSuite>::Hash as CoreProxy>::Core as OutputSizeUser>::OutputSize as Add<UInt<UInt<UInt<UInt<UInt<UInt<UTerm, B1>, B0>, B0>, B0>, B0>, B0>>>::Output as Add<<<<CS as CipherSuite>::KeyExchange as KeyExchange>::Group as Group>::PkLen>>::Output>>::Output>>::Output as Add<UInt<UInt<UInt<UInt<UInt<UInt<UTerm, B1>, B0>, B0>, B0>, B0>, B0>>>::Output as Add<<KE as Group>::PkLen>>::Output as Add<<<<<CS as CipherSuite>::KeyExchange as KeyExchange>::Hash as CoreProxy>::Core as OutputSizeUser>::OutputSize>>::Output
Source§impl<CS: CipherSuite, SIG: SignatureProtocol, KE: Group> Serialize for opaque_vx::key_exchange::sigma_i::Ke2State<CS, SIG, KE>where
SIG::VerifyState<CS, KE>: Serialize,
<<<CS::KeyExchange as KeyExchange>::Hash as CoreProxy>::Core as OutputSizeUser>::OutputSize: ArrayLength,
<SIG::Group as Group>::PkLen: Add<<<<CS::KeyExchange as KeyExchange>::Hash as CoreProxy>::Core as OutputSizeUser>::OutputSize>,
Sum<<SIG::Group as Group>::PkLen, <<<CS::KeyExchange as KeyExchange>::Hash as CoreProxy>::Core as OutputSizeUser>::OutputSize>: ArrayLength + Add<<SIG::VerifyState<CS, KE> as Serialize>::Len>,
Sum<Sum<<SIG::Group as Group>::PkLen, <<<CS::KeyExchange as KeyExchange>::Hash as CoreProxy>::Core as OutputSizeUser>::OutputSize>, <SIG::VerifyState<CS, KE> as Serialize>::Len>: ArrayLength + Add<<<<CS::KeyExchange as KeyExchange>::Hash as CoreProxy>::Core as OutputSizeUser>::OutputSize>,
Sum<Sum<Sum<<SIG::Group as Group>::PkLen, <<<CS::KeyExchange as KeyExchange>::Hash as CoreProxy>::Core as OutputSizeUser>::OutputSize>, <SIG::VerifyState<CS, KE> as Serialize>::Len>, <<<CS::KeyExchange as KeyExchange>::Hash as CoreProxy>::Core as OutputSizeUser>::OutputSize>: ArrayLength,
impl<CS: CipherSuite, SIG: SignatureProtocol, KE: Group> Serialize for opaque_vx::key_exchange::sigma_i::Ke2State<CS, SIG, KE>where
SIG::VerifyState<CS, KE>: Serialize,
<<<CS::KeyExchange as KeyExchange>::Hash as CoreProxy>::Core as OutputSizeUser>::OutputSize: ArrayLength,
<SIG::Group as Group>::PkLen: Add<<<<CS::KeyExchange as KeyExchange>::Hash as CoreProxy>::Core as OutputSizeUser>::OutputSize>,
Sum<<SIG::Group as Group>::PkLen, <<<CS::KeyExchange as KeyExchange>::Hash as CoreProxy>::Core as OutputSizeUser>::OutputSize>: ArrayLength + Add<<SIG::VerifyState<CS, KE> as Serialize>::Len>,
Sum<Sum<<SIG::Group as Group>::PkLen, <<<CS::KeyExchange as KeyExchange>::Hash as CoreProxy>::Core as OutputSizeUser>::OutputSize>, <SIG::VerifyState<CS, KE> as Serialize>::Len>: ArrayLength + Add<<<<CS::KeyExchange as KeyExchange>::Hash as CoreProxy>::Core as OutputSizeUser>::OutputSize>,
Sum<Sum<Sum<<SIG::Group as Group>::PkLen, <<<CS::KeyExchange as KeyExchange>::Hash as CoreProxy>::Core as OutputSizeUser>::OutputSize>, <SIG::VerifyState<CS, KE> as Serialize>::Len>, <<<CS::KeyExchange as KeyExchange>::Hash as CoreProxy>::Core as OutputSizeUser>::OutputSize>: ArrayLength,
type Len = <<<<<SIG as SignatureProtocol>::Group as Group>::PkLen as Add<<<<<CS as CipherSuite>::KeyExchange as KeyExchange>::Hash as CoreProxy>::Core as OutputSizeUser>::OutputSize>>::Output as Add<<<SIG as SignatureProtocol>::VerifyState<CS, KE> as Serialize>::Len>>::Output as Add<<<<<CS as CipherSuite>::KeyExchange as KeyExchange>::Hash as CoreProxy>::Core as OutputSizeUser>::OutputSize>>::Output
Source§impl<CS: CipherSuite> Serialize for SerializedCredentialRequest<CS>
impl<CS: CipherSuite> Serialize for SerializedCredentialRequest<CS>
type Len = <<<CS as CipherSuite>::OprfCs as CipherSuite>::Group as Group>::ElemLen
Source§impl<CS: CipherSuite> Serialize for SerializedCredentialResponse<CS>where
<<CS::OprfCs as CipherSuite>::Group as Group>::ElemLen: Add<U32>,
Sum<<<CS::OprfCs as CipherSuite>::Group as Group>::ElemLen, U32>: ArrayLength + Add<Sum<Sum<<<<CS::OprfCs as CipherSuite>::Hash as CoreProxy>::Core as OutputSizeUser>::OutputSize, U32>, <<CS::KeyExchange as KeyExchange>::Group as Group>::PkLen>>,
Sum<Sum<<<CS::OprfCs as CipherSuite>::Group as Group>::ElemLen, U32>, Sum<Sum<<<<CS::OprfCs as CipherSuite>::Hash as CoreProxy>::Core as OutputSizeUser>::OutputSize, U32>, <<CS::KeyExchange as KeyExchange>::Group as Group>::PkLen>>: ArrayLength,
impl<CS: CipherSuite> Serialize for SerializedCredentialResponse<CS>where
<<CS::OprfCs as CipherSuite>::Group as Group>::ElemLen: Add<U32>,
Sum<<<CS::OprfCs as CipherSuite>::Group as Group>::ElemLen, U32>: ArrayLength + Add<Sum<Sum<<<<CS::OprfCs as CipherSuite>::Hash as CoreProxy>::Core as OutputSizeUser>::OutputSize, U32>, <<CS::KeyExchange as KeyExchange>::Group as Group>::PkLen>>,
Sum<Sum<<<CS::OprfCs as CipherSuite>::Group as Group>::ElemLen, U32>, Sum<Sum<<<<CS::OprfCs as CipherSuite>::Hash as CoreProxy>::Core as OutputSizeUser>::OutputSize, U32>, <<CS::KeyExchange as KeyExchange>::Group as Group>::PkLen>>: ArrayLength,
type Len = <<<<<CS as CipherSuite>::OprfCs as CipherSuite>::Group as Group>::ElemLen as Add<UInt<UInt<UInt<UInt<UInt<UInt<UTerm, B1>, B0>, B0>, B0>, B0>, B0>>>::Output as Add<<<<<<<CS as CipherSuite>::OprfCs as CipherSuite>::Hash as CoreProxy>::Core as OutputSizeUser>::OutputSize as Add<UInt<UInt<UInt<UInt<UInt<UInt<UTerm, B1>, B0>, B0>, B0>, B0>, B0>>>::Output as Add<<<<CS as CipherSuite>::KeyExchange as KeyExchange>::Group as Group>::PkLen>>::Output>>::Output
Source§impl<G: Group, H: Hash, K: KemCoreWrapper> Serialize for KemKe2Message<G, H, K>where
H::Core: ProxyHash,
<<H as CoreProxy>::Core as SmallBlockSizeUser>::_BlockSize: IsLess<U256> + Cmp<U256>,
Le<<<H as CoreProxy>::Core as SmallBlockSizeUser>::_BlockSize, U256>: NonZero,
<<H as CoreProxy>::Core as OutputSizeUser>::OutputSize: ArrayLength,
U32: Add<G::PkLen>,
Sum<U32, G::PkLen>: ArrayLength + Add<<<H as CoreProxy>::Core as OutputSizeUser>::OutputSize>,
Sum<Sum<U32, G::PkLen>, <<H as CoreProxy>::Core as OutputSizeUser>::OutputSize>: ArrayLength,
Ke2Message<G, H>: Serialize,
<Ke2Message<G, H> as Serialize>::Len: Add<K::CiphertextLen>,
<<Ke2Message<G, H> as Serialize>::Len as Add<K::CiphertextLen>>::Output: ArrayLength,
Available on crate feature kem only.
impl<G: Group, H: Hash, K: KemCoreWrapper> Serialize for KemKe2Message<G, H, K>where
H::Core: ProxyHash,
<<H as CoreProxy>::Core as SmallBlockSizeUser>::_BlockSize: IsLess<U256> + Cmp<U256>,
Le<<<H as CoreProxy>::Core as SmallBlockSizeUser>::_BlockSize, U256>: NonZero,
<<H as CoreProxy>::Core as OutputSizeUser>::OutputSize: ArrayLength,
U32: Add<G::PkLen>,
Sum<U32, G::PkLen>: ArrayLength + Add<<<H as CoreProxy>::Core as OutputSizeUser>::OutputSize>,
Sum<Sum<U32, G::PkLen>, <<H as CoreProxy>::Core as OutputSizeUser>::OutputSize>: ArrayLength,
Ke2Message<G, H>: Serialize,
<Ke2Message<G, H> as Serialize>::Len: Add<K::CiphertextLen>,
<<Ke2Message<G, H> as Serialize>::Len as Add<K::CiphertextLen>>::Output: ArrayLength,
Available on crate feature
kem only.type Len = <<Ke2Message<G, H> as Serialize>::Len as Add<<K as KemCoreWrapper>::CiphertextLen>>::Output
Source§impl<G: Group, K: KemCoreWrapper> Serialize for KemKe1Message<G, K>where
Ke1Message<G>: Serialize,
<Ke1Message<G> as Serialize>::Len: Add<K::EncapsulationKeyLen>,
Sum<<Ke1Message<G> as Serialize>::Len, K::EncapsulationKeyLen>: ArrayLength,
Available on crate feature kem only.
impl<G: Group, K: KemCoreWrapper> Serialize for KemKe1Message<G, K>where
Ke1Message<G>: Serialize,
<Ke1Message<G> as Serialize>::Len: Add<K::EncapsulationKeyLen>,
Sum<<Ke1Message<G> as Serialize>::Len, K::EncapsulationKeyLen>: ArrayLength,
Available on crate feature
kem only.type Len = <<Ke1Message<G> as Serialize>::Len as Add<<K as KemCoreWrapper>::EncapsulationKeyLen>>::Output
Source§impl<G: Group, K: KemCoreWrapper> Serialize for KemKe1State<G, K>where
Ke1State<G>: Serialize,
<Ke1State<G> as Serialize>::Len: Add<K::DecapsulationKeyLen>,
Sum<<Ke1State<G> as Serialize>::Len, K::DecapsulationKeyLen>: ArrayLength,
Available on crate feature kem only.
impl<G: Group, K: KemCoreWrapper> Serialize for KemKe1State<G, K>where
Ke1State<G>: Serialize,
<Ke1State<G> as Serialize>::Len: Add<K::DecapsulationKeyLen>,
Sum<<Ke1State<G> as Serialize>::Len, K::DecapsulationKeyLen>: ArrayLength,
Available on crate feature
kem only.type Len = <<Ke1State<G> as Serialize>::Len as Add<<K as KemCoreWrapper>::DecapsulationKeyLen>>::Output
Source§impl<G: Group> Serialize for Ke1Message<G>
impl<G: Group> Serialize for Ke1Message<G>
Source§impl<H: Hash, G: Group> Serialize for opaque_vx::key_exchange::tripledh::Ke2Message<G, H>where
H::Core: ProxyHash,
<<H as CoreProxy>::Core as SmallBlockSizeUser>::_BlockSize: IsLess<U256>,
Le<<<H as CoreProxy>::Core as SmallBlockSizeUser>::_BlockSize, U256>: NonZero,
<<H as CoreProxy>::Core as OutputSizeUser>::OutputSize: ArrayLength,
U32: Add<G::PkLen>,
Sum<U32, G::PkLen>: ArrayLength + Add<<<H as CoreProxy>::Core as OutputSizeUser>::OutputSize>,
Sum<Sum<U32, G::PkLen>, <<H as CoreProxy>::Core as OutputSizeUser>::OutputSize>: ArrayLength,
impl<H: Hash, G: Group> Serialize for opaque_vx::key_exchange::tripledh::Ke2Message<G, H>where
H::Core: ProxyHash,
<<H as CoreProxy>::Core as SmallBlockSizeUser>::_BlockSize: IsLess<U256>,
Le<<<H as CoreProxy>::Core as SmallBlockSizeUser>::_BlockSize, U256>: NonZero,
<<H as CoreProxy>::Core as OutputSizeUser>::OutputSize: ArrayLength,
U32: Add<G::PkLen>,
Sum<U32, G::PkLen>: ArrayLength + Add<<<H as CoreProxy>::Core as OutputSizeUser>::OutputSize>,
Sum<Sum<U32, G::PkLen>, <<H as CoreProxy>::Core as OutputSizeUser>::OutputSize>: ArrayLength,
Source§impl<H: Hash> Serialize for opaque_vx::key_exchange::tripledh::Ke2State<H>where
H::Core: ProxyHash,
<<H as CoreProxy>::Core as SmallBlockSizeUser>::_BlockSize: IsLess<U256>,
Le<<<H as CoreProxy>::Core as SmallBlockSizeUser>::_BlockSize, U256>: NonZero,
<<H as CoreProxy>::Core as OutputSizeUser>::OutputSize: ArrayLength + Add<<<H as CoreProxy>::Core as OutputSizeUser>::OutputSize>,
Sum<<<H as CoreProxy>::Core as OutputSizeUser>::OutputSize, <<H as CoreProxy>::Core as OutputSizeUser>::OutputSize>: ArrayLength,
impl<H: Hash> Serialize for opaque_vx::key_exchange::tripledh::Ke2State<H>where
H::Core: ProxyHash,
<<H as CoreProxy>::Core as SmallBlockSizeUser>::_BlockSize: IsLess<U256>,
Le<<<H as CoreProxy>::Core as SmallBlockSizeUser>::_BlockSize, U256>: NonZero,
<<H as CoreProxy>::Core as OutputSizeUser>::OutputSize: ArrayLength + Add<<<H as CoreProxy>::Core as OutputSizeUser>::OutputSize>,
Sum<<<H as CoreProxy>::Core as OutputSizeUser>::OutputSize, <<H as CoreProxy>::Core as OutputSizeUser>::OutputSize>: ArrayLength,
type Len = <<<H as CoreProxy>::Core as OutputSizeUser>::OutputSize as Add>::Output
Source§impl<H: Hash> Serialize for opaque_vx::key_exchange::tripledh::Ke3Message<H>where
H::Core: ProxyHash,
<<H as CoreProxy>::Core as SmallBlockSizeUser>::_BlockSize: IsLess<U256>,
Le<<<H as CoreProxy>::Core as SmallBlockSizeUser>::_BlockSize, U256>: NonZero,
<<H as CoreProxy>::Core as OutputSizeUser>::OutputSize: ArrayLength,
impl<H: Hash> Serialize for opaque_vx::key_exchange::tripledh::Ke3Message<H>where
H::Core: ProxyHash,
<<H as CoreProxy>::Core as SmallBlockSizeUser>::_BlockSize: IsLess<U256>,
Le<<<H as CoreProxy>::Core as SmallBlockSizeUser>::_BlockSize, U256>: NonZero,
<<H as CoreProxy>::Core as OutputSizeUser>::OutputSize: ArrayLength,
type Len = <<H as CoreProxy>::Core as OutputSizeUser>::OutputSize
Source§impl<H: OutputSizeUser> Serialize for PreHash<H>where
H::OutputSize: ArrayLength,
impl<H: OutputSizeUser> Serialize for PreHash<H>where
H::OutputSize: ArrayLength,
type Len = <H as OutputSizeUser>::OutputSize
Source§impl<K: KemCoreWrapper, H: Hash> Serialize for KemKe2State<K, H>where
H::Core: ProxyHash,
<<H as CoreProxy>::Core as SmallBlockSizeUser>::_BlockSize: IsLess<U256> + Cmp<U256>,
Le<<<H as CoreProxy>::Core as SmallBlockSizeUser>::_BlockSize, U256>: NonZero,
<<H as CoreProxy>::Core as OutputSizeUser>::OutputSize: ArrayLength,
Ke2State<H>: Serialize,
<Ke2State<H> as Serialize>::Len: Add<K::EncapsulationKeyLen>,
Sum<<Ke2State<H> as Serialize>::Len, K::EncapsulationKeyLen>: ArrayLength + Add<K::CiphertextLen>,
Sum<Sum<<Ke2State<H> as Serialize>::Len, K::EncapsulationKeyLen>, K::CiphertextLen>: ArrayLength,
Available on crate feature kem only.
impl<K: KemCoreWrapper, H: Hash> Serialize for KemKe2State<K, H>where
H::Core: ProxyHash,
<<H as CoreProxy>::Core as SmallBlockSizeUser>::_BlockSize: IsLess<U256> + Cmp<U256>,
Le<<<H as CoreProxy>::Core as SmallBlockSizeUser>::_BlockSize, U256>: NonZero,
<<H as CoreProxy>::Core as OutputSizeUser>::OutputSize: ArrayLength,
Ke2State<H>: Serialize,
<Ke2State<H> as Serialize>::Len: Add<K::EncapsulationKeyLen>,
Sum<<Ke2State<H> as Serialize>::Len, K::EncapsulationKeyLen>: ArrayLength + Add<K::CiphertextLen>,
Sum<Sum<<Ke2State<H> as Serialize>::Len, K::EncapsulationKeyLen>, K::CiphertextLen>: ArrayLength,
Available on crate feature
kem only.