pub struct VartimePrecomputedStraus {
static_lookup_tables: Vec<NafLookupTable8<CachedPoint>>,
}Fields§
§static_lookup_tables: Vec<NafLookupTable8<CachedPoint>>Trait Implementations§
Source§impl VartimePrecomputedMultiscalarMul for VartimePrecomputedStraus
impl VartimePrecomputedMultiscalarMul for VartimePrecomputedStraus
Source§type Point = EdwardsPoint
type Point = EdwardsPoint
The type of point to be multiplied, e.g.,
RistrettoPoint.Source§fn new<I>(static_points: I) -> Self
fn new<I>(static_points: I) -> Self
Given the static points \( B_i \), perform precomputation
and return the precomputation data.
Source§fn optional_mixed_multiscalar_mul<I, J, K>(
&self,
static_scalars: I,
dynamic_scalars: J,
dynamic_points: K,
) -> Option<EdwardsPoint>where
I: IntoIterator,
I::Item: Borrow<Scalar>,
J: IntoIterator,
J::Item: Borrow<Scalar>,
K: IntoIterator<Item = Option<EdwardsPoint>>,
fn optional_mixed_multiscalar_mul<I, J, K>(
&self,
static_scalars: I,
dynamic_scalars: J,
dynamic_points: K,
) -> Option<EdwardsPoint>where
I: IntoIterator,
I::Item: Borrow<Scalar>,
J: IntoIterator,
J::Item: Borrow<Scalar>,
K: IntoIterator<Item = Option<EdwardsPoint>>,
Given
static_scalars, an iterator of public scalars
\(b_i\), dynamic_scalars, an iterator of public scalars
\(a_i\), and dynamic_points, an iterator of points
\(A_i\), compute
$$
Q = a_1 A_1 + \cdots + a_n A_n + b_1 B_1 + \cdots + b_m B_m,
$$
where the \(B_j\) are the points that were supplied to new. Read moreSource§fn vartime_multiscalar_mul<I>(&self, static_scalars: I) -> Self::Point
fn vartime_multiscalar_mul<I>(&self, static_scalars: I) -> Self::Point
Given
static_scalars, an iterator of public scalars
\(b_i\), compute
$$
Q = b_1 B_1 + \cdots + b_m B_m,
$$
where the \(B_j\) are the points that were supplied to new. Read moreSource§fn vartime_mixed_multiscalar_mul<I, J, K>(
&self,
static_scalars: I,
dynamic_scalars: J,
dynamic_points: K,
) -> Self::Pointwhere
I: IntoIterator,
I::Item: Borrow<Scalar>,
J: IntoIterator,
J::Item: Borrow<Scalar>,
K: IntoIterator,
K::Item: Borrow<Self::Point>,
fn vartime_mixed_multiscalar_mul<I, J, K>(
&self,
static_scalars: I,
dynamic_scalars: J,
dynamic_points: K,
) -> Self::Pointwhere
I: IntoIterator,
I::Item: Borrow<Scalar>,
J: IntoIterator,
J::Item: Borrow<Scalar>,
K: IntoIterator,
K::Item: Borrow<Self::Point>,
Given
static_scalars, an iterator of public scalars
\(b_i\), dynamic_scalars, an iterator of public scalars
\(a_i\), and dynamic_points, an iterator of points
\(A_i\), compute
$$
Q = a_1 A_1 + \cdots + a_n A_n + b_1 B_1 + \cdots + b_m B_m,
$$
where the \(B_j\) are the points that were supplied to new. Read moreAuto Trait Implementations§
impl Freeze for VartimePrecomputedStraus
impl RefUnwindSafe for VartimePrecomputedStraus
impl Send for VartimePrecomputedStraus
impl Sync for VartimePrecomputedStraus
impl Unpin for VartimePrecomputedStraus
impl UnwindSafe for VartimePrecomputedStraus
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more