libdecaf
Static Public Member Functions | Static Public Attributes | List of all members
decaf::Ed448Goldilocks::DhLadder Struct Reference

X-only Diffie-Hellman ladder functions. More...

Static Public Member Functions

static const FixedBlock< PUBLIC_BYTESbase_point () DECAF_NOEXCEPT
 Base point for a scalar multiplication.
 
static SecureBuffer shared_secret (const FixedBlock< PUBLIC_BYTES > &pk, const FixedBlock< PRIVATE_BYTES > &scalar)
 Calculate and return a shared secret with public key. More...
 
static decaf_error_t DECAF_WARN_UNUSED shared_secret_noexcept (FixedBuffer< PUBLIC_BYTES > &out, const FixedBlock< PUBLIC_BYTES > &pk, const FixedBlock< PRIVATE_BYTES > &scalar) DECAF_NOEXCEPT
 Calculate and write into out a shared secret with public key, noexcept version. More...
 
static SecureBuffer DECAF_DEPRECATED ("Renamed to derive_public_key") generate_key(const FixedBlock< PRIVATE_BYTES > &scalar)
 Calculate and return a public key; equivalent to shared_secret(base_point(),scalar) but possibly faster. More...
 
static SecureBuffer derive_public_key (const FixedBlock< PRIVATE_BYTES > &scalar)
 Calculate and return a public key; equivalent to shared_secret(base_point(),scalar) but possibly faster.
 
static void derive_public_key_noexcept (FixedBuffer< PUBLIC_BYTES > &out, const FixedBlock< PRIVATE_BYTES > &scalar) DECAF_NOEXCEPT
 Calculate and return a public key into a fixed buffer; equivalent to shared_secret(base_point(),scalar) but possibly faster.
 
static void generate_key_noexcept (FixedBuffer< PUBLIC_BYTES > &out, const FixedBlock< PRIVATE_BYTES > &scalar) DECAF_NOEXCEPT
 Calculate and return a public key into a fixed buffer; equivalent to shared_secret(base_point(),scalar) but possibly faster. More...
 

Static Public Attributes

static const size_t PUBLIC_BYTES = DECAF_X448_PUBLIC_BYTES
 Bytes in an X448 public key.
 
static const size_t PRIVATE_BYTES = DECAF_X448_PRIVATE_BYTES
 Bytes in an X448 private key.
 

Detailed Description

X-only Diffie-Hellman ladder functions.

Member Function Documentation

◆ DECAF_DEPRECATED()

static SecureBuffer decaf::Ed448Goldilocks::DhLadder::DECAF_DEPRECATED ( "Renamed to derive_public_key ) const &
inlinestatic

Calculate and return a public key; equivalent to shared_secret(base_point(),scalar) but possibly faster.

Deprecated:
Renamed to derive_public_key.

◆ generate_key_noexcept()

static void decaf::Ed448Goldilocks::DhLadder::generate_key_noexcept ( FixedBuffer< PUBLIC_BYTES > &  out,
const FixedBlock< PRIVATE_BYTES > &  scalar 
)
inlinestatic

Calculate and return a public key into a fixed buffer; equivalent to shared_secret(base_point(),scalar) but possibly faster.

Deprecated:
Renamed to derive_public_key_noexcept.

◆ shared_secret()

static SecureBuffer decaf::Ed448Goldilocks::DhLadder::shared_secret ( const FixedBlock< PUBLIC_BYTES > &  pk,
const FixedBlock< PRIVATE_BYTES > &  scalar 
)
inlinestatic

Calculate and return a shared secret with public key.


◆ shared_secret_noexcept()

static decaf_error_t DECAF_WARN_UNUSED decaf::Ed448Goldilocks::DhLadder::shared_secret_noexcept ( FixedBuffer< PUBLIC_BYTES > &  out,
const FixedBlock< PUBLIC_BYTES > &  pk,
const FixedBlock< PRIVATE_BYTES > &  scalar 
)
inlinestatic

Calculate and write into out a shared secret with public key, noexcept version.



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