Botan 3.9.0
Crypto and TLS for C&
Botan::PrecomputedBaseMulTable< C, W > Class Template Referencefinal

#include <pcurves_impl.h>

Public Types

typedef C::AffinePoint AffinePoint
using BlindedScalar = BlindedScalarBits<C, WindowBits>
typedef C::ProjectivePoint ProjectivePoint
typedef C::Scalar Scalar

Public Member Functions

ProjectivePoint mul (const Scalar &s, RandomNumberGenerator &rng) const
 PrecomputedBaseMulTable (const AffinePoint &p)

Static Public Attributes

static constexpr size_t WindowBits = W
static constexpr size_t Windows = (BlindedScalar::Bits + WindowBits - 1) / WindowBits

Detailed Description

template<typename C, size_t W>
class Botan::PrecomputedBaseMulTable< C, W >

Definition at line 1387 of file pcurves_impl.h.

Member Typedef Documentation

◆ AffinePoint

template<typename C, size_t W>
typedef C::AffinePoint Botan::PrecomputedBaseMulTable< C, W >::AffinePoint

Definition at line 1390 of file pcurves_impl.h.

◆ BlindedScalar

template<typename C, size_t W>
using Botan::PrecomputedBaseMulTable< C, W >::BlindedScalar = BlindedScalarBits<C, WindowBits>

Definition at line 1396 of file pcurves_impl.h.

◆ ProjectivePoint

template<typename C, size_t W>
typedef C::ProjectivePoint Botan::PrecomputedBaseMulTable< C, W >::ProjectivePoint

Definition at line 1391 of file pcurves_impl.h.

◆ Scalar

template<typename C, size_t W>
typedef C::Scalar Botan::PrecomputedBaseMulTable< C, W >::Scalar

Definition at line 1389 of file pcurves_impl.h.

Constructor & Destructor Documentation

◆ PrecomputedBaseMulTable()

template<typename C, size_t W>
Botan::PrecomputedBaseMulTable< C, W >::PrecomputedBaseMulTable ( const AffinePoint & p)
inlineexplicit

Definition at line 1400 of file pcurves_impl.h.

References Botan::basemul_setup(), and WindowBits.

Member Function Documentation

◆ mul()

template<typename C, size_t W>
ProjectivePoint Botan::PrecomputedBaseMulTable< C, W >::mul ( const Scalar & s,
RandomNumberGenerator & rng ) const
inline

Definition at line 1403 of file pcurves_impl.h.

1403 {
1404 const BlindedScalar scalar(s, rng);
1405 return basemul_exec<C, WindowBits>(m_table, scalar, rng);
1406 }
BlindedScalarBits< C, WindowBits > BlindedScalar
C::ProjectivePoint basemul_exec(std::span< const typename C::AffinePoint > table, const BlindedScalar &scalar, RandomNumberGenerator &rng)

References Botan::basemul_exec().

Member Data Documentation

◆ WindowBits

template<typename C, size_t W>
size_t Botan::PrecomputedBaseMulTable< C, W >::WindowBits = W
staticconstexpr

Definition at line 1393 of file pcurves_impl.h.

Referenced by PrecomputedBaseMulTable().

◆ Windows

template<typename C, size_t W>
size_t Botan::PrecomputedBaseMulTable< C, W >::Windows = (BlindedScalar::Bits + WindowBits - 1) / WindowBits
staticconstexpr

Definition at line 1398 of file pcurves_impl.h.


The documentation for this class was generated from the following file: