Loading...
Searching...
No Matches
decaf::Ristretto::DhLadder Struct Reference

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

`#include <point_255.hxx>`

## Static Public Member Functions

static const FixedBlock< PUBLIC_BYTES > | base_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.
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.
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.
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.

## Static Public Attributes

static const size_t | PUBLIC_BYTES = DECAF_X25519_PUBLIC_BYTES
| Bytes in an X25519 public key.
static const size_t | PRIVATE_BYTES = DECAF_X25519_PRIVATE_BYTES
| Bytes in an X25519 private key.

## Detailed Description

X-only Diffie-Hellman ladder functions.

## Member Function Documentation

## DECAF_DEPRECATED()

static SecureBuffer decaf::Ristretto::DhLadder::DECAF_DEPRECATED | ( | "Renamed to derive_public_key" |  | ) | const &

inline static

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::Ristretto::DhLadder::generate_key_noexcept | ( | FixedBuffer< PUBLIC_BYTES > & | out,
|  | const FixedBlock< PRIVATE_BYTES > & | scalar
| ) |  |

inline static

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::Ristretto::DhLadder::shared_secret | ( | const FixedBlock< PUBLIC_BYTES > & | pk,
|  | const FixedBlock< PRIVATE_BYTES > & | scalar
| ) |  |

inline static

Calculate and return a shared secret with public key.

## shared_secret_noexcept()

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

inline static

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

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

- src/GENERATED/include/decaf/point_255.hxx