Botan 3.9.0
Crypto and TLS for C&
|
Table for computing g*x + h*y. More...
#include <ec_group.h>
Public Member Functions | |
std::optional< EC_AffinePoint > | mul2_vartime (const EC_Scalar &x, const EC_Scalar &y) const |
bool | mul2_vartime_x_mod_order_eq (const EC_Scalar &v, const EC_Scalar &c, const EC_Scalar &x, const EC_Scalar &y) const |
bool | mul2_vartime_x_mod_order_eq (const EC_Scalar &v, const EC_Scalar &x, const EC_Scalar &y) const |
BOTAN_FUTURE_EXPLICIT | Mul2Table (const EC_AffinePoint &h) |
Mul2Table (const Mul2Table &other)=delete | |
Mul2Table (Mul2Table &&other) noexcept | |
Mul2Table & | operator= (const Mul2Table &other)=delete |
Mul2Table & | operator= (Mul2Table &&other) noexcept |
~Mul2Table () |
Table for computing g*x + h*y.
Definition at line 334 of file ec_group.h.
Botan::EC_Group::Mul2Table::Mul2Table | ( | const EC_AffinePoint & | h | ) |
Create a table for computing g*x + h*y
Definition at line 771 of file ec_group.cpp.
Referenced by Mul2Table(), Mul2Table(), operator=(), and operator=().
|
default |
|
delete |
References Mul2Table().
|
defaultnoexcept |
References Mul2Table().
std::optional< EC_AffinePoint > Botan::EC_Group::Mul2Table::mul2_vartime | ( | const EC_Scalar & | x, |
const EC_Scalar & | y ) const |
Return the elliptic curve point g*x + h*y
Where g is the group generator and h is the value passed to the constructor
Returns nullopt if g*x + h*y was the point at infinity
Definition at line 775 of file ec_group.cpp.
References Botan::EC_AffinePoint::_from_inner(), and Botan::EC_Scalar::_inner().
bool Botan::EC_Group::Mul2Table::mul2_vartime_x_mod_order_eq | ( | const EC_Scalar & | v, |
const EC_Scalar & | c, | ||
const EC_Scalar & | x, | ||
const EC_Scalar & | y ) const |
Check if v equals the x coordinate of g*x*c + h*y*c reduced modulo the order
Where g is the group generator and h is the value passed to the constructor
Returns false if unequal, including if g*x*c + h*y*c was the point at infinity
Definition at line 790 of file ec_group.cpp.
References mul2_vartime_x_mod_order_eq().
bool Botan::EC_Group::Mul2Table::mul2_vartime_x_mod_order_eq | ( | const EC_Scalar & | v, |
const EC_Scalar & | x, | ||
const EC_Scalar & | y ) const |
Check if v equals the x coordinate of g*x + h*y reduced modulo the order
Where g is the group generator and h is the value passed to the constructor
Returns false if unequal, including if g*x + h*y was the point at infinity
Definition at line 784 of file ec_group.cpp.
References Botan::EC_Scalar::_inner().
Referenced by mul2_vartime_x_mod_order_eq().
References Mul2Table().
|
defaultnoexcept |
References Mul2Table().