[−][src]Trait vru_sphinx::Sphinx
Associated Types
type MacLength: ArrayLength<u8>
type AsymmetricKey: Curve
type Stream: SyncStreamCipher + SyncStreamCipherSeek
Required methods
fn mu<'a, I>(
shared: &SharedSecret<Self::AsymmetricKey>,
data: I
) -> GenericArray<u8, Self::MacLength> where
I: Iterator<Item = &'a [u8]>,
shared: &SharedSecret<Self::AsymmetricKey>,
data: I
) -> GenericArray<u8, Self::MacLength> where
I: Iterator<Item = &'a [u8]>,
fn rho(shared: &SharedSecret<Self::AsymmetricKey>) -> Self::Stream
fn pi(shared: &SharedSecret<Self::AsymmetricKey>) -> Self::Stream
fn tau(public_key: Self::AsymmetricKey) -> SharedSecret<Self::AsymmetricKey>
fn blinding(
public_key: &Self::AsymmetricKey,
shared: &SharedSecret<Self::AsymmetricKey>
) -> <Self::AsymmetricKey as Curve>::Scalar
public_key: &Self::AsymmetricKey,
shared: &SharedSecret<Self::AsymmetricKey>
) -> <Self::AsymmetricKey as Curve>::Scalar
Implementations on Foreign Types
impl<A, C, D, S> Sphinx for (A, C, D, S) where
A: Curve,
C: Mac + NewMac,
D: Default + Update + FixedOutput<OutputSize = <<A as Curve>::Scalar as LineValid>::Length>,
S: SyncStreamCipher + SyncStreamCipherSeek + NewStreamCipher<KeySize = C::OutputSize>, [src]
A: Curve,
C: Mac + NewMac,
D: Default + Update + FixedOutput<OutputSize = <<A as Curve>::Scalar as LineValid>::Length>,
S: SyncStreamCipher + SyncStreamCipherSeek + NewStreamCipher<KeySize = C::OutputSize>,
type MacLength = C::OutputSize
type AsymmetricKey = A
type Stream = S
fn mu<'a, I>(
shared: &SharedSecret<Self::AsymmetricKey>,
data: I
) -> GenericArray<u8, Self::MacLength> where
I: Iterator<Item = &'a [u8]>, [src]
shared: &SharedSecret<Self::AsymmetricKey>,
data: I
) -> GenericArray<u8, Self::MacLength> where
I: Iterator<Item = &'a [u8]>,
fn rho(shared: &SharedSecret<Self::AsymmetricKey>) -> Self::Stream[src]
fn pi(shared: &SharedSecret<Self::AsymmetricKey>) -> Self::Stream[src]
fn tau(public_key: Self::AsymmetricKey) -> SharedSecret<Self::AsymmetricKey>[src]
fn blinding(
public_key: &Self::AsymmetricKey,
shared: &SharedSecret<Self::AsymmetricKey>
) -> <Self::AsymmetricKey as Curve>::Scalar[src]
public_key: &Self::AsymmetricKey,
shared: &SharedSecret<Self::AsymmetricKey>
) -> <Self::AsymmetricKey as Curve>::Scalar